Я постоянно малоиспользуемый разработчик — это нормально?

Я относительно новичок в индустрии программного обеспечения. Я проработал около 1 года в правительстве программистом и около 3 месяцев в небольшой компании электронной коммерции. Обе компании довольно малы, и команда разработчиков состоит из (нетехнического) менеджера, старшего разработчика и младшего разработчика (меня).

В обеих этих позициях я всегда оказываюсь без работы.

  • Большую часть времени я жду разъяснений/информации/файлов и до тех пор мне нечего делать.
  • Я всегда исправляю небольшие ошибки вовремя и отправляю электронные письма по завершению, спрашивая, что делать дальше.
  • Я жду зависимости от другого разработчика, чтобы я мог работать над своей частью проекта.
  • Я закончил проект и жду следующего задания.

Иногда я не работаю пару часов, иногда не работаю несколько дней. В это время я буду запускать тесты, очищать код, читать документацию и добавлять в приложения небольшие полезные функции.

Мой вопрос: это нормально для разработчиков? Должен ли я просто реализовать функцию, не спрашивая разъяснений, а затем представить свои результаты? Должен ли я представить проект или функцию, над которой я мог бы работать? Что мне делать во время простоя?

Мне трудно прожить день, когда на моей тарелке ничего нет.

Is this normal for developers?Зависит от компании... Should I just implement a feature without askingНет.
Добро пожаловать в SW dev. Это нормально. Не меняйте ничего, не проверив это старшим парнем, но делайте ему предложения, особенно по улучшению инструментария.
@Bohemian Вы бы сказали, что младший разработчик должен обратиться к старшему разработчику, если менеджер / руководитель группы не может раздать? т.е. помочь с их проектом или получить некоторые небольшие задачи. Меня беспокоит то, что эти поставленные задачи могут конфликтовать с задачами, намеченными менеджером.
Если менеджера нет рядом, кажется естественным, что старший парень принимает второстепенные решения в его отсутствие. Это применимо только в том случае, если вам нечего делать. Если менеджер оставил для вас задачи, конечно делайте их. Это не ракетостроение.
Подумайте о том, чтобы спросить ответственного за вас, что делать. Для этой ситуации может быть много незавершенной работы.
Всегда есть чем заняться. Онлайн-обучение, ознакомление с бизнес-процессами вашей компании и бэклогами ошибок. ИМО, ничто не сравнится с получением оплаты за обучение и улучшение своих навыков за чужие деньги.
Просто поработайте над DevOps. Это очень ценно, особенно если вы собираетесь увеличить масштабы в один прекрасный день.
За 35 лет программирования/разработки программного обеспечения у меня был месяц в такой ситуации. Очень-очень редко: типичный сильно перегружен, и иногда ощущение, что топчутся на месте, является относительным облегчением. @EthanTheBrave за тот месяц, когда я изучил powerbuilder (никогда не использовал его) и Visual Basic (использовал его ..)

Ответы (4)

Вкратце: да, особенно для младших членов небольших команд (и особенно небольших команд разработчиков, встроенных в крупные компании).

Вы должны понимать это как младший разработчик, мало знакомый с кодовой базой; вы представляете крошечную часть возможностей команды разработчиков. Вам легко проскользнуть между трещинами, потому что ваш старший коллега (надеюсь) намного превосходит вас по производительности. По мере накопления опыта (как общего, так и с системами компании) этот разрыв должен стираться.

Я рекомендую использовать это время, чтобы лучше познакомиться с окружающей средой. Незначительные исправления ошибок — отличный способ познакомиться с кодовой базой. Как и документация, написание тестов и другое обслуживание.

В дополнение к последнему абзацу попросите фоновую задачу, такую ​​как документация или написание тестов. Всякий раз, когда вы заканчиваете или блокируете работу с более высоким приоритетом, продолжайте выполнять фоновую задачу.
Да или придумайте собственное фоновое задание, если начальник не может. На моей первой работе в качестве разработчика мультимедиа (в основном это был печально вымерший язык Macromedia Lingo) моей фоновой задачей было изучение Java, а моей следующей работой был (гораздо более загруженный!) Java-разработчик.

Был в подобной ситуации - вот что я предлагаю.

Самое главное, на мой взгляд, это то, что вы не сидите сложа руки. Это может привести к депрессии с вашей стороны и развитию вредных привычек на рабочем месте.

Вместо этого вам нужно найти какой-то способ поддерживать вовлеченность.

Я предлагаю искать проекты, над которыми вы можете работать и которые связаны с вашей работой.

  • Возможно, ваша компания использует устаревшую технологию — вы могли бы начать исследовать и изучать технологию, чтобы заменить ее.

  • Некоторые аспекты вашей работы повторяются? Создайте инструмент для его автоматизации.

  • Есть ли какая-то функция, которая, по вашему мнению, принесет пользу вашему бизнесу? Во что бы то ни стало создайте его, но не фиксируйте его в кодовой базе. Посмотрите, ценится ли это, сказав: «О, кстати, вот этот инструмент, который я создал».

  • Чем вы хотите заниматься в своей карьере? Изучите эту технологию.

  • Вы всегда можете перейти на Stack Exchange и ответить на вопросы / вопросы проверки кода.

Теперь - вы можете чувствовать себя плохо из-за того, что делаете работу, которую вам специально не сказали. Чтобы снять это напряжение, я бы предложил просто поговорить напрямую со своим менеджером: «Эй, босс, я сейчас жду на работе — я думал, что сделаю XYZ, пока жду — вы не против?». Так

пока вы выполняете работу, которую вам нужно сделать, и ваш менеджер разумен - все должно быть в порядке.

+1, особенно за часть автоматизации - и попытайтесь расширить ее на потребности других. Особенно ваш босс. Если у вашего босса есть скучная, повторяющаяся задача, которую вы можете автоматизировать, это хорошо для всех. и особенно для вашей карьеры. Не пренебрегайте другими людьми — особенно теми, кто выполняет много задач, подобных Excel, — потенциал повышения производительности здесь обычно огромен. И они будут любить вас за то, что вы облегчаете их жизнь.

Должен ли я просто реализовать функцию, не спрашивая разъяснений, а затем представить свои результаты?

Это единственное, против чего я возражаю по вашим вопросам. Не делайте ничего, на что вы не уполномочены. Что, если ошибка в вашей функции что-то испортит? В лучшем случае добавьте свои функции в локальную среду.

Как и в исходном вопросе, цените это свободное время, изучая новую технологию, которая также полезна для вашего текущего проекта. Никогда не смотрите скучающим или полностью свободным, потому что это будет раздражать ваших коллег и менеджеров, даже если они держат вас свободными или нет.

Я думаю, что «Добавьте свои функции в локальную среду» противоречит остальной части вашего возражения. Что плохого в том, чтобы разработать возможную функцию в своей собственной ветке и представить ее как предложение того, что можно было бы сделать? Это ничего не портит. Может быть хорошим использованием свободного времени, которое вы не знаете, как использовать. «Не делайте ничего, на что вы не уполномочены» — плохой подход, если у вас недостаточно порученной вам работы.

Как вы уже поняли, рефакторинг и поиск ошибок — это действия, которые всегда должны выполнять разработчики программного обеспечения, когда они не заняты другими задачами.

Попробуйте ознакомиться с кодовой базой компании. Чтение кода всегда поучительно, но еще более ценно для молодых программистов. Если вы столкнулись с вещами, которых не понимаете: поздравляю, вы только что нашли что-то новое для изучения. Если вас что-то беспокоит, попытайтесь выяснить причину этого (может помочь контроль версий и система отслеживания ошибок) или спросите старшего разработчика в один из его менее занятых моментов.

Не уверен насчет этого отрицательного голоса. Что не так с этим ответом?