- Core
- Collections
- Concurrency
- Spring
- Servlet
- Hibernate
- Git
- Maven
- Gradle
- Microservices
- JavaScript
- Linux
- Patterns
- DDD
- Architecture
- REST
- SQL
- Test
- Transactions
- RabbitMQ
- What's new in Java 8?
- What are the memory types in Java?
- What is java agent?
- Possible Performance Tools for Java?
- What is java profiler?
- What is stop the world?
- What is the difference between int, Integer and AtomicInteger?
- How i++ will work for Integer?
- What can you say about interface constants?
- What is the contract between equals and hashcode?
- What are the rules for overriding equals/hashcode methods?
- Are the same fields needed for equals/hashcode implementation?
- What are the purposes of inner classes?
- What is better interfaces or abstract classes?
- Do inner classes have access to private fields from outer class?
- What are the differences between static nested classes and non-static nested classes?
- What are the methods of Object class?
- What is Jmeter?
- Possible Ways to Capture Java Heap Dumps?
- What is the result of this code:
- Are checked exceptions bad?
- How var in Java 10 can be used?
- What is functional interface?
- Functional interfaces vs abstract classes?
- Why getters/setters?
- Serialization?
- Deserialization after changes in class? Possible issues?
- What is the difference between cohesion and coupling?
- @Override annotation?
- Java modifiers?
- Exception Hierarchy?
- One exception is thrown by catch block and another one is thrown from finally block, which exception will be thrown by method?
- Is it possible to serialize lambda expression?
- Why can Java Collections not directly store Primitives types?
- How is recursion implemented in Java?
- Is it needed to document unchecked exceptions?
- Java Date classes?
- Why Do Local Variables Used in Lambdas Have to Be Final or Effectively Final?
- orElse() vs orElseGet() in Optional?
- How to filter list of objects using Stream API without .filter()?
- What is String Pool? How do Strings get there?
- What is the difference between StringBuilder and StringBuffer?
- Difference between <? super T> and <? extends T> ?
- How does JIT compiler work?
- Mutable vs Immutable object?
- Provide some examples when a finally block won't be executed in Java?
- What is type erasure?
- What is built-in mechanism for creating singletons in Java?
- What is the complexity for get in Hashmap?
- What is the complexity for get in Hashmap for keys with hashcode = 1?
- What is the hierarchy of collections?
- What is the difference between LinkedList and ArrayList?
- What is better to use LinkedList or ArrayList?
- What is the implementation of HashMap?
- What are the implementations of Map?
- What is the complexity of removing the last element from LinkedList?
- What are the differences between Set and Map?
- What are the possible implementations of Map for concurrency?
- What is the main difference between Stream API and Collection?
- What should be avoided in parallel stream?
- Implement custom version of java.util.stream.Stream with filter/map methods
- What is forEach?
- When is it better to use foreach loop instead of Iterable.forEach()?
- What is SplitIterator?
- What is usage of wait/notify methods?
- Where wait() can be used?
- What is the keyword synchronized?
- What is the keyword volatile?
- How volatile is related to happens before?
- What are the concurrent collections?
- What is CopyOnWriteArrayList?
- What can you say about ConcurrentHashMap?
- What are the benefits of using ConcurrentHashMap over HashTable?
- What is the synchronized access?
- What is the monitor for non-static synchronized method?
- What are possible ways for synchronization threads?
- How to wait for finish of thread?
- What is the result of this code?
- Change the code for getting deadlock
- What is the Difference between Future and CompletableFuture?
- How do AtomicVariables work?
- What is the difference between Runnable and Callable?
- How make spring service thread-safe?
- What is bean?
- How bean gets into the container?
- What are the possible bean scopes?
- What is the difference @Service between @Component?
- What is the difference between @Service and @Bean
- How to call a method after bean initialization?
- What is the default scope?
- What is the prototype scope?
- What are the possible ways of Dependency Injection?
- Where better to use dependency injection via constructor? Where via setter?
- How to catch the exceptions for controllers?
- What is the difference between BeanFactory and FactoryBean?
- What is the difference Spring and Spring Boot?
- How to add own auto-configurations?
- Where can be stored the list of auto-configurations in META-INF?
- What are the possible ways of configurations in Spring?
- What is the lookup method?
- What is declarative transaction in Spring?
- What creates a proxy?
- Does @transactional method work in the case of execution in the same class?
- What is environment?
- How does auto-configuration work?
- What is the difference between @Resource and @Autowired annotations?
- What is the feature in Spring Boot for setting up the dependencies?
- Where does Spring Boot application begin?
- What is the difference between @Controller and @RestController annotations?
- Does @Qualifier annotation can work only with bean name from @Component annotation?
- Is it required to put @Repository annotation in the case of extending JpaRepository?
- How ResponseEntity can be used?
- Does entity from @Transactional method can be updated without executing save method?
- Is it possible to have only one transaction in the case of executing several @Transactional methods?
- Anti-patterns of bean validation?
- Is it good practice to define interface for Spring bean?
- How does @Transactional annotation work?
- How to use @NamedEntityGraph with Spring Data JPA?
- What is servlet?
- What is difference between parameters and attributes?
- What is the life cycle of servlet?
- What is the servlet mapping?
- What is detached entity?
- What is the use of flush?
- What are the cache levels?
- What is the first-level cache?
- Hibernate inheritance?
- Common hibernate mistakes?
- Hibernate best practice?
- How to Define and Use a @NamedEntityGraph?
- Possible issues with defining equals/hashcode on JPA entities?
- How lazy loading works in hibernate?
- Optimal queries in Hibernate?
- Possible enum mapping solutions?
- In which cases LazyInitializationException can occur?
- There are three SQL statements in one transaction, during the first one exception occurred on DB level, what will happen with others if you catch the first one?
- What is the difference between merge and rebase?
- What is git reset?
- What is the difference between soft reset and hard reset?
- How to combine multiple commits into one prior to push?
- What is the difference between Maven and Gradle?
- How will work Maven in the case of multiple version of the same dependency?
- What is the dependency management in Maven?
- Does maven support inheritance for pom files?
- What are the possible ways for communication between microservices?
- What is exchange in message queue?
- What are the benefits of microservices?
- What are the disadvantages of microservices?
- What are the possible issues in microservices
- What are the possible solutions for the case when one service is not available?
- What is the difference between synchronous and asynchronous communication?
- What are possible ways for implementing authentication in microservices?
- What is Eventual consistency?
- How different types of communication can influence on performance?
- What are possible strategies and issues in microservices deployment?
- What are possible variable scopes?
- What is bind? call & apply?
- What is losing of context in js?
- Is Javascript single threaded?
- What is closure in js?
- How to check if element exists in html?
- 2 functions with the same name but with different number of parameters. Can be the issues in this case?
- Which architectural patterns you know?
- What does it mean single responsibility?
- What is the difference between facade and proxy/gateway?
- What can we do in the case of constructor with big number of parameters?
- How can be implemented builder?
- What is pattern Visitor?
- What is the issue can be solved by visitor?
- What can you say about pattern observer?
- How to initialize object depends on type?
- Why Dependency Injection is needed?
- Should services always return dtos?
- The difference between adapter and decorator?
- What is DDD?
- Why DDD is needed?
- What is aggregate in DDD?
- What is anemic domain model?
- What is the correct way for having relations between aggregates?
- How to update several aggregates during one transaction?
- What is event storming?
- How domain events are related to eventual consistency?
- What is the difference between domain events and event sourcing?
- What is CQRS?
- What is the best practice for validation in DDD?
- What is the best practice for Value Object?
- Possible issues with using domain model with public getters/setters and empty constructor?
- How to work with large domain models? Is it correct to have a lot of fields in domain model?
- How should be published integration events? Inside or outside transaction?
- How to define the reference between aggregates?
- Where to put validation rule for value object?
- Possible integration ways between modules?
- What are the differences between monolith and microservices? (Performance/Deployability/Failure impact and etc)
- Imperative vs functional vs reactive programming?
- What is Serverless
- What is the difference between native code, machine code and assembly code?
- What is the difference between sharding and partitioning for databases?
- What is rest architecture? What are the requirements?
- Is there state in rest architecture?
- Can be used query params in rest architecture?
- What is the difference get and post?
- What is the difference between soap and rest?
- Is it correct to update something during get request?
- Is it possible to use body in get requests?
- What are possible types of requests for http protocol?
- Why method options is needed?
- What is the difference between put and post?
- What can be used as rest client?
- How http protocol work?
- What are the possible solutions in the case of big number of parameters for search method?
- What should be the response in the case of DELETE request?
- What is the best solution for representing Enum in API?
- What is the best practice for getting Unique Resource From Sub-Collection?
- How search in sub-collections can be implemented?
- What is the best practice for nested resources?
- Fine Grained CRUD Resources vs. Coarse Grained Resources?
- Best guidelines?
- Best practice for PATCH?
- Do sessions violate REST?
- When to use GraphQL?
- What is ElasticSearch?
- What are the possible ways of versioning?
- What is having in sql?
- What are the possible issues with indexes?
- Sql works very slowly, what are the possible improvements (the database is MySQL, for example)?
- NoSQL vs SQL Databases
- OLAP vs OLTP Databases
- What is the difference between integration and unit tests?
- Unit test executes code from 2 classes, is it correct? Is it unit or integration test?
- What can be used for unit tests?
- What is better to use randomized or hardcode data for unit tests?
- Is it possible to test the architecture of application?
- Does TDD include integration tests?
- Is it good practice to check in tests that non-state-changing methods were called?
- The differences between Spy and Mock in Mockito?
- Is it good practice to use in-memory db for tests?
- Mockito: doReturn vs thenReturn?
- How to mock third party service?
- What is transaction?
- What are the requirements for transactions?
- What is a distributed transaction?
- What are isolation levels?
- What are the possible issues in the case of parallel access by transactions?
- What are possible options for implementing transactions in microservices
- What is the difference between optimistic and pessimistic locking?
- Is it possible to use transaction for select statements?
- What locks are made in the case of using Repeatable Read isolation level?