Загрузка…
Загрузка…
frontend / senior / behavioral
Формат
online
Стадия
behavioral
Когда
within_quarter
Длительность
60 мин
01
Поведенческий
Расскажи о последней компании, где работаешь: что за продукт, что делаешь, какая команда, какой стек и технологии, и какую роль ты во всём этом играешь?
Стандартный стартовый вопрос секции про опыт
02
Поведенческий
Расскажи коротко, как у вас устроен процесс разработки: бизнес приносит задачу — что происходит дальше?
03
Поведенческий
Если задача большая и комплексная, её нужно декомпозировать и подумать, как сделать архитектурно — кто у вас этим занимается?
Follow-up к вопросу про процесс разработки
04
Поведенческий
Кто у вас в целом на проекте отвечает за архитектуру?
Заметки
Четвёртая секция собеседования в Яндекс — «проверка опыта» (в подразделение внутренних продуктов). Позади три секции: алгоритмы, платформа (инфраструктура), системный дизайн. Формат секции: ~час — сначала рассказ о техническом опыте, затем блок ситуационных/поведенческих вопросов, в конце вопросы кандидата про Яндекс. Дальше по воронке — финалы (созвоны с командами) и ожидание оффера (кандидат рассчитывает на ~500к). Кандидат — старший фронтенд-разработчик (текущий проект — внутренний портал отчётности для регуляторов), ранее уже работал в Яндексе; также упоминает прошлый опыт: консоль управления безопасностью, b2b-площадка (рекламная платформа), fullstack-проект на go + react для управления девайсами. Транскрипт — ретро-видео кандидата о своём собеседовании.
Стиль интервьюера
Собеседование прошло на позитивном вайбе, совсем не страшно. Интервьюер активно задавал уточняющие follow-up'ы по нарративу кандидата (докапывался до деталей: флакающие тесты, gzip, traceparent), делился собственным опытом и в конце был готов ответить на любые вопросы про работу в Яндексе.
05
Поведенческий
Что у вас по технологиям на фронтенде, что используете?
Ответ: react, react query, styled components, zod, react hook form, webpack, внутренний ui-кит
06
Поведенческий
Пишете ли вы тесты, в какой момент пишете и как у вас вообще устроен процесс тестирования задач?
07
Теория
Как вы тестируете вёрстку? Используете ли скриншотные тесты — и если нет, то почему?
08
Кейс
Если приходит мажорное обновление UI-кита, как вы проверяете, что ничего не поехало? Помогли бы здесь скриншотные тесты?
Follow-up к вопросу про скриншотные тесты
09
Поведенческий
Какие в целом проблемы с тестами встречались в твоём опыте (флакающие тесты и т.п.)?
10
Теория
Почему юнит-тесты вообще могут зависеть от таймаутов? Какие есть стандартные подходы, чтобы избавляться от таймаутов в юнит-тестах (моки, fake timers)?
Follow-up: интервьюер докопался до того, что юнит-тесты флакали по таймауту при переходе с jest на vitest
11
Поведенческий
Вы сделали и протестировали задачу — что с ней происходит дальше? Как устроен путь до продакшена и релизный цикл?
Ответ: PR → проверки в CI → код-ревью → мастер → тестовые стенды → релизная ветка раз в 2-3 недели → превью → прод
12
Кейс
В сторе есть задачи на фронт и на бэк: как вы их связываете и отслеживаете, чтобы они одновременно попали в релиз? Не возникает ли проблем, когда бэк делает ломающее изменение, а фронт ещё не готов?
Ответ: коммуникация, придерживание PR, фич-флаги, общая openapi-схема как контракт
13
Поведенческий
Где у вас крутятся CI-проверки и кто настраивает CI/CD — вы сами или отдельные девопсы?
14
Поведенческий
Кто отвечает за поддержку и правку пайплайнов — все вместе или выделенный человек?
Follow-up к вопросу про CI/CD
15
Поведенческий
Приведи пример сложной или интересной задачи, связанной с инфраструктурой/пайплайнами/сборкой, которую ты делал.
Кандидат рассказал про написание dockerfile для фронтенд-приложения, встраиваемого плагином в другое приложение
16
Теория
Сталкивался ли ты с тем, что докер-образы фронтенда долго собираются (например, из-за выкачивания npm-пакетов), и какие оптимизации можно применить, чтобы сборка была быстрее?
Ответ: кэшировать npm-пакеты, чтобы не перевыкачивать каждый раз
17
Поведенческий
Как вы отслеживаете, быстро ли работает ваш сайт: какие мониторинги и метрики есть, жаловались ли пользователи на тормоза?
Кандидат рассказал про графики в графане и сквозной trace id в ошибках для трассировки запросов
18
Теория
Трассировку с trace id вы делали самостоятельно вручную или использовали стандартные форматы и библиотеки (opentelemetry, заголовок traceparent)?
Follow-up: обсудили формат заголовка traceparent (4 части, правила генерации)
19
Кейс
Ситуация: к тебе приходит менеджер и говорит «сайт тормозит, надо править». Что будешь делать, что спрашивать, куда смотреть и как разбираться?
Кандидат сначала рассказал про опыт дежурств: трассировки, графики времени ответа, 500-ки
20
Кейс
Уточнение: у друга стартап, его сайт жутко тормозит, у тебя есть ссылка и доступ к коду — как бы ты как эксперт начал раскапывать проблему и что бы посоветовал?
Follow-up к кейсу «сайт тормозит»: ответ — смотреть network, лишние запросы, конкретизировать что именно тормозит
21
Теория
А если пользователь долго видит белый экран при загрузке — как это диагностировать и чем фиксить?
Follow-up: обсудили серверный рендеринг, lazy loading, скелетоны, последовательную отрисовку
22
Теория
С какими ещё типичными проблемами производительности сайта сталкивался: статика, картинки, шрифты, сжатие (gzip), загрузка скриптов?
Интервьюер подчеркнул, что часто забывают базовые вещи вроде включения gzip
23
Теория
Какой системный подход к производительности ты бы посоветовал, чтобы такие проблемы не возникали в дальнейшем (метрики, проверки при релизах)?
Ответ: PageSpeed Insights, метрики типа LCP, следить за метриками при каждом релизе и разбираться при деградации
24
Поведенческий
Расскажи про самое крутое/сложное/интересное, что ты сделал за карьеру программиста — достижение, которым гордишься и которым мог бы похвалиться перед коллегами.
Кандидат рассказал про фичу продвижения товаров по SKU в b2b-платформе: объединение данных из трёх микросервисов через BFF
25
Поведенческий
Расскажи про ситуацию, когда ты сам увидел проблему в проекте, по своей инициативе предложил улучшение, защитил его — что это была за проблема, какие шаги предпринял и какой результат получился?
Кандидат рассказал про утилиту кодогенерации юнит-тестов и бойлерплейта на go через работу с ast-деревом
26
Поведенческий
Расскажи про ситуацию недопонимания или конфликта в команде или со смежниками: из-за чего возник, что ты делал и какой результат в итоге получился?
Кандидат рассказал про конфликт вокруг множества минорных комментариев на код-ревью, решённый созвоном и договорённостью помечать комментарии «minor:»
27
Поведенческий
Почему ты ищешь работу и что ищешь: какой идеальный образ команды, проекта, продукта, в который ты хотел бы пойти?
28
Поведенческий
Тебе больше нравится проект технического плана (библиотеки, ui-киты, инфраструктура) или продуктовый проект?
Уточняющий follow-up к вопросу про идеальную команду
29
Поведенческий
Расскажи, исходя из каких критериев ты обычно выбираешь работу/команду — что для тебя важно?
Ответ: комфорт в команде, ретро с экшен-пойнтами, понимание бизнес-ценности, личный матч с тимлидом