Загрузка…
Загрузка…
qa / middle / tech_screening
Формат
online
Стадия
tech_screening
Когда
within_quarter
Длительность
—
01
Поведенческий
Расскажи про свой опыт: в какой компании работал, чем занимался, какими инструментами владеешь, какие были обязанности.
Вводный вопрос про опыт
02
Теория
Какие помнишь уровни тестирования?
Кандидат рассказал про юнит, модульное, системное и приёмочное тестирование
03
Поведенческий
Тебе самому сейчас чем больше нравится заниматься — вебом или мобилками?
04
Поведенческий
С какими интеграциями приходилось работать — только внутренние или были внешние системы?
Заметки
Транскрипт видеозаписи собеседования (опубликовано сообществом Criminal IT) на позицию инженера по функциональному тестированию в компанию Ланит. HR — Катя, технический интервьюер — Никита Дмитриев, кандидат — Егор Лазарев, опыт около 3 лет (≈2,7 года на проекте личного кабинета телеком-оператора: веб + бэкенд, затем мобильное тестирование на Android). Работа по Scrum с двухнедельными спринтами. Результат собеседования в транскрипте не озвучен.
Стиль интервьюера
Интервью без камер, на «ты», доброжелательное. Интервьюер шёл по темам блоками (теория тестирования, API/HTTP, архитектура, брокеры, Linux, логирование, БД, мобильное тестирование, тест-дизайн), активно задавал уточняющие follow-up'ы и ситуационные мини-кейсы (PUT с частичными данными, повторный POST регистрации, выбор версий Android), подсказывал при затруднениях.
Кандидат рассказал про личный кабинет телеком-оператора и внешние интеграции, включая оплату через gateway
05
Теория
Что такое API?
06
Теория
Помимо REST, какие ещё виды API знаешь?
Кандидат назвал SOAP (XML), gRPC (protobuf), GraphQL
07
Теория
С какими методами веб-запросов (HTTP-методами) приходилось работать?
Кандидат перечислил POST, GET, PUT, PATCH, DELETE, HEAD, OPTIONS и описал назначение
08
Теория
В чём отличие PUT от PATCH? Один меняет частично, другой полностью — что это значит?
Follow-up к вопросу про методы HTTP
09
Кейс
Ситуация: у клиента 5 параметров в карточке, мы PUT-запросом передаём только новый номер телефона. Запрос успешен. Что случится с остальными данными, которые мы не передали?
Follow-up: проверка понимания семантики PUT как полной замены ресурса
10
Теория
Можно ли методом POST обновлять данные, как методом PUT или PATCH?
11
Теория
Обновление данных методом POST — это правильное решение с архитектурной точки зрения?
Follow-up к вопросу про обновление данных POST-ом
12
Теория
Слышал ли ты что-нибудь про идемпотентность?
13
Теория
Какие HTTP-методы идемпотентные, а какие нет?
Follow-up к вопросу про идемпотентность
14
Кейс
Есть метод регистрации клиента: отправляем POST с ФИО, датой рождения, телефоном и email, клиент успешно создан. Что будет, если повторно отправить этот же запрос с теми же данными?
15
Теория
Отклонение дубликата регистрации должно быть с какой-то ошибкой? Какой должен вернуться статус-код?
Follow-up: кандидат точный статус-код не назвал
16
Теория
Ошибка дубликата при регистрации — на чьей стороне (клиента или сервера)?
Follow-up к вопросу про статус-код
17
Теория
Чем метод GET отличается от метода POST — не по назначению, а по структуре запроса?
Кандидат рассказал про body, идемпотентность, передачу данных в URL vs теле, кэширование
18
Поведенческий
Ты с Postman работал не только с коллекциями, но и с переменными, окружениями и тест-ранами?
Уточнение по резюме
19
Поведенческий
Какое процентное соотношение бэкенда к фронтенду у тебя было по задачам на последнем проекте?
Ответ: примерно 30% фронт, остальное бэк
20
Теория
Чем микросервисы отличаются от монолита?
21
Поведенческий
Расскажи про опыт работы с Kafka: как подключался, что делал?
Кандидат рассказал про подключение через Explorer/ZooKeeper, просмотр топиков, вставку JSON
22
Поведенческий
Ты только подключался смотреть, что приходит, или мог сам отправлять сообщения в очередь?
Follow-up к вопросу про Kafka
23
Теория
Чем отличается взаимодействие микросервисов через брокеры сообщений от взаимодействия по API?
24
Теория
В чём преимущество брокеров сообщений?
Follow-up к вопросу про брокеры vs API
25
Поведенческий
Приходилось ли работать с Linux или UNIX-подобными системами?
Кандидат работал в основном в Windows
26
Поведенческий
Какими командами пользовался в командной строке, что делал?
Кандидат рассказал про выкачивание логов через Logcat в Android Studio
27
Теория
Помнишь какие-нибудь команды для работы с директориями в командной строке?
Follow-up; кандидат не вспомнил
28
Поведенческий
Кто настраивал тестовое окружение у вас на проекте — DevOps-инженер?
29
Поведенческий
Если разворачивал сборку локально, как конкретно это делал? Были ли инструменты CI/CD помимо git?
Follow-up к вопросу про тестовое окружение
30
Поведенческий
Расскажи про опыт работы с Kibana — что делал в системе логирования?
Вопрос задан по резюме
31
Поведенческий
Kibana ты использовал для веб-логов, а для мобильных какие ещё системы логирования использовал?
Follow-up; ответ — логи в Android Studio
32
Поведенческий
Как часто приходилось взаимодействовать с базами данных и как именно?
Кандидат работал с PostgreSQL через pgAdmin, писал SELECT и JOIN
33
Теория
Назови структуру SQL-запроса с JOIN: как объединить две таблицы (таблица A и таблица B)?
Кандидат устно описал select ... from A join B on внешний/внутренний ключ
34
Теория
Помнишь какие-нибудь агрегатные функции в SQL? Работал с ними?
Ответ: count, average
35
Теория
Какие есть типы взаимосвязей между таблицами?
Кандидат сначала не вспомнил; интервьюер подсказал: один к одному, один ко многим, многие ко многим
36
Поведенческий
Изучал ли какие-нибудь языки программирования?
Ответ: Python и Pascal в учёбе, на практике не использовал, фокус на ручном тестировании
37
Теория
Чем характерно отличается тестирование мобильных приложений? Что в них специфичного?
Кандидат назвал прерывания, жесты, размеры экрана, типы соединения, пуши, биометрию, GPS, клавиатуры, энергопотребление
38
Поведенческий
Ты в основном тестируешь на физическом устройстве или на эмуляторах?
39
Кейс
Выходит новое мобильное приложение, оно поддерживает Android с 12 по 16 версию. Какие сборки/версии ОС ты бы выбрал, чтобы проверить приложение?
Ответ кандидата: ориентироваться на аналитику популярности устройств и версий ОС
40
Поведенческий
Ты часто пишешь тест-кейсы?
41
Теория
Зачем нам нужен тест-дизайн?
42
Теория
Какими техниками тест-дизайна ты пользуешься при написании тест-кейсов?
Кандидат назвал эквивалентное разбиение, граничные значения, попарное тестирование с примерами
43
Теория
Слышал ли ты что-нибудь про матрицу трассировки?
Кандидат ответил частично — про привязку к бизнес-требованиям