Все, о чем я здесь пишу, является моим личным мнением, которое не является официальным мнением моего работодателя. Так, на всякий случай!
С момента начала работы в Майкрософте уже прошло 8 месяцев, а значит уже можно сравнить местную внутреннюю кухню с кухней отечественной.
Киевские софтверные «гиганты» и общая культура IT компаний очень сильно отличаются от американских. Прежде всего, это связано с культурными отличиями, средним возрастом сотрудников и размерами компаний. Средний возраст влияет на то, как ведут себя люди в офисе, как они одеваются, и о чем говорят на кухне или в курилке. Средний возраст сотрудников киевской IT компании существенно ниже, чем в американской или европейской. Этот показатель у нас тоже начинает расти, но разница все еще остается очень существенной. Прибавьте сюда наш менталитет и общительность, и получите довольно большую разницу в том, как проходит неформальное общение. В киевском офисе ржачь стоял с завидным постоянством, ничего подобного в Штатах я не видел. Хотя вру, в нью-йорской конторе такое было, прямо перед тем, как ту команду разогнали;)
Средний возраст и размер компаний очень сильно влияют на карьерный рост. В украинской компании, если тебе 25 и ты не синьер, то ты явно что-то делаешь не так. Это же приводит к определенным проблемам, когда тебе тридцать и у тебя есть амбиции расти в техническом плане. У нас (да, я все еще отношу себя к «нам») относительно легко продолжить расти в тим-лидах или ПМ-ах, но чисто техническая лестница оказывается довольно короткой. Есть позиция архитектора, но архитектор в 30 – это все же вынужденная мера отечественного аутсорса для выделения касты «продвинутых синьеров», их нельзя сравнивать с архитекторами МС-а или Гугла. Поверьте.
Уровни
Размер американских IT-компаний вынуждает их формализовать карьерную лестницу более строгим образом, что выражается в существенно большем числе «лычек» и уровней. При этом тебе дают возможность развиваться в качестве независимого исполнителя (т.н. IC – Individual Contributor), или в качестве менеджера. При этом определяющим является твой уровень (level), а не категория (исполнитель/менеджер). Уровень определяет твою приставку (Senior, Principal, Partner etc), вилку ЗП, бонусы и т.п.
Существует возможность переходить между этими категориями без потери/прибавки в оплате. Например, Brian Harry и Mark Russinovich перешли с позиций Technical Fellow (высшая техническая позиция в Майкрософт) на позиции CVP (Corporate Vice President) и CTO (Chief Technical Officer) Azure соответственно. Наверняка есть серьезные переходы и в обратную сторону, но на ум ничего не приходит.
Уровней over 9000. Все начинается с уровней 59-60, что соответствует тайтлу SDE (Software Developer Engineer), и идет вверх до 80 левела (!), что соответствует позиции Technical Fellow.
Каждому левелу соответствуют определенные ожидания. SDE обычно получают сразу после колледжа и подразумевается, что он/она будет требовать помощи со стороны коллег (т.е. будет не только помогать, но и немного вредить). SDE 2 означает автономность. Senior SDE – влияние на результаты работы команды. Principal SDE – влияние на уровне нескольких команд. Technical Fellow означает влияние на индустрию в целом.
Определение слова «влиять» обычно отдается на откуп менеджеру, что может сделать процесс карьерного роста достаточно сложным. В бытность наличия тестеров (об этом ниже), «влияние» могло проявляться в изобретении очередного тестового фреймворка или чего-то настолько же ценного.
Это может быть плохой новостью для тех, кто ожидает, что для получения принципала в МС-е достаточно плотно закрыть дверь в свой собственный кабинет (которых кстати, уже нет) и пилить код. Для карьерного роста здесь потребуются все те же soft skills, которые многие из нас так любят игнорировать.
Особенно может быть непросто в ситуации, когда команда состоит из синьеров и принципалов и есть пара SDE 2. Как в этом случае им влиять на группу более «старших» коллег, чтобы получить новую «лычку» - остается загадкой.
Формальная лычка «архитектора» здесь отсутствует, хотя позиция принципала примерно соответствует кругу обязанностей архитектора. За тем лишь исключением, что принципалы и даже более высокие технические должности подразумевают задачи кодирования. Сферических архитекторов в вакууме здесь не любят.
Троевластие
Еще год назад в МС-е было троевластие. Были разработчики (SDE – Software Developer Engineers), тестеры (SDET – Software Developer Engineer in Test) и ПМ-ы (PM – Program Managers). У каждой из этих «каст» были свои лиды или мендежеры (Development Lead/Manager, Test Lead/Manager, PM Lead/Manager). При этом команда состояла из нескольких девов, нескольких тестеров и ПМ-а, при этом общего менеджера у них не было!
Месяцев 8 назад кто-то из высшего руководства узнал, что лет уже пятнадцать модно стала всякая гибкая хрень и решил, что тестеры больше не нада! Их переименовали в разработчики, а их обязанности раскидали на команду целиком.
ПМ-ы, как это не странно звучит для нашего уха, не являлись и не являются главными над разработчиками. Это такие же IC (individual contributor) со специфичным набором обязанностей. Это такая себе смесь бизнес-аналитика, технического писатели и product owner-а, который может также отвечать за согласование требований/графиков между смежными группами разработчиками.
Руководителем же является лид/менеджер, который отвечает за распределение плюшек и отвечает за результат работы группы.
Аджайл штуки применяются разными командами по-разному, начиная от достаточно канонического скрама, заканчивая менее демократическими подходами к управлению.
Интересно, что кодят тут все, и даже ПМ-ы обладают достаточно высокими техническими скиллами. Да и менеджеры все являются технарями и активно участвуют в архитектурных дискуссиях, а иногда и берутся за более грязную работу.
Общие впечатления
Наличие тысяч амбициозных технарей делает процесс карьерного роста более сложным, чем мы привыкли. Делать какие-то выводы слишком рано, а обобщать вообще не следует, поскольку каждая команда в МС-е обладает своими особенностями.
Можно точно сказать, что в Штатах карьера программиста складывается иначе. Все несколько сложнее. Народ, в целом, более лоялен, сидит на одном месте дольше нашего разработчика, который валит в соседнюю контору при любом косом взгляде со стороны менеджера или заказчика. В основном, люди здесь более автономные, сидят себе и делают свою работу, хотя идут на контакт весьма охотно, если их о чем-то спросить/попросить.
Самое главное отличие в том, что если у нас человек с десятью годами опыта и лычкой тимлида/архитектора считает себя чуть ли не вершиной пищевой цепочки, то здесь он оказывается в средней ее части. Длина карьерной лестницы дает о себе знать.
Общение с коллегами показало одну интересную особенность: стремление к новым должностям здесь есть, но вот хождение по головам практически отсутствует. Есть квоты продвижения на верх, но подковерные игры здесь, вроде бы, не приняты.
Level Up-ы
UPDATE: по просьбе Алексея, немного подробнее о продвижении по карьерной лестнице.
В Майкрософте “переоценка” уровня происходит раз в полгода. Здесь это называется Connect-ами. Основной коннект происходит в августе, а промежуточный – в феврале.
Это то время, когда сотрудник встречается со своим менеджером и подводит итоги того, что было сделано, что было запланировано (да, вполне возможно, что именно в таком порядке), что будет сделано и что не будет сделано. Он дает оценку своим достижениям за последние полгода, получает обратную связь от менеджера и может попросить обратной связи со стороны коллег (обратная связь от коллег будет доступна лишь менеджеру).
В результате заполняется небольшая вагонеточка бумаг, на основе которой менеджер принимает решение о: повышении уровня и переводе на другую позицию. Во время годового коннекта также решается вопрос годовых бонусов, опционов и повышения ЗП.
Еще год назад, во время годового коннекта каждому менеджеру нужно было выбрать сколько-то лучших перформеров, сколько-то худших перфофремов и сколько-то средних. Согласно этой градации распределялись бонусы, а попадание в худшие перформеры несколько раз могло привести к совсем уж печальным последствиям. Сейчас такое требование убрали, но цифровая оценка твоей “успеваемости” все еще осталась.
Процесс оценки того, достоин человек перевода на следующий уровень или нет, принимает менеджер. В случае с переходом на более высокие уровни (Синьер –> Принципал и выше) в этом процессе будут принимать участие менеджеры более высокого уровня. Решение остается непосредственно за менеджером, который может сказать, чего тебе не хватает для полного счастья и куда нужно себя развивать, чтобы это счастье поскорее наступило. Опираться, при этом, он может на формально-неформальные документы с описанием того, что ожидается от сотрудника того или иного уровня.
В целом, человеческий фактор здесь присутствует по полной, но достаточно высокая средняя адекватность сотрудников и менеджеров позволяет этой системе работать.
>>плотно закрыть дверь в свой собственный кабинет (которых кстати, уже нет)
ОтветитьУдалитьЕсть, и ещё как. Многие меняют отдел внутри МС в основном по причине наличия настоящего старого доброго кабинета в новой команде.
Да, поменять отдел ради кабинета, чтобы через полгода и у этого отдела они пропали:) Или у нас есть непрекосновенные, типа винды, которых это может никогда не коснуться?
УдалитьНе такое это быстрое дело - переделать здание из офисного в опенспейсное. Наше переделывали примерно год. Так что минимум год есть в худшем случае. :) А вообще на кампусе столько офисных зданий, что переделка их займёт десятки лет, по-моему. Даже при очень благоприятной финансовой ситуации. Кроме того, attrition после перевода отдела в опенспейс, вроде довольно значительно увеличивается скачком, и менеджмент это видит. Кроме того, в некоторых отделах на высоком уровне начальство ненавидит опенспейсы. Кроме того, в связи с увольнениями и снижением темпов набора, один из поводов делать опенспейс сильно поугас. Ну и, в конце концов, большинство народу предпочитает менять команду внутри раз в 2-5 лет - как раз подходит, по моим прикидкам, на срок пока офисы не отберут на новом месте. :)
УдалитьНо в целом да - куда-нибудь ближе к платформе надо мигрировать за офисами. У меня коллега ушёл в xaml например - там и команда мегастабильная (по своему желанию никто не уходил ещё) и офисы всю дорогу были и обещают, что будут пока ад не замёрзнет. :) Это листовыми (продуктовым/сервисным) прикладным разработчикам можно помыкать, а корневых пацанов лучше не злить. :)
Programming Stuff: Майкрософт, Часть 2. Карьерная Лестница >>>>> Download Now
Удалить>>>>> Download Full
Programming Stuff: Майкрософт, Часть 2. Карьерная Лестница >>>>> Download LINK
>>>>> Download Now
Programming Stuff: Майкрософт, Часть 2. Карьерная Лестница >>>>> Download Full
>>>>> Download LINK vI
>>хождение по головам практически отсутствует
ОтветитьУдалить>>подковерные игры здесь, вроде бы, не приняты.
Сильно зависит от отдела. Но, конечно, для IC уровней ниже Principal не принято - низко и среднеуровневые IC в политике не учавствуют, а просто пашут. :)
Ну да, скопление такого количества людей дает о себе знать. Но я рад, что это политика начинает проявляться лишь с определенного уровня.
УдалитьСерёга, а можешь чуть детальней рассказать, как эти "левелы" зарабатываются? На сколько формален этот перевод, сколько человек принимает решение о переводе тебя на след уровень? Есть ли какие-то регулярные апрайзелы, и если да, то как часто? Ну и т.п.
ОтветитьУдалитьСделаю отдельным подразделом. Но если кратко, то все, как обычно: на усмотрение менеджера.
УдалитьДобавил еще один раздел.
УдалитьДолго ждал нотификацию, о том, что ответишь на мой коммент, но так и не дождался - походу они не приходят (((. Решил ещё раз напомнить, а тут уже всё давным-давно готово. Спасибо за ответ!
УдалитьТак что, теперь тестеров (QA) вообще нет?
ОтветитьУдалитьМожет быть и есть исключительные команды, в которых они еще есть, но в большинстве своем их больше нет.
УдалитьТеперь упор на автоматизацию и все такое.
Разве можно просто взять и упразднить тестеров?! Тестер - это ж не обезьяна с мышкой - это целая должность и грамотный тестер вырабатывается годами!
УдалитьКажется, я начинаю понимать, почему такой тухляк у МС в выходном качестве: все мнят себя разрабами, а тупо "потыкать везде мышкой" - некому. Далеко ли пойдёт МС, если будет так дебильно управляться??
Привет, Сергей. Очень интересно пишешь, продолжай в том же духе! :)
ОтветитьУдалитьБлагодарю! Есть "продолжай в том же духе!" :))))
УдалитьА если не сразу после университета - возмодно на SDE начального уровня попасть?
ОтветитьУдалитьДумаю, что можно. Но из-за океана мало шансов, что будут заморачиваться с SDE. Возможно, местные с парой лет опыта могут попасть на такую позицию.
УдалитьНу я местный) Покопался на careers.microsoft.com, интересно, в разных командах на Software Engineer разные требования, где-то 1+, где-то 3, а где-то и 5
УдалитьНу, SDE с 5 годами опыта - это странно. В некоторых вакансиях указывается уровень. Там точно был 59-60 и требования 5 лет опыта? Может быть это была SDE позиция, а у ровень был не указан (будет зависеть от уровня кандидата)?
УдалитьДа возможно. Bing, раньше набиравший программистов в Москве в основном всем предлагал SDE позиции.
УдалитьНадо же, а я думал, что левелов всего 59 :) Вероятно, так и было раньше - интересовался примерно в 2011-м году, а отзыв был несколькими годами раньше (в конторе, где я тогда работал, тоже уходили от тимов/пээмов и даже синьоров).
ОтветитьУдалитьХейлсберг еще в конце девяностых пришел на позицию Technical Fellow, так что уровней было много еще 15-18 лет назад.
УдалитьСергей, спасибо за очередной материал! Да, соглашусь ) ничто так не угнетает в нашем аутсорсе, как осознание того, что тебе уже 30, а в менеджеры тебя совсем не тянет ))))
ОтветитьУдалитьКстати, на тему деталей всех этих левелапов подробно и хорошо пишет человек с говорящей фамилией Брехнер и именем Эрик. :)
ОтветитьУдалитьhttp://blogs.msdn.com/b/eric_brechner/archive/2010/06/01/level-up.aspx
http://blogs.msdn.com/b/eric_brechner/archive/2015/06/01/solving-the-whole-problem.aspx
Юра, спасибо за ссылки.
Удалить* Я бы сказал, что Level зависит в основном не от того, на что готов кандидат, а от того, сколько ему нужно платить. Особенно на начальных Level. Поясню. Если кандидат имеет N offers в округе с максимальной зарплатой M, то Microsoft (и любая другая компания) попробует выдать такую же зарплату M, а дальше, учитывая то, что у каждого Level есть вилка (максимальная и минимальная ЗП), то на базе этого выдадут Level. Когда берут из России, в случае, что конкурентных оферов нет, то как-то оценивают на опыте, либо посто прикидывают за сколько кандидат может поехать.
ОтветитьУдалить* О повышении решает не менеджер, а менеджеры. Бюджет на повышения всегда ограничен. Всегда больше желающих, чем разрешает бюджет. Поэтому а) существуют очереди, о которых иногда говорят открыто б) бывают стычки между менеджерами, пытающихся защитить своих кандидатов.
Денис, спасибо за дополнения!
УдалитьProgramming Stuff: Майкрософт, Часть 2. Карьерная Лестница >>>>> Download Now
ОтветитьУдалить>>>>> Download Full
Programming Stuff: Майкрософт, Часть 2. Карьерная Лестница >>>>> Download LINK
>>>>> Download Now
Programming Stuff: Майкрософт, Часть 2. Карьерная Лестница >>>>> Download Full
>>>>> Download LINK 7Q