Koks yra jūsų idealus komanda? Kokie yra reikalavimai analitikams?
Java
Papaskinkite apie sudėtingą klaidą ar sudėtingą patobulinimą jūsų paskutiniame projekte
Kaip optimizavo lėtas SQL užklausas? Kaip sprendėte N+1 problemą Hibernate?
Kokius ORM naudojote? Kada Hibernate, kada JDBC? Ar buvo Liquibase/Flyway?
Kodėl pasirinkote Cassandra? Kokias alternatyvas svarstėte? Kaip jas patikrinote?
Papaskinkite apie savo patirtį ir paskutinį projektą
Kokius stebėjimo, žurnalo ir metrikos įrankius naudojote? Koks požiūris mikroservisuose?
Kaip dirbote su Kafka? Reikėjo koreguoti partijas, konfigūracijas? Kas nutiks, jei vartotojai bus mažiau nei partijos?
Kuris projektas jums atrodo svarbiausias ir kodėl?
Į ką galėjote paveikti savo paskutinio projekto architektūrinius sprendimus?
Papaskinkite apie hotspot problemą Cassandra ir kaip ją išsprendėte
Ar buvo prieiga prie stebėjimo skirtinguose kontūruose? Kaip vyko leidimo procesas?
Užduoties aprašymas: Reikia įgyvendinti REST galinį tašką, kuris leis gauti konkretaus kliento priklausančių ir apmokėtų draudimo polisų sąrašą. Kadangi sistemoje yra labai daug polisų, būtina numatyti parametrą rezultatui apriboti. @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(); }