Sobes.tech

Сіздің идеалды командаңыз қандай? Аналитиктерге қандай талаптар қойылады?

184

Соңғы жобадағы күрделі қателік немесе қиын жетілдіру туралы айта аласыз ба?

182

Сіз баяу SQL сұрауларын қалай оңтайландыңыз? Hibernate-те N+1 мәселесін қалай шештіңіз?

165

Қандай ORM қолдандыңыздар? Қашан Hibernate, қашан JDBC? Liquibase/Flyway қолдандыңыздар ма?

163

Неге Cassandra таңдадыңыз? Қандай баламаларды қарастырдыңыз? Қалай тексердіңіз?

161

Өз тәжірибеңіз бен соңғы жобаңыз туралы айта аласыз ба?

151

Қандай мониторинг, логтеу және метрикалар құралдарын қолдандыңыз? Микросервистерде қандай тәсіл?

146

Kafka-мен қалай жұмыс жасадыңыз? Партияларды немесе конфигурацияларды баптадыңыз ба? Тұтынушылар саны партиялардан аз болса, не болады?

140

Cassandra-дағы hotspot мәселесі туралы айтып беріңіз және оны қалай шештіңіз.

129

Өзіңіз үшін ең маңызды жоба қандай және неге?

128

Әртүрлі контурларда мониторингке қол жеткізу болды ма? Жариялау процесі қалай өтті?

127

Соңғы жобада сіз қандай архитектуралық шешімдерге әсер ете алдыңыз?

126

Міндеттеме сипаттамасы: Белгілі бір клиентке тиесілі және төленген сақтандыру полистерінің тізімін алу үшін 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(); }

109