Вдогонку моему посту об уровнях программиста и их оценке сегодня в голову пришла еще одна идея. В каком-то смысле она была навеяна комментариями к этому посту, в которых ребята справедливо указали, что я рассмотрел лишь уровни программистов, хотя попытался причесать под эту гребенку еще тимлидов и архитекторов. На деле же я просто попытался рассмотреть техническую сторону развития программиста, упустив из виду другие навыки, необходимые на более высоких ступенях. Рассмотрим текущую ситуацию. У нас есть следующие роли/должности на проекте: разработчик, QA, лидер команды (dev/team lead), лидер QA (QA lead), менеджер проекта, архитектор и т.д. При этом мы рассматриваем уровни, как правило, исключительно для разработчиков и QA: junior, middle, senior. А ведь на деле те же тимлиды или менеджеры проекта ничем особо не отличаются. Да, стать тимлидом или архитектором junior-разработчик вряд ли сможет и здесь у нас есть определенные ограничения в стартовом уровне, но ведь все равно тот же senior-разработчик, которого ставят тимлидом по сути является junior-тимлидом. У него, несмотря на достаточный технический уровень, еще нет опыта в некоторых сферах: слабо развиты навыки управления командой, распределения обязанностей, тесного общения с клиентом, решения других менеджерских задач. Ему вряд ли можно доверить большой проект и большую команду сразу. Скорее всего, это сначала будет небольшой коллектив, на котором он будет расти. С опытом такой тимлид будет продвигаться по этой должности и в конце-концов сможет стать зубром своего дела, senior-тимлидом, грубо говоря. У него будет достаточно знаний и умений, чтобы вести проекты разного уровня и длительности. Он будет владеть большим количеством методологий, глубже понимать процесс разработки, лучше уметь находить общий язык с командой и клиентом. То же самое касается тех же менеджеров проекта, QA лидов, архитекторов и т.д. Более того, насколько я слышал, на западе в крупных компаниях такие подходы практикуются, по крайней мере, для некоторых из этих должностей. В гугле есть даже какие-то продвинутые senior-разработчики, но их сакрального смысла я не уловил, похоже, просто расширили шкалу. Да и в Харькове, думаю, есть компании, которые имеют такое деление на уровни. Но этих компаний реально мало – взгляните на любой сайт вакансий. А ведь идея-то здравая. Насколько было бы проще как менеджерам, так и самим сотрудникам, если бы они могли знать приблизительный уровень специалистов этого профиля и подбирать для команды тех, которые подходят ей больше всего. Не говоря уже об HR и рекрутерах, думаю, их жизнь бы тоже облегчилась значительно :)
об информационных технологиях, программировании, путешествиях и фотографии
Friday, July 4, 2008
Senior PM - это звучит гордо
Subscribe to:
Post Comments (Atom)
По ходу, ты когдато работал в конторе где есть такое деление ;). Правда публично это стало извесно совсем недавно. Зато щас у всех меджеров есть уровень, посмотреть его можно на портале.
ReplyDeleteProject Manager (1 level)
Project Manager (2 level)
Project Manager (3 level)
Когда я там работал, я этого не знал :) Молодцы, что сделали это официально. Интересно бы глянуть, кто на каком "официальном" уровне и сравнить с моими ощущениями :)
ReplyDeleteкстати, я бы сюда добавил (и по факту, многие компании так и делабт) - уровень principal
ReplyDeleteто есть это человек, который кроме того, что он профессионал в своей области, еще и понимает бизнес и может расставлять приоритеты и ставить задачи исходя из потребностей бизнеса. Естесственно, такой человек так или иначе участвует в бизнес девелопменте.
Интересно, даже не слышал о подобном уровне. Похоже, это уже business analyst + pm/dev/team lead получается
ReplyDelete