Я работаю в очень маленькой софтверной компании (2 разработчика - я старший и стажер, и 2 дизайнера) уже 3 года. Условия работы в этой компании хорошие. Я работал с ними с большим удовольствием, но когда время идет, я чувствую себя очень напряженным.
За эти 3 года я начал около 7-8 проектов, а также обновил около 7-8 старых проектов. Так что на данный момент я задействован более чем в 15 проектах. Каждый месяц появляются новые требования/изменения для всех старых проектов.
Очень тяжело помнить и работать над всеми проектами вместе. Каждый месяц я работаю максимум над 3-4 проектами. В следующем месяце еще 3-4 проекта и т.д.
Тем не менее, я чувствую, что это очень напряжно. Проблема была не в первые два года, потому что я участвовал всего в нескольких проектах.
Это нормальная ситуация для программистов? Или это время для поиска новой работы?
Обновление : после утверждения SRS я завершил большинство проектов в течение примерно 100–300 часов, что означает, что некоторые проекты могут быть выполнены за 100 часов, а для некоторых требуется около 300 часов (не включая время документации, время дизайнера и т. д.). Так что я думаю, что это небольшие проекты, не так ли? Я добавил эту часть только для того, чтобы дать представление о масштабах проекта.
За эти 3 года я начал около 7-8 проектов, а также обновил около 7-8 старых проектов. Так что на данный момент я задействован более чем в 15 проектах. Каждый месяц появляются новые требования/изменения для всех старых проектов. Поэтому очень сложно помнить и работать над всеми проектами вместе.
Все это указывает на то, что ваша компания серьезно недоукомплектована кадрами. Учитывая описание, я просто не понимаю, как реально два человека могут справиться с упомянутой вами нагрузкой (если только вся работа не очень локализована и не содержит действий, занимающих очень мало времени).
Это нормальная ситуация для программистов?
Нет, совсем нет. Самый эффективный способ многозадачности — сосредоточиться на одном деле за раз. Да, вы читаете это, когда сосредотачиваетесь на одной важной задаче и доводите ее до конца, что на самом деле дает гораздо лучший результат, чем попытка выполнять несколько задач одновременно.
Во-первых, не беритесь за какую-либо работу, если вы не уверены, что у вас есть на нее время. Взять на себя ложные обязательства (т. е. не выполнить их из-за плохого планирования) хуже, чем отказаться принять и перепланировать на более поздний момент времени, когда это можно будет взять и завершить. Вам нужно расставить приоритеты в деятельности.
Это гарантирует, что вы добираетесь только до задач, которые можете выполнить, без необходимости слишком сильно зацикливаться на других вещах, которые вам нужно выполнить.
Затем также поговорите со своим менеджером / боссом / генеральным директором и попросите их нанять новых инженеров, чтобы помочь вам. Учитывая рабочую нагрузку, это ясно указывает на то, что в вашей организации достаточно работы, однако каждый человек может выполнить только определенный объем задач, поэтому, если необходимо выполнить больше работы, нам нужно больше сотрудников / инженеров. Это так просто.
Наконец, если (или после) вы уже представили сценарий и ситуация не улучшилась — да, вам нужно искать в другом месте.
Есть большая разница между
В области, в которой я сейчас нахожусь, работают 3 человека, и под нашей ответственностью легко находится более 15 проектов. Но мы не работаем активно над всеми из них в любой момент времени. На самом деле, мы обычно никогда не работаем более чем над 1-2 из них в любой момент времени, потому что, как сказано в другом ответе: многозадачность работает только тогда, когда вы сосредоточены на одной вещи.
Вместо этого я бы сосредоточился на управлении работой. Как вы справляетесь с тем, над чем вы должны работать, что вы делаете, каковы ваши временные рамки и т. д.? Честно говоря, эта ситуация кричит мне «КАНБАН».
По сути, короткая история Канбана заключается в том, что у вас есть пул работы, которую необходимо выполнить. У вас также есть категории «В процессе», «Отложено» и «Готово» — наряду с ограничениями на количество элементов, которые вы можете добавить в любую из этих категорий. Кто-то хочет, чтобы вы работали над чем-то? Добавьте его в пул. Закончили задачу и нужно найти что-то еще для работы? Получите предмет с наивысшим приоритетом из пула. Кто-то хочет, чтобы вы поработали над чем-то прямо сейчас? Ну... зависит от того, есть ли у вас вакансия в разделе "В процессе". По сути, это фреймворк, построенный на избегании всепроникающей вампирской многозадачности.
Прелесть в том, что у вас может быть 15 проектов... но вы затрагиваете только несколько из них в любой момент времени. Вы не тратите кучу времени на «переключение контекста» — вы можете сосредоточиться на задаче, закончить ее и перейти к следующей.
Вы спрашивали,
Это нормальная ситуация для программистов?
На этот вопрос сложно ответить без контекста — у некоторых инженеров-программистов может быть только один или два проекта, которые длятся годами , в то время как другие могут выполнять 15 или 20 проектов в данный год. Последнее, вероятно, более типично для небольших компаний, где программное обеспечение является средством для достижения цели (по сравнению с фактическим продуктом компании). Например, ваша ситуация, вероятно, довольно типична для команды из 4 инженеров в небольшом банке сообщества. , по сравнению с редкостью для команды из 200 инженеров поставщика программного обеспечения или консалтинговой фирмы.
Тем не менее, вы прокомментировали,
Очень тяжело помнить и работать над всеми проектами вместе. Каждый месяц я работаю максимум над 3-4 проектами. В следующем месяце еще 3-4 проекта и т.д.
Тем не менее, я чувствую, что это очень напряжно
Чтобы справиться со стрессом, вам нужно убедиться, что вы правильно его приписываете. Вы испытываете стресс из-за большого объема незавершенной работы? Или вы испытываете стресс, потому что нет механизма, который помог бы вам справиться с невыполненной работой? Если у вас есть постоянная очередь из 15 или 20 проектов, и вы работаете над 3 или 4 одновременно, это не кажется мне необычным или даже стрессовым, если только вы не упускаете метод или процесс для управления отставанием. - что обычно означает, что ваш «управленческий» подход заключается в том, чтобы работать над любым проектом, из-за которого вы испытываете наибольшее давление в данный момент, что может быть очень напряженным независимо от размера вашего отставания.
Вы не предоставили никакой информации о своем процессе управления работой, поэтому сложно дать конкретную обратную связь, но если у вас нет системы тикетов или системы управления проектами, и вы управляете работой на основе электронных писем, телефонных звонков или других неформальные методы, возможно, пришло время предложить что-то более формальное. Если вы еще этого не сделали, подумайте о честном разговоре со своим руководителем, в ходе которого вы сможете описать, что вызывает у вас стресс — хорошие менеджеры вкладывают средства в то, чтобы помочь своей команде работать, а напряженный сотрудник редко бывает эффективным сотрудником.
Это нормальная ситуация для программистов? Или это время для поиска новой работы?
Это признак того, что компания растет, а вы накапливаете опыт работы с программным обеспечением компании, и поэтому вас просят решать более широкий спектр задач. Для этой части это «нормально», как и следовало ожидать, если у компании нет денег / цели нанять. Обратите внимание, что уход сейчас может быть неразумным карьерным ходом, поскольку они так сильно полагаются на вас.
Однако ненормальным является то, что вас просят работать в неустойчивом темпе или просят предоставить функции в нереалистичные сроки. Вы должны быть в состоянии оказывать некоторое сопротивление порученным вам задачам, чтобы замедлить их выполнение и сделать его управляемым: задавайте вопросы о приоритете задач относительно друг друга, о вопросе о продлении сроков и осуществимости в заданный срок, пока у вас не будет четкого графика выполнения. делать дела одно за другим в разумном темпе.
Я отвечу на вопрос ОП, а также на следующий комментарий ОП:
Все вещи, такие как документация, поддержка клиентов, подготовка SRS, делают я и стажер. На самом деле, 90% работы, проделанной мной, так как стажер-разработчик просто изучает все... Но все работы, связанные с дизайном, и запросы на поддержку, документацию, связанную с дизайном, делают два других дизайнера. –
Это означает, что вы занимаетесь управлением проектами и разработчиком, а не просто разработкой.
Поскольку вы занимаетесь управлением проектами и перегружены, лучше всего научиться делегировать полномочия. Берите у своего стажера самые простые проекты и делегируйте ему каждую разработку. Делегируя конкретные проекты, вы просите его специализироваться на этих проектах, а остальные предоставить вам. Это, ИМХО, лучший способ, чтобы ваш стажер помог вам как можно быстрее.
Что касается того, что может произойти:
Если зависит. Это зависит от количества обслуживания, которое вы должны сделать для каждого. Я имел возможность поддерживать, в команде из 2, 36 банковских пакетов, некоторые из них очень старые и очень большие.
Это сработало.
Это сработало, но большинство из них требовали моего внимания, может быть, один или два раза за те 3 года, которые я провел там. Один из них, даже не самый большой, 50% за эти 3 года.
Итак, отвечая на заданный вами вопрос, нормы нет. Это зависит только от фактического объема работы. Это приводит нас к основному вопросу, на который Вальфрат косвенно отвечает: не слишком ли много у вас работы? из того, что я читал, да: похоже, все эти проекты активны. И это проблема рабочей нагрузки. Проблема не в количестве проектов, а в вашей общей рабочей нагрузке.
Затем я бы посоветовал измерить время, необходимое для каждого обслуживания, и сравнить его с количеством обслуживания, которое вам необходимо выполнить. С некоторыми показателями убедить руководство в том, что вам нужна помощь, должно быть более выполнимо. Количество приложений не является продаваемой метрикой. Само количество рабочих часов.
неопределенный
пользователь10399
Я Самый Глупый Человек
Я Самый Глупый Человек
пользователь10399
Торбьерн Равн Андерсен
Вальфрат
Я Самый Глупый Человек
Джо В.