Собеседование в Т-банк разработчиком этапы, вопросы, подготовка

Т-банк — один из технологических лидеров российского финтеха. Сильная инженерная культура, современный стек, хорошие условия. Неудивительно, что конкуренция за позиции высокая.
В этом гайде — детальный разбор процесса найма: от отклика до оффера. С реальными вопросами и советами от тех, кто прошёл.
Почему разработчики выбирают Т-банк
Прежде чем готовиться — стоит понять, куда вы идёте:
Технологии:
- Java/Kotlin, Scala для бэкенда
- React, TypeScript для фронтенда
- Kubernetes, Kafka, PostgreSQL
- Собственные инструменты и платформы
Культура:
- Плоская структура, минимум бюрократии
- Сильный акцент на автоматизацию
- A/B тесты, data-driven решения
- Внутренние митапы и обучение
Условия:
- Конкурентные зарплаты (верхняя часть рынка)
- ДМС со стоматологией
- Гибкий график, возможность удалёнки
- Бонусы и опционы
Этапы отбора
Этап 1: Заявка и скрининг резюме
Как откликнуться:
- Через сайт tinkoff.ru/career
- Через LinkedIn (рекрутеры активно ищут)
- По реферальной программе (лучший способ)
На что смотрят:
- Релевантный опыт работы
- Технологический стек, соответствующий вакансии
- Понятное описание проектов и достижений
- Образование (не критично, но смотрят)
Совет: В резюме указывайте конкретные метрики. Не «Оптимизировал запросы», а «Снизил время ответа API с 500ms до 50ms».
Этап 2: HR-интервью (30 минут)
Телефонный или видео-звонок с рекрутером.
Типичные вопросы:
- Расскажите о себе и текущей работе
- Почему хотите в Тинькофф?
- Что знаете о компании и продуктах?
- Какие зарплатные ожидания?
- Готовы ли к работе в офисе/гибриду?
Что оценивают:
- Адекватность и коммуникабельность
- Мотивацию (не только деньги)
- Совпадение ожиданий
Совет: Изучите продукты Тинькофф — приложение банка, инвестиции, страхование. Покажите, что вы не просто «ищете работу», а хотите именно сюда.
Этап 3: Техническое интервью (1.5-2 часа)
Главный этап. Может быть один или два раунда в зависимости от позиции.
Формат:
- Видео-звонок в Zoom
- Кодинг в онлайн-редакторе или IDE с шарингом экрана
- 1-2 интервьюера (обычно будущие коллеги)
Структура:
- Разминка (10-15 минут): обсуждение опыта, технологий
- Теоретические вопросы (20-30 минут): по стеку позиции
- Практические задачи (40-60 минут): алгоритмы и/или проектирование
- Ваши вопросы (10-15 минут)
Этап 4: Финальное интервью (45-60 минут)
Разговор с руководителем команды или направления.
Что обсуждают:
- Глубокое погружение в ваш опыт
- Конкретные технические решения из прошлых проектов
- Как вы работаете в команде
- Карьерные цели
Формат: более разговорный, меньше «задач».
Технические вопросы по направлениям
Java/Kotlin Backend
Теория:
- Как работает JVM, garbage collection?
- В чём разница между Java и Kotlin?
- Расскажите про Spring: IoC, DI, AOP
- Как устроены HashMap, ConcurrentHashMap?
- Что такое volatile, synchronized, locks?
- Reactive programming: Project Reactor, WebFlux
Практика:
- Реализовать thread-safe singleton
- Найти deadlock в коде
- Оптимизировать SQL-запрос
- Спроектировать REST API для платёжной системы
Пример вопроса:
«Есть сервис, который обрабатывает 10K RPS. Иногда под нагрузкой начинает тормозить. Как будете искать проблему? Какие метрики смотреть? Какие инструменты использовать?»
Frontend (React/TypeScript)
Теория:
- Жизненный цикл React-компонентов
- Hooks: useState, useEffect, useMemo, useCallback
- Virtual DOM, reconciliation
- State management: Redux, MobX, Zustand
- TypeScript: generics, utility types, type guards
- Web Vitals, оптимизация производительности
Практика:
- Реализовать кастомный хук
- Оптимизировать рендеринг списка
- Написать компонент с debounce/throttle
- Исправить утечку памяти в useEffect
Пример вопроса:
«У нас есть таблица с 10 000 строк. Пользователи жалуются на тормоза. Как оптимизируете? Что такое виртуализация и как её применить?»
Data Engineering / Analytics
Теория:
- Разница между OLTP и OLAP
- Как устроен Kafka, партиционирование
- ClickHouse vs PostgreSQL: когда что использовать
- ETL vs ELT
- Data Lake, Data Warehouse, Data Lakehouse
Практика:
- Написать SQL-запрос с оконными функциями
- Спроектировать pipeline обработки данных
- Оптимизировать запрос к аналитической БД
System Design (для Senior)
Типичные задачи:
- Спроектировать платёжный шлюз
- Спроектировать систему уведомлений (push, SMS, email)
- Спроектировать антифрод-систему
- Спроектировать сервис котировок в реальном времени
Что важно показать:
- Умение оценивать нагрузку (RPS, storage)
- Понимание CAP-теоремы и trade-offs
- Знание паттернов: CQRS, Event Sourcing, Saga
- Опыт с Kafka, Redis, PostgreSQL
Алгоритмические задачи: примеры
Задача 1: Валидные скобки (Easy)
Условие: Дана строка со скобками ()[]{}. Проверить, что скобки расставлены корректно.
public boolean isValid(String s) {
Stack stack = new Stack<>();
Map pairs = Map.of(')', '(', ']', '[', '}', '{');
for (char c : s.toCharArray()) {
if (pairs.containsValue(c)) {
stack.push(c);
} else if (pairs.containsKey(c)) {
if (stack.isEmpty() || stack.pop() != pairs.get(c)) {
return false;
}
}
}
return stack.isEmpty();
}
Задача 2: Слияние интервалов (Medium)
Условие: Дан список интервалов, объединить пересекающиеся.
public int[][] merge(int[][] intervals) {
Arrays.sort(intervals, (a, b) -> a[0] - b[0]);
List result = new ArrayList<>();
for (int[] interval : intervals) {
if (result.isEmpty() || result.get(result.size() - 1)[1] < interval[0]) {
result.add(interval);
} else {
result.get(result.size() - 1)[1] =
Math.max(result.get(result.size() - 1)[1], interval[1]);
}
}
return result.toArray(new int[result.size()][]);
}
Задача 3: Rate Limiter (Medium/Hard)
Условие: Реализовать rate limiter: не более N запросов за M секунд.
public class RateLimiter {
private final int maxRequests;
private final long windowMs;
private final Queue timestamps = new LinkedList<>();
public RateLimiter(int maxRequests, long windowMs) {
this.maxRequests = maxRequests;
this.windowMs = windowMs;
}
public synchronized boolean allowRequest() {
long now = System.currentTimeMillis();
// Удаляем устаревшие запросы
while (!timestamps.isEmpty() && timestamps.peek() < now - windowMs) {
timestamps.poll();
}
if (timestamps.size() < maxRequests) {
timestamps.add(now);
return true;
}
return false;
}
}
Поведенческие вопросы
Тинькофф обращает внимание на soft skills. Подготовьте истории по STAR:
Вопросы, которые задают:
- Расскажите о самом сложном проекте
- Как вы справляетесь с дедлайнами?
- Был ли конфликт с коллегой? Как решили?
- Когда последний раз вы ошиблись? Какие выводы?
- Как вы изучаете новые технологии?
Пример хорошего ответа:
Вопрос: Расскажите о сложном баге, который долго искали.
Ответ: На прошлом проекте у нас периодически падала производительность — раз в 2-3 дня latency вырастал в 10 раз. Логи ничего не показывали.
Я взял на себя расследование. Добавил метрики на каждый этап обработки запроса, настроил алерты. Через неделю поймал момент деградации — проблема была в GC паузах из-за утечки памяти в кеше.
Нашёл, что при определённом паттерне запросов объекты не удалялись из WeakHashMap. Пофиксил, добавил мониторинг heap usage. После этого проблема не повторялась.
Выводы: важно иметь observability с первого дня, не ждать проблем.
Красные флаги: почему отказывают
Поверхностные знания стека
- Пишете на Java, но не знаете, как работает GC
- Используете Spring, но не понимаете, что такое DI
Неумение рассуждать вслух
- Молча пишете код
- Не объясняете свой ход мыслей
Нет вопросов к интервьюеру
- Создаёт впечатление незаинтересованности
- Подготовьте 5-7 вопросов о команде, проекте, процессах
Негатив о прошлых работодателях
- Даже если они это заслужили — держите при себе
- Фокусируйтесь на том, что хотите, а не от чего бежите
Завышенные/заниженные ожидания
- Изучите рынок, назовите адекватную вилку
- «Сколько дадите» — плохой ответ
Стратегия подготовки: 3 недели
Неделя 1: Теория и основы
- Повторите основы вашего стека (Java/Kotlin/React/etc.)
- Прочитайте про архитектуру Тинькофф (есть статьи на Хабре)
- Изучите продукты компании, скачайте приложение
Неделя 2: Алгоритмы и практика
- 2-3 задачи в день на LeetCode (Medium)
- Фокус: массивы, строки, хеш-таблицы, деревья
- Практикуйтесь писать код без автодополнения
Неделя 3: Симуляция
- 2-3 мок-интервью с друзьями или на Pramp
- Подготовьте STAR-истории
- Отрепетируйте ответ на «Расскажите о себе»
Как ENIGMA AI помогает на собеседовании в Тинькофф
Даже с хорошей подготовкой можно забыть синтаксис или запутаться в алгоритме под стрессом. ENIGMA AI работает как подстраховка:
- Мгновенные подсказки — если забыли, как работает Stream API или хук useCallback
- Помощь с алгоритмами — напомнит паттерн решения
- Stealth mode — полностью невидим при шаринге экрана в Zoom
Это не замена знаниям, но отличная страховка от «знаю, но забыл».
Попробовать ENIGMA AI бесплатно →
FAQ
Сколько длится процесс найма?
От 2 до 4 недель. Иногда быстрее, если срочно нужен человек в команду.
Можно ли пересдать?
Да, обычно через 6 месяцев. За это время нужно серьёзно подтянуть слабые места.
Что если я не знаю ответ на вопрос?
Лучше честно сказать: «С этим не работал, но вот как бы подошёл к изучению…» Попытки блефовать обычно видны.
Есть ли тестовое задание?
Иногда да, особенно для junior-позиций. Обычно это небольшая задача на 2-4 часа.
Какой уровень английского нужен?
Для большинства позиций — чтение документации. Для международных проектов — разговорный.
Удалёнка или офис?
Зависит от команды. Многие работают в гибридном формате. Уточняйте на HR-скрининге.
Собеседование в Тинькофф — это проверка не только знаний, но и способа мышления. Показывайте, как вы рассуждаете, и не бойтесь задавать уточняющие вопросы.
Похожие статьи

Собеседование в Ozon Tech: этапы, вопросы и как подготовиться

Собеседование в VK: этапы, вопросы и как подготовиться

Собеседование в Авито: этапы, вопросы и как подготовиться
