ype_bootcamp_cover.png

Yandex Platform Engineering

Привет! Рады тебя видеть на страничке отдела Yandex Platform Engineering — мы делаем инфраструктуру для разработки и эксплуатации продуктов Яндекса.

Что такое Platform Engineering

Это тренд, выросший из DevOps, который сейчас быстро набирает популярность. У Platform Engineering есть сайт и своя международная конференция.

Цель Platform Engineering — позволить командам заниматься развитием своих продуктов и тратить меньше времени на взаимодействие с инфраструктурой. Это возможно за счёт автоматизации и лёгкой самостоятельно настройки процессов.

Platform Engineering в Яндексе

В Яндексе построением инфраструктуры занимается большой отдел, который создаёт инструменты и поддерживает все этапы создания продукта от планирования и разработки до вывода в эксплуатацию и последующей поддержки.

Вот некоторые факты о нашем отделе:

  • 👨‍💻 С, С++, Java, Kotlin, Python, Go, TS, JS.
  • 🌏 Работаем в офисах из разных городов и стран: Москва, Санкт-Петербург, Новосибирск, Симферополь, Белград, Ереван, Астана.
  • 🔥 Разные задачи: low-level, high-load, ML, инфраструктурные, продуктовые.
  • Три суперкомпьютера на GPU в топ-500, мощностью 21.5, 16, 12.8 PFlop/s.

Мы создаём инфраструктуру от А до Я, которая позволяет легко разрабатывать сложные и высоконагруженные продукты Яндекса и тратить время разработчика только на действительно важные вещи.

Буткемп

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

Команды подбираются из разных частей отдела в зависимости от языка программирования. После прохождения четырёх команд на свое усмотрение можно остаться в любой из них или продлить буткемп ещё на две команды и выбирать из шести. Стажировка в отделе тоже проходит в формате буткемпа, но количество команд меньше — две или три в зависимости от длительности стажировки.

bootcamp.png

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

Ниже — список команд буткемпа и языки программирования, которые в них используются (по ссылке доступно описание команды).

Команды Буткемпа

Про все команды нашего отдела можно почитать из меню слева, а на данный момент в буткемпе по языками представлены:

Go

C++

Python

Java

TypeScript

Не только работа

У нас очень дружный отдел. Мы собираемся на тимбилдинги и ездим друг к другу в разные города. По вечерам играем в настольные игры, раз в две недели играем в Dungeons and Dragons с приглашённым мастером.

Об интересном и уникальном опыте нашей работы мы рассказываем на митапах DevTools Party и Субботниках по разработке инфраструктуры.

Наши статьи на Хабре

https://habr.com/ru/company/yandex/blog/544842/ — про Sandbox;

https://habr.com/ru/company/yandex/blog/565568/ — про Distbuild;

https://habr.com/ru/company/yandex/blog/589363/ — как мы запускаем суперкомпьютеры;

https://habr.com/ru/company/yandex/blog/482926/ — про Arc VCS;

https://habr.com/ru/company/yandex/blog/567134/ — разработка и эксплуатация ядра Linux;

https://habr.com/ru/company/yandex/blog/564510/ — про Yandex Planner и планирование мощностей во внутреннем облаке;

https://habr.com/ru/companies/yandex/articles/485050/ — гиперкуб. Как мы обеспечили разработчиков тестовыми устройствами и не потеряли их.

https://habr.com/ru/companies/yandex/articles/761946/ — почему инфраструктура big tech обычно состоит из самописных решений

Выступления с внешних мероприятий

https://www.youtube.com/watch?v=0aWSea98rpc — внутреннее облако в Яндексе — от прототипа до платформы / Дмитрий Липин (Yandex Infrastructure);

https://www.youtube.com/watch?v=-Wu1sfJdJQM — Mom, I'm in love with a monorepo / Anastasiia Abrashitova. HighLoad International

https://www.youtube.com/watch?v=LeHOMN8kqBM — CPU-изоляция по memory bandwidth / Лев Плинер (Yandex Infrastructure);

https://www.youtube.com/watch?v=vBUFkHNuGEU — Hardware as a Service without incidents;

https://www.youtube.com/watch?v=YPm_QUUaJLc — доклад Анастасии Абрашитовой про отдел и про синк кода из внутреннего репозитория в open-source;

https://youtu.be/35Q2338ywEw?t=11377 — как устроена разработка ядра Linux;

https://www.youtube.com/watch?v=mLpFo2UqqdY — cеть как черный ящик или мониторинг связности;

https://youtu.be/IkLBW_wxZq0?t=1846 — выступление Константина Кардаманова про Sandbox;

https://www.youtube.com/watch?v=35Q2338ywEw&t=620s — выступление Константина Кардаманова про Distbuild;

https://www.youtube.com/watch?v=p1C0P508Tm8 — доклад про автоматические проверки пулл реквестов;

https://www.youtube.com/watch?v=PQWdvuo6Gzc — выступление Владимира Кихтенко про Arc;

https://youtu.be/cNfzfbb86wY — доклад на Yandex Scale 2021;

https://www.youtube.com/watch?v=yGjcKr_7X48 — доклад Анастасии Абрашитовой про работу тимлидом во внутренней разработке;

https://www.youtube.com/watch?v=8nz3VMcguNc&t=1202s — сборка и тестирование в монорепозитории: система сборки ya make — Сергей Прейс;

https://www.youtube.com/watch?v=3u6_FDhKk5s — Александр Иванов. Yandex Load Testing: что облачные инструменты дают нагрузочному тестировщику.

Как попасть в отдел

Откликнуться на вакансию

Требования к кандидатам

  • Знание классических алгоритмов и структур данных.
  • Опыт работы с реляционными или нереляционными базами данных и понимание, как они устроены.

Полезные ссылки для подготовки

Как мы нанимаем бэкенд-разработчиков — страница, на которой собраны все релевантные материалы про процессы найма и подготовки к секциям.

Как проходят архитектурные секции собеседования в Яндексе: практика дизайна распределённых систем — один из лидов нашего отдела, Константин Кардаманов, рассказывает про секции по архитектуре систем: обязательно к прочтению, если вы претендуете на позиции старших и ведущих инженеров.Наши статьи на Хабр