548.46K

Как пройти собеседование в ИТ компанию

1.

Как пройти собеседование в ИТ компанию
Дмитрий Матвеев
Team Lead Samokat.Tech

2.

Дмитрий Матвеев
15 years in IT
Mentor at getmentor.dev
Team Lead Samokat.Tech
Ex. CTO Поток.Диджитал
Ex. Team-lead Evrone
Ex. CTO RailsJedies
Fan of Ruby lang

3.

Виды отбора
● Непрерывный найм



Постоянно нужны сотрудники
Унифицированный процесс
Берут всех, кто проходит фильтр (reach the bar)
● Найм на конкретную позицию


Временные рамки
Выбирают лучшего из группы кандидатов

4.

“Корпорации”
100+ сотрудников
Много вакансий, специализированные роли
Прокачанный HR-brand
Стандартный процесс
Большое количество кандидатов на входе
Часто включает тестовое и лайв кодинг

5.

“Стартапы” (небольшие компании)
До 100 человек, обычно 10-50
Точечные вакансии, широкий круг обязанностей
Нет или малоизвестный HR-brand
Кастомный процесс, зависит от конкретного человека
Меньше конкурентов
Сложнее прогнозировать результат

6.

Виды собеседований
● Live-coding interview


Algo
Custom
● System design interview

NALSD
Behavioral interview
Managerial interview
Culture fit interview
Special


Troubleshooting
ML/Science

7.

Виды собеседований
● Live-coding interview





Есть во всех FAANG, Yandex, Avito и многих других
Только для разработчиков или для всех
Проверка мышления VS стресс
Кастомный кодинг или алгоритм
“Лист бумаги” или IDE

8.

Как подготовиться
● Live-coding interview






LeetCode, Codewars, HackerRank
Не менее 40 примеров решить
Главное - говорить (озвучивать идеи в процессе)
Важно решить задачу хотя бы примитивным способом
Можно выбрать язык программирования
Не всегда можно пользоваться библиотеками языка

9.

Виды собеседований
● System design interview




Есть во всех FAANG, Yandex, Avito
Важно для сеньорных ролей
Абстрактные VS реальные компоненты (NALSD)
На “кастомном” собеседовании обычно бывают элементы системного дизайна

10.

Как подготовится
● System design interview





Mock interview - must have
Главное - говорить (озвучивать идеи)
От простого к сложному
At scale (как будем работать под нагрузкой - с цифрами)
Куча материалов в сети
■ SRE book by Google Chapter 12 (NALSD)
■ Сборник примеров в гитхаб https://github.com/donnemartin/system-design-primer
■ Статья про подготовку к собеседованию в Google https://danrl.com/srm/
■ Видео с примерами
■ Книги и видео с архитектурными принципами для больших систем

11.

Виды собеседований
● Behavioral interview




Просто поговорить про опыт VS каверзные вопросы
Проверяет софт-скилы
Может быть частью culture fit interview
Может включать “менеджерские” вопросы

12.

Как подготовится
● Behavioral interview






Главное - искренность
Говорите о неудачах с точки зрения опыта и последующего обучения
STAR - situation, task, action, result
Работа в команде = помощь (servant leadership)
Сборник вопросов https://grow.google/certificates/interview-warmup/
Отличное видео https://www.youtube.com/watch?v=PJKYqLP6MRE

13.

Виды собеседований
● Managerial




Про опыт управления командой
Сколько человек в подчинении
Только линейные сотрудники или менеджер менеджеров
Теоретические знания и практические подходы

14.

Как подготовиться
● Managerial



Изучите требования компании (glassdoor, погуглить)
Подготовьте примеры по STAR
Метрики и их использование

15.

Виды собеседований
● Culture fit



Знакомство с командой (в конце)
Знакомство с HR (в начале)
Похоже на поведенческое на минималках

16.

Как подготовиться
● Culture fit


Доброжелательность и открытость
Googliness

17.

Виды собеседований
● Кастомное “техническое” собеседование




Включает в себя поведенческое + кодинг + системный дизайн + секция “вопрос-ответ”
Зависит от конкретного исполнителя
Поработаем вместе VS строгий экзаменатор
Мышление VS запоминание

18.

Как подготовиться
● Кастомное “техническое” собеседование






Повторить основы по языку и платформе
Паттерны (микро)сервисной архитектуры
■ Распределенные транзакции (SAGA, двухфазный коммит)
Паттерны при работе с очередями (гарантии доставки сообщений)
Базы данных (индексы, транзакции)
Inbox/outboox паттерн при вызове внешних сервисов
Обработка ошибок (таймауты)

19.

СПАСИБО ЗА ВНИМАНИЕ
Дмитрий Матвеев
Team Lead Samokat.Tech
@matveyev_dmitry
English     Русский Правила