What is DDD (Domain-Driven Design)? How is it related to aggregate and bounded context?
Java
Tell us about JVM memory: what does it consist of and how is it cleaned?
How is the internal structure of LinkedHashMap organized? What is an element of the doubly linked list?
What are Saga and Outbox patterns?
How many people were in the team?
What kind of events, from a business process perspective, fall into retry chains and DLT?
Tell about your current project at [company] — what are you doing?
Are you familiar with reactive systems and the principles of reactive programming?
-- There are tables with the structure Employee id (PK) name salary dep_id(FK department.id) Department id (PK) name -- write a query that returns a list of all department names with the maximum salary in each department select d.name, COALESCE(MAX(e.salary), 0) from Department d left join Employee e on e.dep_id = d.id group by d.name
If you didn't make it on time — what did you do?
What types of relationships in Hibernate do you know and how to describe them? What entity states exist?
What is the purpose of the volatile keyword?
Within what timeframe will you be able to join the project: in two weeks, earlier, or later?
What tool to use for load testing a microservice?
/** * == ФТ == * Сервис обработки заказа получает заказ для обработки через Rest API. * Обработка в следующем: * - Проверить наличие товара на складе (вызывается внешний сервис по REST/HTTP). Если товара нет, то обработка заказа прекращается. * - Сохранить заказ в БД заказов * - Запустить дальнейшую обработку заказа (Processing, вызывается внешний сервис по REST/HTTP) * - Инициировать уведомления о новом заказе (Notification, вызывается внешний сервис по REST/HTTP) * * == НОТ == * - обработка должна быть такой, что если сохранить в БД заказ не удалось, то запускать заказ в обработку (processing) и инициировать уведомление (notification) не надо * - использовать для корреляции логов идентификатор заказа * - поддержать метрики 1) количество принятых заказов 2) количество успешно обработанных заказов * - сервис должен обрабатывать до 100 заказов в секунду */ const MaxItems = 9999 // ... (остальной код не переводится)
Is Moscow or another location relevant for you?
Was the status model common to the entire system or only within a certain number of services?
What types of indexes are there?
How is the duplicate check implemented technically — as a separate verification process before insertion or something else?
producer 1 consumer 2 partition 3 topic 1