Гайд для подготовки к отбору на стажировку в Лабораторию ASTON по направлению системный анализ: теория, практика и мотивация
Фишка: Лаборатория ASTON — собственная программа стажировки с наставником, стипендией и путём от нуля до коммерческого проекта; компания обучает 900+ человек в год и 4× получала премию «Работодатель года» на Habr
| Этап | Длительность | Что проверяют |
|---|---|---|
| Скрининг HR / рекрутер | 20–30 мин | Мотивация, готовность к стажировке 3–4 месяца полный день, локация и формат работы, базовое соответствие требованиям (курсы SA/BA, образование) |
| Техническое интервью | 45–60 мин | Теория системного анализа: SQL, UML, REST/SOAP, требования, архитектура, жизненный цикл ПО, роль аналитика на проекте |
| Практический блок (возможен) | 30–45 мин | Разбор кейса: формулировка требований, диаграмма последовательности или use case, простой SQL-запрос, описание REST API |
| Финальное решение | — | При успешном прохождении — зачисление в Лабораторию ASTON с обучением, еженедельными проверками и учебными проектами под наставником |
Обязательный минимум
Плюсом будет
Почему решил сменить место работы / почему выбрал системный анализ?
Связь с IT, интерес к связке бизнеса и технологий, желание развиваться в аналитике. Для стажировки — мотивация войти в профессию через обучение.
На что обращаешь внимание при выборе работы?
Обучение, наставник, карьерный рост, проекты (финтех, телеком, e-com), стабильность аккредитованной IT-компании.
Когда готов приступить к работе на новом проекте?
Конкретная дата; для стажировки — готовность к полному рабочему дню 9:00–18:00 на 3–4 месяца.
Какой формат работы хочешь?
На стажировке: офис (если город с офисом) или удалённо (другие регионы). После выхода на проект — гибрид 3/2.
Совет: У Aston высокая частота мотивационных вопросов (до 98% по внутренней базе) — подготовь чёткие ответы без воды.
Фишка: Можно указать в сопроводительном «Обучение SA» для бесплатного обучения от ASTON, если ещё не проходили курсы.
Что такое нормализация БД?
Приведение структуры к нормальным формам (1НФ–3НФ) для устранения избыточности и аномалий вставки/обновления/удаления.
Какой у тебя уровень знаний реляционных баз данных?
Опиши: таблицы, ключи, JOIN, агрегаты, индексы. Для стажёра достаточно уверенного SELECT с JOIN и GROUP BY.
В чём разница INNER JOIN и LEFT JOIN?
INNER — только совпадающие строки; LEFT — все из левой таблицы + совпадения справа, иначе NULL.
Ловушка: Не путай нормализацию с денормализацией — на собесе могут спросить, зачем иногда денормализуют (производительность чтения).
Совет: Потренируйся писать запросы: выборка с JOIN, GROUP BY, HAVING, подзапросы.
Что такое API?
Application Programming Interface — контракт взаимодействия между системами; типы: REST, SOAP, GraphQL.
Что такое принцип REST?
Архитектурный стиль: ресурсы по URL, HTTP-методы (GET/POST/PUT/DELETE), stateless, представления (JSON/XML).
Что такое REST и SOAP?
REST — легковесный, JSON/HTTP; SOAP — XML, WSDL, строгий контракт, часто в enterprise/банках.
Какие знаешь HTTP статус-коды?
200 OK, 201 Created, 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 500 Internal Server Error.
Что такое SOAP и WSDL?
SOAP — протокол обмена XML-сообщениями; WSDL — описание операций, типов и endpoints веб-сервиса.
К синхронным или асинхронным интеграциям относится REST?
REST обычно синхронный (запрос-ответ); асинхронность — через очереди/брокеры сообщений.
В чём разница между аутентификацией и авторизацией?
Аутентификация — кто ты (логин/пароль, токен); авторизация — что тебе разрешено (роли, права).
Что такое веб-сервисы?
ПО, доступное по сети через стандартные протоколы (REST, SOAP); взаимодействие машина-машина.
Ловушка: HTTP 401 vs 403: 401 — не аутентифицирован; 403 — аутентифицирован, но нет прав.
Совет: HTTP статус-коды — один из самых частых вопросов Aston (частота ~70% в базе).
Что такое User Story?
Формат: «Как [роль], я хочу [действие], чтобы [ценность]»; критерии приёмки, оценка в story points.
Какие знаешь атрибуты качества требований?
Полнота, однозначность, проверяемость, согласованность, прослеживаемость, реализуемость; SMART для целей.
В чём разница между функциональными и нефункциональными требованиями?
Функциональные — что система делает; нефункциональные — как (производительность, безопасность, масштабируемость).
Что такое SMART?
Specific, Measurable, Achievable, Relevant, Time-bound — критерии формулировки целей и требований.
Чем отличаются Agile, Scrum, Kanban и Waterfall?
Waterfall — последовательные фазы; Agile — итерации; Scrum — спринты, роли, артефакты; Kanban — поток задач на доске.
Фишка: На проектах Aston часто финтех и enterprise — знание Waterfall + Agile и документирования требований важно.
Для чего нужна диаграмма последовательности?
Показывает взаимодействие объектов/систем во времени: сообщения, lifeline, активации; для API и интеграций.
Что такое фокус управления на диаграмме последовательности?
Прямоугольник на lifeline — период, когда объект активен и выполняет операцию.
Для чего используют BPMN?
Нотация для моделирования бизнес-процессов: события, задачи, шлюзы, потоки; понятна бизнесу и IT.
Что такое Use Case?
Сценарий взаимодействия актора с системой: актор, прецедент, основной и альтернативные потоки.
Совет: Умей нарисовать sequence diagram для простого REST-запроса: клиент → API Gateway → сервис → БД.
Какие знаешь виды архитектур?
Монолит, микросервисы, SOA, клиент-сервер, слоистая (layered), event-driven.
Что такое микросервисная архитектура?
Независимые сервисы с собственными БД, деплой отдельно, общение через API/очереди.
Какие плюсы и минусы монолитной архитектуры?
Плюсы: простота разработки и деплоя. Минусы: сложность масштабирования, связность модулей.
Что такое сервис-ориентированная архитектура (SOA)?
Сервисы как переиспользуемые компоненты с контрактами; ESB для маршрутизации; предшественник микросервисов.
Что такое толстый и тонкий клиент?
Толстый — логика на клиенте (desktop); тонкий — браузер, логика на сервере.
Как работает брокер сообщений?
Посредник между producer и consumer: очереди/топики, асинхронная доставка, Kafka/RabbitMQ.
В чём разница DWH и Data Lake?
DWH — структурированные данные для отчётности; Data Lake — сырые данные любых форматов для аналитики.
Ловушка: Микросервисы — не всегда лучше монолита; для стажёра важно понимать trade-offs, а не заучивать buzzwords.
Какие задачи выполнял как системный аналитик на прошлом проекте?
Сбор требований, документация, диаграммы, согласование с заказчиком и разработкой, приёмка. Для стажёра — учебные проекты и курсы.
Расскажи про свой опыт работы системного аналитика
Структура: проект → роль → задачи → артефакты (ТЗ, user stories, диаграммы) → результат.
Понимание роли системного аналитика на проекте
Мост между бизнесом и разработкой: требования, спецификации, API-контракты, участие в оценке и приёмке.
Совет: Даже без коммерческого опыта опиши учебные проекты на курсах SA/BA — Aston оценивает теорию и потенциал.
SQL: отчёт по заказам клиентов
Есть таблицы: customers(id, name), orders(id, customer_id, amount, created_at). Напишите запрос: для каждого клиента вывести имя, количество заказов и сумму всех заказов за 2025 год. Отсортировать по сумме по убыванию.
SELECT c.name, COUNT(o.id) AS order_count, SUM(o.amount) AS total_amount FROM customers c LEFT JOIN orders o ON o.customer_id = c.id AND o.created_at >= '2025-01-01' AND o.created_at < '2026-01-01' GROUP BY c.id, c.name ORDER BY total_amount DESC NULLS LAST;
Сложность: O(n) при индексе на customer_id и created_at
Формулировка User Story и критериев приёмки
Заказчик хочет: «Пользователь должен иметь возможность оплатить заказ картой». Сформулируйте User Story и 3 критерия приёмки.
User Story: Как покупатель, я хочу оплатить заказ банковской картой, чтобы завершить покупку онлайн. Критерии приёмки: 1. При выборе «Оплата картой» открывается форма ввода номера, срока, CVV. 2. При успешной оплате заказ переходит в статус «Оплачен», пользователь видит подтверждение. 3. При отклонении банком показывается понятное сообщение об ошибке, заказ остаётся в статусе «Ожидает оплаты».
Сложность: —
Диаграмма последовательности для REST API
Опишите (словами или псевдодиаграммой) последовательность вызовов при создании заказа через REST API: клиент → API Gateway → Order Service → Payment Service → БД.
1. Client → API Gateway: POST /orders {items, payment_method}
2. Gateway → Order Service: create order
3. Order Service → DB: INSERT order (status=pending)
4. Order Service → Payment Service: POST /payments {order_id, amount}
5. Payment Service → External Bank: charge
6. Bank → Payment Service: 200 OK
7. Payment Service → Order Service: payment_success
8. Order Service → DB: UPDATE order status=paid
9. Order Service → Gateway → Client: 201 Created {order_id, status}Сложность: —
Каркас ответа
3 дня
7 дней
14 дней
| Блок | Готов, если... |
|---|---|
| SQL | можешь написать SELECT с JOIN и GROUP BY без подсказок |
| HTTP/REST | можешь перечислить 7+ статус-кодов и объяснить отличие REST от SOAP |
| Требования | можешь сформулировать User Story с критериями приёмки и назвать 5 атрибутов качества |
| UML | можешь объяснить назначение sequence diagram и нарисовать простой сценарий |
| Архитектура | можешь сравнить монолит и микросервисы с плюсами и минусами |
| Мотивация | можешь за 2 минуты объяснить, почему Aston и системный анализ |
В день собеседования