Java Interview PrepNotes

Java Interview PrepNotes

Here is a consolidated list of topics to prepare for a Java interview:

Experience: 5-9 years

Main topics to look upon:

  1. Basics - JRE, JDK, JVM, Memory management, Class loaders, Object Class, String, String buffer, String builders, Mutable, Immutable, OOPS, Abstraction vs Interface, Exception handling(types), Serializations.

    Link: https://www.digitalocean.com/community/tutorials/core-java-interview-questions-and-answers

  2. Basic Problems to practise.

    Link: https://www.javatpoint.com/java-programs

  3. Collections : different type of collections and its implementations(imp: LinkedList, ArrayList, HashMap)

    Link: https://www.javatpoint.com/collections-in-java

  4. Know how of new Java versions and the related main features(Java 8, Java 11, Java 17).

  5. Practise Functional programming, SAM Interfaces, Streams etc

  6. Concurrency: Traditional threading, executors, Future, Promise, Publisher, Consumers, Runnable vs Callable, deadlock, synchronization. Familiarize yourself with code samples and examples of these respective classes.

    Link: https://www.digitalocean.com/community/tutorials/java-multithreading-concurrency-interview-questions-answers

  7. Design Patterns at least Singleton, factory design pattern, go through the samples of the respective classes.

  8. Connections, Protocols, Security layers and terminologies(Socket, Session, handshake, HTTP, HTTPs, TCP, FTP, SFTP, FTPS, TTL, SSH, SSL) and the respective implementations. Familiarize yourself with code samples and examples of these respective classes.

  9. Spring basics : Principles(DI, IoC ,Components, Beans, type of configurations) , Scope of the beans,Different annotations(@Autowired, @Transactional etc), Exception Handling

  10. SpringBoot: Spring vs SpringBoot, Starter, Actuator, profiles, application.properties, application.yml, different REST annotations.

  11. ORM framework: Hibernate(Mapping, Annotations, Methods). Familiarize yourself with code samples and examples of these respective classes.

  12. REST API: Definition, uses, SOAP vs REST, HTTP methods, status codes, Authentication vs Authorization, Headers, Versioning, Caching, Postman testing and related annotations.

  13. Messaging Queues: Apache Kafka(queuing, event generation, topics, broker, publishers, consumers) go through the samples of the respective classes.

  14. Microservices: Definition, Monolithic vs Microservice, Principles of Microservices, modes of communications between different services, Traffic tracking, health check, Monitoring, Splunking etc

  15. Hosting, Containerization and Orchestration(Docker and Kubernetes basics)

  16. Unit testing: Junits, Mockito, different classes and the method usages.

  17. Git Commands

Note:

  1. Based on my frequent interview experiences, the above points cover the most frequently asked questions. There may be minor variations, but these are the common FAQs in most companies.

  2. The above pointers do not include SQL and database-related topics.