Расскажите, как взаимодействовали сервисы между вашими проектами.
System Analyst
Практическая задача: Единая платформа уведомлений (Notification Platform) Контекст В компании существует 3 разрозненные системы, которые отправляют уведомления пользователям: 1. CRM — отправляет e-mail и push-уведомления о заказах. 2. Support Portal — отправляет сообщения о тикетах в Telegram-бот. 3. Security System — генерирует SMS-оповещения о подозрительных входах. Каждая система реализует логику по-своему: * собственные шаблоны, хардкод адресатов; * нет централизованной истории уведомлений; * пользователи жалуются на дубли и задержки; * нет единого SLA, метрик и центра управления. Цель Спроектировать новую Notification Platform, которая: * агрегирует события из разных источников (CRM, Support, Security), * маршрутизирует их по типу и каналу (email, SMS, Telegram, push), * обеспечивает единообразие шаблонов, логирование и наблюдаемость, * поддерживает SLA (p95 ≤ 3 сек на доставку), * допускает масштабирование и расширение каналов в будущем. Задача для кандидата 1. Определите функциональные требования системы. 2. Опишите нефункциональные требования (надёжность, производительность, обработка ошибок). 3. Составьте контекстную диаграмму (C4 Level 2). 4. Добавить схему sequence-диаграмму. Например отправка сообщения из CRM.
Зачем использовать gRPC, если есть REST? В чём его суть?
Насколько подробно задачи приходили описанными?
Как вы собираете бизнес-требования?
Что такое триггер в базе данных?
Логическая задача про арбуз: арбуз весит 10 кг и на 99% состоит из жидкости, после усыхания жидкости стало 98%. Сколько теперь весит арбуз?
Где обычно прописывают версию API?
Как была реализована интеграция между системами? Опишите технические детали
Какие у вас принципы по жизни?
Разве предложенные схемы соответствуют нотации BPMN?
Спроектируйте ER-диаграмму для онлайн книжного магазина. Учтите, что книга может содержать несколько произведений разных авторов, произведение может быть в разных книгах, нужна возможность поиска по ключевым словам.
Что такое идемпотентность? Какие HTTP-методы идемпотентны?
Вы работали на проектах, которые используются внутри компании, то есть это внутренние проекты?
Какие были синхронные и асинхронные интеграции? В каких случаях какие применяются? В чем опасность синхронного взаимодействия?
Какие вопросы ты задашь заказчику за 1-1,5 часа перед его уходом в отпуск на 3 недели, если есть срочная фича?
Какие виды архитектуры ПО ты знаешь?
Правильно понимаю, что ты был фуллстеком в анализе — то есть не было разделения на системного и бизнес-аналитика, или было?
CREATE OR ALTER PROCEDURE dif.get_request_to_cancel_not_confirmed_delivery AS BEGIN SET NOCOUNT ON; declare @delivery_id bigint , @request_queue_id bigint , @request_id bigint , @contents varchar(max) select top 1 @delivery_id = od.delivery_id , @request_queue_id = null , @request_id = odr.request_id , @contents = cn.contents from opsapi.request rq join ops.contents cn on cn.contents_uid = rq.contents_uid join dif.ops_delivery_request odr on odr.request_id = rq.request_id join dif.ops_delivery od on od.delivery_id = odr.delivery_id where 1 = 1 and rq.state_code = 200 and rq.scheme_name = 'исх:опс.лк.отмена.слота.ффд' and od.state_code = 257 order by rq.request_id update opsapi.request set state_code = 202 , state_name = opsapi.get_state_name(202) , state_note = null , state_datetime = getdate() , updated_at = getdate() where request_id = @request_id select @request_queue_id request_queue_id, @request_id request_id, @contents contents END GO
С какими интеграциями у вас был опыт?