Skip to content

Questions and Answers – Java / Spring Developer – List of Questions

Java:
➤ What are the data types in Java and what is their size
➤ What are the modifiers in Java and Kotlin
➤ What Java Collections do you know?
➤ What are the complexity levels for operations with collections
➤ What is a HashMap?
➤ How to sort a collection containing a complex class, Comparable and Comparable
➤ What is the difference between ArrayList and LinkedList
➤ How TreeMap works
➤ What are the naming rules in Java
➤ What are static classes in Java
➤ What is the difference between StringBuffer and StringBuilder
➤ What is reflection in Java
➤ In what situations does Memory leak occur
➤ What is Generic
➤ What methods does the Object class have in Java and Any in Kotlin
➤ What is Enum in Java
➤ What is the priority in Java when converting primitive types
➤ What is type casting / type conversion / casts
➤ What are annotations for and how to create them in Java
➤ What are Wrappers in Java
➤ What are the transition operators
➤ What is Stack and Heap in Java
➤ What is JDK, JRE and JVM
➤ What values ​​are variables initialized with by default
➤ Is it possible to narrow the access level/return type when overriding a method?
➤ What are the types of references in Java
➤ What is the difference between map and flatMap
➤ What are the types of errors in Java
➤ How does Garbage Collector work and how is memory organized in the JVM
➤ What is Java NIO (New Input/Output)
➤ What is the execution order of a Java class
➤ Can an abstract class inherit from a regular one
➤ What are the types of cycles in Java and Kotlin
➤ What is ClassLoader
➤ What is SecurityManager
➤ What is JavaCompiler
➤ How to run JavaScript from Java
➤ What is Optional in Java and Kotlin
➤ What are the bitwise operations in Java and Kotlin
➤ What is ByteBuffer and Unsafe
➤ What is lambda in Java
➤ How to download executable code from the network in Java
➤ What is AsynchronousServerSocketChannel

Kotlin:
➤ What are Inner Classes in Kotlin
➤ What are Scope Functions in Kotlin
➤ How does a coroutine work and what is suspend
➤ What is the difference between the coroutine launch method launch and async
➤ What are Delegates in Kotlin
➤ What is Extension in Kotlin
➤ What is a companion object in Kotlin
➤ How to use getters and setters in Kotlin
➤ What is the @JvmStatic annotation
➤ What is a callback, functional types and Unit in Kotlin and how is it used

Theory:
➤ What are the complexity levels of collections
➤ What are the most commonly used patterns
➤ What is the difference between inheritance and composition
➤ What is SOLID
➤ What are higher-order functions
➤ What is the difference structural, functional and object-oriented paradigms in programming
➤ What formats of data exchange with the server exist
➤ What is the syntax of a query to an SQL database

Multithreading:
➤ What are synchronized collections and how do they work
➤ What does volatile mean
➤ What does synchronized mean
➤ What problems can occur in multithreading in Java
➤ What is Lock / ReentrantLock
➤ What are Backpressure strategies
➤ What is the difference between hot and cold Observables
➤ How volatile differs from atomic
➤ What are Deferred coroutines in Kotlin
➤ What are LAZY coroutines in Kotlin
➤ What are Kotlin Channels
➤ What is Mutex, Monitor, Semaphore

➤ What layers can be in Spring
➤ How is a Spring application usually structured?
➤ Which is better, annotations or XML in Spring
➤ What is the difference between REST, RPC, GraphQL and SOAP
➤ What parts can be in a Spring application
➤ How is Spring different from Java EE
➤ What are servlets
➤ How to use the Clean Architecture approach in Spring
➤ What are Event Streaming Concepts
➤ What is Public Key Infrastructure (PKI)
➤ What is REST (Representational State Transfer)
➤ What are the parameters of a RESTful service
➤ What are Model, ModelAndView and ViewResolver?
➤ Explain the principles of Inversion of Control (IoC) and Dependency Injection (DI).
➤ What is CSRF (Cross-Site Request Forgery)
➤ What is Aspect-Oriented Programming (AOP)?
➤ How does Spring process a request and issue a response
➤ What is Project Reactor
➤ What is Mono and Flux
➤ What is Domain-Driven Design (DDD)
➤ What is Servlet
➤ What is Prometheus format
➤ What is Structured concurrency
➤ What is the Happens-Before principle (event precedence)
➤ How is WAR (Web Application Archive) different from JAR (Java Archive)
➤ What is the life cycle of beans in Spring
➤ What is CQRS (Command Query Responsibility Segregation)
➤ What is Event Sourcing
➤ What is Circuit Breaker (Chain Switch)
➤ What is JSON-RPC (Remote Procedure Call)
➤ What is Eventual Consistency (eventual consistency) consistency)
➤ What is Git Registry, GitHub Packages, GitHub Actions, Changelog, Release Notes
➤ What are the main data exchange protocols in Spring
➤ What is Protobuf
➤ What is Javadoc
➤ What is Saga Pattern
➤ What is Rollback Pattern
➤ What is the difference between Rollback Pattern and Saga Pattern
➤ What are the main differences between Maven and Gradle
➤ What does pom.xml consist of
➤ What does build.gradle consist of
➤ What is Supplier
➤ What is the difference between record in Java and data class in Kotlin
➤ What is Java JWT (JSON Web Token)
➤ What is Spring MVC
➤ How to use Lombok in Java
➤ What is Swagger / OpenAPI
➤ How to set up access via OpenVPN
➤ What is Keycloak
➤ What are Testcontainers
➤ What is the difference between Jetty, Netty and Tomcat
➤ What is Netty
➤ What is Nginx
➤ Simple web server example

➤ What parameters can be in application.properties
➤ How to use WebSocket in Spring
➤ How to use GraphQL in Spring
➤ How to use OAuth 2.0 in Spring
➤ How to set up encryption in Spring
➤ How to set up HTTPS in Spring
➤ What is Spring Boot Actuator
➤ How to set up authorization using Spring Security
➤ What is Spring Integration
➤ What is Spring Batch
➤ What is AutoConfiguration in Spring
➤ How to set up different build profiles in Spring
➤ What is Spring WebFlux
➤ What is ApplicationContext in Spring
➤ What is BeanFactory
➤ What is Spring BOM
➤ How to set up security in WebFlux
➤ An example of a microservice Spring application with an Andular frontend, database, and message broker
➤ How to set up data validation in Spring
➤ How to detect memory leaks in Spring
➤ What is RouterFunction and RequestPredicate
➤ How a Spring application can send and receive data from other APIs
➤ How RPC (Remote Procedure Calls) works
➤ How testing is done in Spring
➤ How to make a background task on a timer in Spring
➤ How to import data from CSV in Spring

➤ What are the main annotations in Spring
➤ How is @Component different from @Service
➤ How is @Component different from @Bean

➤ What is CRUD (Create, Read, Update, Delete)
➤ How to connect to databases in Spring
➤ How to use Hibernate in Spring
➤ How to use AWS / Amazon Web Services in Spring
➤ What is Spring Data JPA
➤ What is JPQL and Criteria API
➤ How to use Redis in Spring
➤ What are the transaction isolation levels
➤ What are the repositories in Spring
➤ What are the parameters of the @Transactional annotation
➤ How to handle database changes in Spring
➤ What are the transaction isolation levels
➤ What is Jenkins
➤ What is Nexus
➤ What is a Query Plan for databases
➤ How to use indexes in a Spring application database
➤ What anomalies can occur when working with a database
➤ What are the types of locking in a database
➤ Is it possible to combine several methods into one transaction
➤ What is R2DBC (Reactive Relational Database Connectivity)
➤ What is Flyway
➤ Where in a Spring application should private data be stored
➤ How can caching be used in Spring
➤ How to set up GitHub Actions Continuous Integration

➤ How can microservices interact
➤ How to use Docker in Spring
➤ How to use Docker Compose in Spring
➤ How to use Kubernetes in Spring
➤ How to use Elasticsearch in Spring
➤ How to use RabbitMQ in Spring
➤ How to use Kafka in Spring
➤ What is Eureka Service
➤ How to implement Spring Cloud Gateway
➤ How to implement redirection using Spring Cloud Gateway
➤ What is Service Discovery
➤ What is Dockerfile and Docker Compose
➤ What tools are there for monitoring microservices
➤ What is Trace ID and Span ID