Имея 15летний опыт разработки программного обеспечения, могу сказать что меня всегда интересовали варианты дальнейшего развития карьеры обычного программиста. Я видел случаи, когда программисты становились оптовыми продавцами хлебобулочных изделий или менеджерами по продажам компьютеров. И при этом не так много было случаев планомерного карьерного роста от рядового разработчика до руководителя большой команды. Чтобы разобраться в том, куда и почему стоит развиваться программисту для продвижения по карьерной лестнице, - надо рассмотреть варианты позиций, которые может занимать бывший программист при наличии реальной заинтересованности в саморазвитии.
Есть очень много вариантов ролей и тем более позиций, в рамках которых может работать обычный программист (включая системного администратора или администратора баз данных), - но с точки зрения реального карьерного роста и долгосрочной перспективы мы рассмотрим только две из них: Архитектор (или Системный архитектор, в российских терминах) и Менеджер проекта (или Менеджер проектов).
Все хотят увеличить свой доход быстро, но карьера программиста обычно к этому не располагает. С какого-то момента разработчик чувствует, что его "потолок" достигнут и дальше надо менять занимаемую должность. В этом посте попробую описать плюсы и минусы обоих позиций, выбранных выше.
Сначала рассмотрим позицию "Архитектор" с точки зрения российских реалий.
1) Обычно эта позиция имеется только в крупных западных компаниях и предполагает наличие глубоких знаний различных "экзотических" технологий, которые используются в специфических отраслях промышленности (телекоммуникации, банковские технологии или другие).
2) Развитие выше и дальше малореально без дополнительных и существенных вложений в собственное бизнес-образование, - и рост будет в сторону бизнес-позиций, требующих уровня MBA или аналогичной квалификации.
3) Рост до начальника подразделения Архитекторов затруднен наличием более опытных сотрудников, стоящих в очереди уже несколько лет.
4) Зарплата Архитектора не всегда отражает реальную ответственность за судьбу проекта.
5) Фактически навыков управления командой эта позиция не дает.
У позиции "Менеджер проекта" больше вариантов дальнейшего роста, хотя бы по размеру управляемой команды.
1) Позиция имеется как в российских, так и в западных компаниях.
2) Развитие не ограничено ничем, т.к. есть все более и более крупные компании и проекты, в том числе и за границей России и СНГ.
3) Рост не затруднен конкурентами, т.к. по-настоящему талантливых менеджеров всегда не хватает.
4) Отвественность за судьбу проекта в полной мере отражена цифрой Вашей зарплаты.
5) Навыки управления командой требуются ежедневно и постоянно совершенствуются.
Посмотрим что в данный момент может предложить российский рынок по этим позициям.
По Архитектору видим что обычно надо дописывать "Системный Архитектор", если имеется в виду позиция в сфере IT, и вакансия не имеет цены, но при этом имеет очень много требований к кандидату.
Другая вакансия в западную компанию через кадровое агенство имеет планку 140000 рублей, что для работы за границей очень даже средне.
Теперь что мы имеем по позиции Менеджер проектов на рынке труда в России.
Опять в числе первых - вакансия без цены и от агенства по найму.
Далее, видим Менеджера проектов 1С с доходом от 100000, что очень даже неплохо.
И даже Senior IT Project Manager в Магадан без цены, что смотрится достаточно весело.
А что пишут наши западные коллеги о ситуации выбора между Программистом и Архитектором? Есть очень полезная зарубежная социальная сеть LinkedIn.COM, в которой уже очень давно ведется дискуссия на эту тему: http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&discussionID=17261355&gid=100988&trk=eml-anet_dig-b_pd-pmt-cn
Вам придется зарегистрироваться в этой сети, если захочется прочитать оригинал.
Вкратце текущее заключение почтенной аудитории этой ветки такое:
1. Во-первых, разные организации по разному называют позиции для выполнения сходных обязанностей - например, аналитик, архитектор или просто инженер.
2. Во-вторых, в связи со сложностями на западных рынках труда теперь часто многие позиции совмещают несколько ролей в одном человеке (что называется, сотрудник "имеет несколько шляп").
3. В-третьих, у архитектора (этой роли, а не только позиции) обязательно есть бизнес-понимание происходящего, общий "vision", который он может донести до разработчика.
4. Работа инженера дедуктивна по природе, и более определенна в выполняемых действиях, - тогда как работа архитектора ближе к искусству и по природе своей индуктивна, основывается на нечетких задачах и опытной проверке оригинальных идей.
Не смог отказать себе в удовольствии процитировать кусочек оригинала: "(Mark W.Maier and Eberhardt Rechtin, The Art of System Architecting,CRC Press, 1997; interestingly, in this book the authors commented vehemently on the lack of standardization for definitions in the systems architecture space, and later Maier helped fix this issue as a member of the IEEE 1471 Committee)".
5. Кое-кто даже считает, что (при постоянном использовании Sigma tools - например черного пояса по ним, http://www.sixsigmaonline.org/six-sigma-black-belt-training/) без возможности измерения нет и не может быть никаких реальных требований.
Итак, что же делать обычному рядовому программисту чтобы развиваться не только в инженерном ремесле, но и в IT-искусстве?
Есть несколько рекомендаций, которые видны уже сейчас. Некоторые останутся при мне – кто работает в VIAcode, - заходите, поделюсь;)
Во-первых, необходимо образование, не обязательно официальное – самообразование и получение сертификатов это также отличное начало. Если Вы планируете больше работать с людьми, чем с документами, - как минимум Вам необходим набор тренингов для будущих менеджеров. Это и психология управления командой, и навыки распределения собственного времени, и умение считать риски и стоимость/прибыль проекта. В общем, есть много организаций, которые с удовольствием примут Вас и обучат всему необходимому – начиная от PMP и заканчивая MBA.
Во-вторых, требуется приготовить ОЧЕНЬ много терпения и запастись «припасами» для длительной осады собственного руководства или рынка труда – в зависимости от Ваших приоритетов. Очень может быть, что Ваше реальное повышение последует только через 5 или 10 лет, - потому надо быть спокойным и не нервничать если быстро «вырасти» по карьерной лестнице у Вас не получилось. Все придет, надо только ещё немного подождать.
Ну и наконец в-третьих, если оба предыдущих пункта «не для Вас», - просто смените профиль своей работы и займитесь чистыми продажами. Иногда удивительно, сколько талантов «зарыто» в обычном рядовом сотруднике – стоит ему только раскрыть свой «третий глаз», и с удивлением обнаружить какие широкие просторы открываются за пределами области IT-технологий. Ведь продавать муку оптом, – может оказаться куда более увлекательным занятием, чем разработка бездушных программ;)