Сравниваем грейды IT-инженеров крупных зарубежных компаний: Google, Facebook, Uber и Booking

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

У гигантов IT-индустрии все не так — у них есть четкие грейды IT-специалистов со своими стандартами и прописанными «техническими требованиями». Мы пообщались с работниками компаний уровня FAANG, почитали требования самих компаний и составили списки с требованиями к каждому грейду IT-инженеров. Можете проверить, какому грейду соответствуете вы. А если вам пришлют оффер с конкретным грейдом — узнать, чего от вас будут ждать на работе.

gfeayjpt6rekjzoxao1ak1bjdte.jpeg

Кое-что общее про грейды и требования к разработчикам в компаниях уровня FAANG


  • За рубежом очень строго относятся к опыту работы. В России можно выпуститься из вуза, поработать годик и устроиться куда-нибудь мидлом или даже сеньором. За рубежом такое встречается реже — опыт в годах играет важную роль.
  • Требования к познаниям в языках и технологиях у компаний уровня FAANG изначально очень высокие. То есть чтобы попасть даже на нижний грейд, вы уже должны классно владеть инструментами и уметь писать чистый, рабочий и оптимизированный код. Более высокие грейды — это больше про системное видение и понимание привязки бизнес-процессов к программированию. Кстати, если хочется протестировать именно технические навыки, можно пройти тест — работодатели учитывают его результаты при найме.
  • Российский мидл из небольшого стартапа ≠ мидлу в крупной зарубежной компании. Часто те, кто в небольших российских компаниях работают как мидлы и даже сеньоры в компании уровня FAANG получают приглашение как джуниоры.
  • Лучше пойти мидлом в FAANG, чем сеньором в небольшую компанию. Не стоит переживать, что вам предложили грейд ниже — скорее всего, и зарплата, и обязанности и перспективы в FAANG будут намного выше.
  • Попасть на высокий грейд извне легче, чем вырасти внутри компании. В компании придется прилагать много усилий и доказывать свою компетенцию, а при собеседовании важно будет произвести правильное впечатление. Конечно, это все равно тяжело, но лучше сразу метить куда-нибудь повыше, чем надеяться «подрасти» уже на месте.

    fmnq-lr3sn-0c9f3axx11u9cwbc.png

  • Если вас приглашают на высокий грейд — лучше согласиться. Не стоит бояться ответственности или считать, что вы не справитесь. Раз вас пригласили — в компании считают, что так и должно быть. Соглашайтесь — потом обязательно втянетесь.
  • Старшие грейды больше связаны с управлением, чем с разработкой. Но при этом инженеры этих грейдов могут продолжать кодить сами — им это не запрещают.
  • Переход с одного грейда на другой не совсем повышение — это скорее признание. Еще на своем грейде вы просто начинаете брать задачи следующего, делаете их несколько месяцев — и в итоге вам присваивают новый грейд. Вас не повышают авансом — вы уже должны выполнять новые задачи и справляться с ними, чтобы вас повысили.

fg_o_rp1cjbadkfpnhk_c6hz0we.jpeg

Google и Facebook

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

E3 в Facebook и L3 в Google, Software Engineer II. Уровень джуниора, новичка. Сюда обычно берут тех, кто только что выпустился из вуза, и еще не имеет опыта работы. Или проработал год-другой в некрупной компании. Здесь важно уметь писать рабочий код по конкретной задаче, использовать инструменты проверки кода, запускать код локально. Никаких управленческих задач и компетенций нет.

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

E4 в Facebook и L4 в Google, Software Engineer III. Уровень мидла. Сотрудников этого грейда в обеих компаниях больше всего. Здесь важно уже не просто выполнять команды, а понимать, что ты разрабатываешь и как это влияет на производство. Плюс появляется три новых компетенции: умение писать документацию, давать задачи Е3 и принимать небольшие проектные решения. Например, самому придумывать, как именно реализовать фичу.

Некоторые инженеры всю жизнь живут на этом этапе — им комфортно просто кодить, не занимаясь управлением.

E5 в Facebook и L5 в Google, Senior Software Engineer. Здесь уже появляются управленческие компетенции — нужно возглавлять команду, помогать нижним грейдам, ставить новые задачи и решать их. На этом уровне инженер помогает формировать общую стратегию разработки — например, придумывает, как именно реализовать запрос от бизнеса.

E6 в Facebook и L6 в Google, Staff Software Engineer. На этом уровне больше взаимодействия между командами. Именно инженеры этого грейда помогают собирать вместе фичи, разработанные разными командами. Или полностью управляют своей командой, как будто это небольшой стартап внутри компании — реализуют крупные проекты, помогают с наймом новых сотрудников, предлагают глобальные идеи.

Есть грейды и выше: 7, 8, 9, 10 и 11. Но они уже практически директорские — со стороны сюда нанимают очень редко. Рядовые разработчики с сотрудниками этих грейдов обычно даже не взаимодействуют.

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

oxzogrx1l04tjhwe7obrznqxis4.png

Uber

Этой информацией с нами поделилась Алина, Software Engineer II @ Uber, Амстердам. Мы уже рассказывали, как она устроилась в Uber и переехала в Нидерланды.

Software Engineer I. Уровень джуниора. Выпускники вузов или новички с опытом работы меньше двух лет обычно автоматически попадают сюда, хотя случаются исключения. От них ждут чистого, рабочего кода. Обычно они работают вместе с другими инженерами над конкретными задачами, например, добавить новый модуль или прикрутить фичу. Сроки таких задач, как правило, не больше месяца. За работой Software Engineer I обязательно наблюдают старшие коллеги.

Software Engineer II. Уровень мидла, примерно как L4 в Google. Хороший, крепкий программист: пишет проектную документацию, может сам выбрать алгоритм для решения задачи. Часто пишет код уже без контроля сверху. Помогает Software Engineer I и иногда ставит им задачи. Обычно работает над более крупными проектами, которые длятся несколько месяцев.

Как и в других компаниях, инженеров этого уровня в Uber больше всего.

Senior Software Engineer. Уровень сеньора, как L5 в Google. Понимает проблемы бизнеса, умеет руководить другими инженерами и наставлять их. Пишет код, но больше работает над тем, чтобы разбить большую задачу на подзадачи, дать указания другим разработчикам, наметить общий путь разработки. Именно в его руках довести проект до конца — от пришедших от руководства требований до запуска.

Senior Software Engineer II. Почти то же самое, что Senior Software Engineer, только взаимодействует с несколькими командами. Обычно занимается сложными, комплексными задачами, которые решаются руками большого числа разработчиков из разных групп. Сюда очень редко нанимают людей со стороны, так как сотрудник должен хорошо понимать внутреннюю кухню Uber и бизнес-процессы.

Staff Software Engineer. Влияет на все региональное подразделение. Тесно общается с директорами, строит общую стратегию развития компании с технической точки зрения.

lgfbfw8iiv-avhxs4rz5tjfbr7c.jpeg

Booking

Этой информацией с нами поделился Георгий Могелашвили, Lead Developer @ Booking.com, основатель сервиса поиска менторов getmentor.dev, автор телеграм канала Мужик с бабочкой.

Тут грейдов гораздо меньше, и начинаются они не с джуниора, а сразу с мидла.

Core. Минимум три года опыта в разработке, умение работать с распределенными системами и знание технологий, с которыми работает компания. На этом грейде сотрудники занимаются только разработкой по конкретным задачам, с минимумом управления и менторства. Разработчиков этого уровня в Booking больше всего.

Кстати, тут можно посмотреть «технические требования» конкретно к этому грейду в вакансии на Core Developer.

Senior. 7+ лет опыта в программировании, софт-скиллы вроде грамотного общения и понимания бизнес-процессов. Умение влиять на людей, работать в команде, направлять и обучать младших сотрудников. Ответственность тоже выше — за инциденты придется отвечать перед руководством.

Технические требования тоже можно посмотреть в вакансии.

Principal. 12+ лет опыта. Роль технического руководителя, умение управлять командой, разрабатывать концепции, оценивать и внедрять новые технологии. Понимание того, как на код влияют требования клиентов.

Вакансия для лучшего понимания требований.

<рекламная пауза>
Предложения от компаний уровня FAANG сами собой в руки не свалятся. Чтобы их найти, получить оффер и переехать за границу, регистрируйтесь в @g_jobbot. Подходящие вам вакансии с релокейтом будут приходить в Телеграм.

© Habrahabr.ru