Core Java:
1. oops
2. static keyword
3. Abstraction vs Interfaces and types of interfaces(Marker, Functional...)
4. is abstraction really needed. After java8 Interfaces also has abstarct and non abstract methods. so
we can achieve everything with interfaces. so my question is IS ABSTRACTION REALLY NEEDED.
5. Java memory Management and Garbage collection.
6. what will happen if the unused objects are not garbage collected.
7. Singleton class(learn till thread safe singleton class)
8. Immutable class(if the class has attributes of reference type, how would you handle them).
9. class Loaders
10. coupling vs cohesion
11. Association(Aggregation vs Composition)
12. stringBuilder vs String Buffer and more on strings like {[== vs .equals()], [String literals vs new
String()] etc....}
13. Inner Classes and Anonymous classes ....not so important
Collections:
1. what is collections framework
2. Collections hierarchy
3. Array vs ArrayList vs Linked List(say more about memory efficiency). which one is preferred.
4. List vs Set
5. HashMap, HashTable, concurrent HashMap, synchronized HashMap
6. Internal working of Hashmap
7. Iterator vs List Iterator
8. Comparator vs Comparable
9. Java 8 features
10. Functional Interface, Lambda Expression, Streams, Optional class, Method references,
DateTimeAPI
11. Types of FIs( consumer, supplier, predicate, function)
12. Types of streams(Intermediate operations, terminal operations)
13. problems on streams.
14. first 10 numbers of fibonacci series using streams
15. Filter odd and even numbers in a single line ------ Map<Boolean, List<Integer>> partitioned =
[Link]().collect([Link](n -> n % 2 == 0)); ----------
[Link] more problems on streams.
Exception Handling:
1. error vs exception
2. Types of exceptions with examples for each type
3. throw vs throws
4. final, finally, finalize
5. exceptions ordering from specific to generic
6. tryWith resources
7. can try block exist without catch block.(more on this type of questions)
8. Handling exceptions with framework like Springboot etc..(ex. @ExceptionHandler,
@ControllerAdvice etc..)
MultiThreading:
1. Thread vs Process
2. MultiTasking vs MutliProcessing vs MultiThreading
3. Thread LifeCycle
4. ways to create a thread
5. Daemon Thread
6. Race condtion and Avoiding techniques
7. Syncronization
8. Synchronized vs volatile
9. Atomic variables, Volatile, Transient
10. Serialization and Deserialization
11. Deadlock and its avoiding techniques
12. Reentrant Lock
13. Read write Lock
14. wait vs sleep
15. ThreadPooling
16. Executor Framework for efficient handling of thread pools
17. Runnable vs callable
18. Thread Communication Methods
19. submit() vs execute()
Spring/SpringBoot:
1. advantages of springboot over spring(embedded server, AutoConfiguration etc..)
2. what is Actuator in springboot(health check, Monitoring, Metrics collection, Tracing etc....)
3. [Link] vs [Link]
4. @SpringBootApplication(combination of three annotations, learn about those three)****** very
important
5. Bean Life cycle
6. Scopes of Bean
7. @PostConstruct, @PreDestroy,
8. Dependecy Injection, IOC, types of Dependency Injection.
9. types of IOC container
10. Bean Injection techniques (like usinh configuration file, XML based configurations etc...)
10. @Component vs (@Service, @Controller, @Repository)
11. @controller vs @RestController
12. @Qualifier, @Primary, @Value
13. @pathVariable vs @RequestParam
13. @Transactional ****** very important question
13. Aspect oriented programming(@Aspect, pointcut, joint, Advice), (@After, @Before, @Around)
[refer to the youtube channel ["codeSnippet"]
14. where do you use the OOPS concepts in your application(better to be prepared upfront, difficult
to recollect during the interview)
15. JAR vs WAR
16. mvn clean install
17. mvn build
18. how do you deploy the application
19. springBatch,
20. caching(annotation used when implementing caching @Enablecaching, @Cachable, @CacheEvict
etc....)
21. Scheduling {refer to the "code snippet" channel for spring boot}
22. Spring security
23. More on Spring security like JWT, OAuth2.0
24. Authentication vs Authorization
25. what is OKTA framework(one stop solution for Authentication and Authorization).
26. Logging levels(TRACE->DEBUG->INFO->WARN->Error->FATAL)
Some Random Generic Questions:
REST vs SOAP
HTTP vs HTTPS
SSL,TSL etc..
Local storage vs Session Storage
HTTP status codes
How do you make a database connection in a springboot application
what is ORM
JPA
Hibernate vs JDBC(importance of Hibernate)
@Entity, @Table, @Id, etc.. annotations
relationShips between entities like @OneToOne, @OneToMany, @ManyToOne, @ManyToMany,
passing parameters along with annotations
Microservices
1. Monolithic vs Microservices
2. Service discovery, Service Registry(Netflix eureka etc....)
3. Microservices communications(Synchronous vs Asynchronous), Distributed Transactions.,
4. RestTemplate, OpenFeign (webClients)
5. Spring cloud basics
6. API gateway ****** very important
7. Circuit breaking, Fault tolerance(resilience4j etc...)
8. Saga Design Pattern
8. Load balancing(Netflix ribbon etc....)
...(just know what is what)--not important, depends on luck
9. More on Design patterns like Strangler DP, Sidecar DP, CQRS dp etc
10. publish-subscribe messaging AND point to point messaging.
11. Kafka Architecture
12. just learn basic concepts of Kafka like publisher, Kafka server, subscriber, topics Partitions, offsets,
Zookeeper, Consumer Groups, Leader election, replicas, In sync replicas.......