Java
Vertel in detail over event-driven interactie tussen services met behulp van Kafka.
Is de implementatie van een idempotente gebeurtenisverwerking een prestatie voor een senior of is het iets dat van hem wordt verwacht?
Aan welke projecten en met welke producten hebt u gewerkt bij [bedrijf]?
Vertel ons over multithreaded programmeren in Java: wat heb je gebruikt?
Kunnen de tests verbeterd worden, bijvoorbeeld door de hoeveelheid code te verminderen?
Hoe hebben ze het team samengevoegd?
class User { String name; public int hashCode() { return name.hashCode(); } public boolean equals(Object o) { return o instanceof User u && name.equals(u.name); } } Map<User, String> map = new HashMap<>(); User u = new User(); u.name = "Bob"; map.put(u, "ontwikkelaar"); u.name = "Alice"; System.out.println(map.get(u));
10 verwerkingsapplicaties halen taken uit de database. Hoe voorkom je dat twee exemplaren dezelfde taak oppakken?
Wat was synchroon en wat is veranderd? Welke van de twee gevallen (volgens schema of door statuswijziging) was synchroon?
Wat zoek je in een team en een product? Wat zijn je criteria bij het kiezen van een werkplek?
Wat is het N+1 probleem in JPA/Hibernate? Hoe is het opgelost?
@PutMapping("/create") public Book create(@RequestBody CreateBook request) throws Exception { System.out.println("Controleer of het boek bestaat " + map); Book book = new ObjectMapper().convertValue(map, Book.class); Book b = repo.findByTitle(book.getTitle()); if (b != null) { throw new Exception("Boek bestaat al"); } book.setId(UUID.randomUUID().toString()); repo.save(book); log.debug("Boek {} door {} is gemaakt met id {}", book.getTitle(), book.getAuthor(), book.getId()); return book; } @GetMapping("/get") public Book get(@QueryParam("id") String id) { log.debug("Haal boek op " + id); return repo.findAll().stream() .filter(b -> b.getId().equals(id)) .findFirst().get(); } @GetMapping("/{id}") public Book get(@RequestParam("id") String id) { log.debug("Haal boek op ", id); return repo.findById(id).orElseThrow(() -> new BookAlreadyExeption("boek niet gevonden")) findAll().stream() .filter(b -> b.getId().equals(id)) .findFirst().get(); }
SELECT naam FROM person JOIN payment ON person.id = payment.person_id GROUP BY person.id HAVING SUM(payment_value) > 100;
Wat is het belangrijkste probleem van deze implementatie? - Er wordt geen gebruik gemaakt van geheugencache voor optimalisatie. - Verschillende typen gegevensopslag in één hash - Het controleren van de schakelaar voordat gegevens worden gelezen, levert geen resultaten op - Ontbreken van standaardserialisatoren in `RedisTemplate` - Pipelines worden niet gebruikt voor gedeeltelijke operaties
Code taak: Spring @Transactional en zelf-aanroep (screenshot met code)
Welke collectie gebruiken voor de resultaten tabel met sortering op achternaam en zoeken op sleutel?
Hoe combineert REST met het opslaan van gebruikersgegevens (bijvoorbeeld in een online winkel)?
Vertel over je ontwikkelervaring en in welke richting je wilt groeien.
Vertel over concrete resultaten en prestaties in cijfers.
Heeft u ooit de NOT IN-voorwaarde moeten optimaliseren? Hoe slecht is dat en hoe optimaliseert u dat?