What are optimistic and pessimistic locks in JPA/Hibernate? How are they implemented under the hood? When should each be used?
Java
Why is constructor injection considered the recommended method?
How correct is it to use a mutable object as a key in HashMap? What requirements must be followed?
What is the difference between Kafka and RabbitMQ? Are both synchronous or asynchronous?
Have you used Git from an IDE or sometimes worked with the command line?
Have you dynamically changed partitions? Explain the dependency on load.
Can there be a situation where we put an element into a HashMap by an object key, but then cannot retrieve it using the same object?
Write Git commands to add a file and commit on a remote machine accessible only via SSH.
What is the @Transactional annotation and how does it work under the hood?
If an HTTP call or Kafka send occurs in a transactional method, followed by a database change, what is the potential problem?
What attributes from Kafka can a consumer read from a message, besides the body itself?
What approaches are there to handle unstable integration that may not respond from a minute to a day?
What will happen if there are two partitions and three consumers in one group? And if there are three partitions and two consumers?
What would you choose — JDBC Template or ORM, and why?
What tasks do you want to solve at your new job?
What do you pay attention to during a code review?
If there are 100 consumers in one consumer group with 10 partitions — how will it work?
Describe the business process and technical flow in the accrual calculation service.
If you applied LEFT JOIN, what would change?
How do you assess your level — junior, mid, senior?