Java
Имали ли сте опит с нестандартен клас WeakReference (или подобен)?
Колко съобщения бяха обработени в секунда?
Имали ли сте някога нужда да използвате spring-boot-starter или да напишете свои собствени компоненти?
Какво ще се случи, ако в един клас няколко полета бъдат обозначени с модификатора volatile?
Опит с Project Reactor, WebFlux, WebClient?
Кои са системите Mission Critical и какви ограничения налагат?
Защо разглеждате предложения за работа? Какво не ви харесва на текущото ви място?
Какъв е основният проблем на тази реализация? Липсва разделяне на групата на потребителите Планирано време за изчакване в анкетата Има интеграция със системата Dipti Некоректна политика за съхранение на съобщения Липсва настройка за филтриране на съобщения в конфигурацията на фабриката за слушатели Липсват отделни партиди
Има 3 същности: потребител, чат, съобщение - Потребителят има име и дата на регистрация - Чатът има име и дата на създаване - Съобщението има текст, автор и дата на създаване - Потребителят може да участва в няколко чата едновременно - Съобщението задължително принадлежи към чат, и не може да принадлежи на повече от един чат едновременно - Трябва да се опише предметната област под формата на таблици
Как се бориха с deadlock при песимистично блокиране?
Използвали ли сте някога анотацията @Transactional в Hibernate? Разкажете ми за работата с транзакции.
С кои NoSQL бази данни сте работили?
Колко беше RPS на върха? Колко бяха записани?
Каква е разликата между Kafka и RabbitMQ?
Как е устроена HashMap вътрешно и как работи?
Как да определите кой таймаут да зададете?
Описание на задачата: Необходимо е да се реализира REST endpoint за получаване на списък с полици за застраховка, които принадлежат на даден клиент и са платени. Тъй като в системата съществува много голям брой полици, трябва да се предвиди параметър за ограничаване на резултата. @RestController public class ClientController { @Value("policy.limit") private int policyLimit; @Autowired private PolicyService policyService; @RequestMapping(path = "client/{clientId}/policies", method = RequestMethod.POST) public Response getClientPolicies(@PathVariable("clientId") String clientId) { List<PolicyDTO> policies = getPolicies().stream() .limit(policyLimit) .filter(p -> p.getClientIds().contains(clientId)) .filter(p -> p.isPaid()) .toList(); return new Response(policies); } @Transactional private List<PolicyDTO> getPolicies() { return policyService.getPolicies(); } @Data @AllArgsConstructor public class Response { private List<PolicyDTO> policies; } @Data public class PolicyDTO { private String id; private String name; private List<String> clientId; private Boolean isPaid; } @RequiredArgsConstructor @Component public class PolicyService { private PolicyDbRepository repository; List<PolicyDTO> getPolicies() { return repository.getPolicies(); } } public interface PolicyDbRepository { List<PolicyDTO> getPolicies(); }
Какво е патърнът Singleton?
[име] попита: Работихте ли там по трудов договор?
Има ли корекции на събитията? Например, начислили 10 рубли, а трябваше да са 9. Какво да правите?