Каково идеальное сочетание старших и младших разработчиков в команде?

19

В любой команде вам понадобятся более серые и серые разработчики и несколько молодых щенков. Некоторые причины включают в себя:

  • Деньги. Часто есть задачи, которые не требуют такого же уровня опыта для выполнения, поэтому имеет смысл не платить максимальный доллар за выполнение этих задач.
  • Энергетика. Есть энергия и энтузиазм, которые новые люди могут привнести в команду, которая мешает ей стать слишком несвежей и настроенной по-своему. Есть также спокойствие и мудрость, которые могут принести более старшие люди.
  • Передача знаний и карьерный рост. Как с точки зрения проекта, так и навыков, полезно и часто весело учить людей и узнавать что-то новое. Приятно помогать «привлекать» новых членов команды.

Я понимаю, что есть некоторые передовые проекты, в которых может быть важно, чтобы было больше людей старшего возраста, чем младших, но в целом, есть ли идеальное сочетание опыта в команде, или это полностью зависит от проекта?

Paddyslacker
источник

Ответы:

14

Мне действительно нравится то, что Эрик Брехнер говорит на эту тему

Думайте о своей команде как о реке, а не как о озере. Озеро застаивается. Там нет энергии или импульса, чтобы измениться. То же самое относится и к группам, которые застаиваются. Они культивируют посредственность и самодовольство; они ненавидят риск. Река всегда течет и меняется с огромной энергией. Вы хотите реку.

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

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

  • Иногда у вас будет больше новых лидеров, чем у старших, иногда наоборот, но в идеале вы должны сохранять равновесие.

  • Для потока, вы хотите, чтобы постоянный поток новой крови становился вашими новыми лидерами, а новые лидеры становились старейшинами.

  • Ключ к течению - новая кровь и старейшины. Чтобы это работало, вы ХОТИТЕ, чтобы ваши старейшины перешли до того, как они засорят поток и нарушат поток возможностей для других.

Не все технологии работают с одинаковой скоростью. Центральные механизмы, такие как ядро ​​Windows, работают медленно, а веб-службы, такие как MSN Search, работают быстро. Вы должны приспособиться к вашей ситуации, но даже самые консервативные технологии меняются и развиваются. Как вы успешно поощряете и поддерживаете здоровый поток?

  • Держите постоянный запас новых людей.

  • Прививать обмен информацией как образ жизни.

  • Формируйте организацию и роли, чтобы создать возможности для роста.

  • Найдите новые испытания для своих старейшин.

Конрад Фрикс
источник
Когда у нас есть правильная путаница, программирование становится веселым!
pramodc84
5
Я надеюсь, что «найти новые вызовы для ваших старейшин» не является эвфемизмом для их увольнения!
Paddyslacker
Единственное, что я вижу неправильно в этом, это то, что это предполагает, что старейшины всегда являются лидерами. Я встречал пожилых людей, которые не хотят вести или просто не так хороши в этом.
Джейсон Бейкер
1
@ Конрад - это неправильный вопрос. Вопрос в том, хотите ли вы пожилых людей, которые бесполезны для всей организации? Ответ на это, конечно, нет. Никто не должен быть полезным в качестве лидера, чтобы быть полезным для всей организации.
Джейсон Бейкер
1
@ Джейсон, возможно, мы не согласны с тем, что такое лидер. Для меня лидер - это любой, у кого роль больше, чем у разработчика. Например, взяв на себя роль дизайнера / аналитика, роль премьер-министра, роль наставника и т. д. Я думаю, что тот, кто хочет получать повышение заработной платы каждый год и при этом быть разработчиком, у которого нет головокружения, со временем снизит ценность, которую они приносят.
Конрад Фрикс
7

Я не думаю, что есть идеальное сочетание - оно полностью зависит от проекта и окружающей среды. Пара примеров:

Все опытные

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

Все младшие

В другом примере было бы целесообразно, чтобы все младшие разработчики были более ориентированы на НИОКР. В одной компании, в которой я работал, была команда, состоящая исключительно из стажеров, которым были назначены проекты, которые нуждались в инновационном (но не обязательно быстром или правильном) решении. Это были реальные проблемы клиентов, но у них не было какого-либо известного хорошего решения, поэтому у них были стажеры, которые были бы новыми и имели мало предвзятых мнений.

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

Fishtoaster
источник
3
Я думаю, что было бы полезно иметь хотя бы одного старшего разработчика почти во всех проектах, даже если они не работают над ним полный рабочий день
Casebash
2
По моему опыту, «новаторство» обычно означает, что молодежь сжигает нефть полуночи и пишет свою, что еще хуже, версию того, что уже существует в наборе инструментов. Или, может быть, я просто застаиваюсь.
NeedHack
2

Я думаю, что в идеале не должно быть никакого особого различия между «младшим» и «старшим». С людьми следует обращаться как с личностями, а не как с предметами в ящике. Точно так же каждый проект должен рассматриваться как отдельная проблема, для решения которой требуются индивидуальные навыки, таланты или личности. Любая такая классификация на «младший» и «старший» служит лишь для превращения реальности в более грубое и грубое ее приближение и, таким образом, делает все менее и менее вероятным, что решение, принятое в каждом отдельном случае, является в каком-то смысле «идеальным».

Timwi
источник
2
Я думаю, что это полезное различие, если вы понимаете, что некоторые люди могут быть на грани разрыва между
младшими и старшими