100% found this document useful (1 vote)
344 views5 pages

Interview Prepration Harish Goyal

The document provides an overview of topics related to Java programming including Core Java, Java 8 features, multi-threading, collections, Spring Framework, Hibernate, design principles, design patterns, testing, microservices and more. It includes descriptions of each topic and links to external resources for further reading.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
344 views5 pages

Interview Prepration Harish Goyal

The document provides an overview of topics related to Java programming including Core Java, Java 8 features, multi-threading, collections, Spring Framework, Hibernate, design principles, design patterns, testing, microservices and more. It includes descriptions of each topic and links to external resources for further reading.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Core Java

Java 8

 Features of Java 8 like Stream API, Lambda Expression, Default and static methods in
Interface, Changes in map.
 Java is Compiler language or interpreter Language?
 Map vs flat Map
 Why Streams are called lazily evaluated?
 Difference between Stream and collection.
 find first vs find any?
 predefine functional interface,
 stream vs parallel stream
 Aggregation and Composition
 Why string is immutable

MultiThreading

 Try with resource


 All type of thread Pool
 CompetableFuture
 Service Executor vs Service Completion Executor
 Cyclic Bearier, Count down Latch & Semaphore
 Why Sleep is static method in Thread
 Why Join and wait method as non-static
 Print first 100 values with one condition. Odd value must be print by Thread 1 and Even
Numbers must be printed by Thread2 only.
 Reentrant Lock and Read write Lock.
 Runnable vs callable
 Optimistic and Pessimistic Lock

Collections

 ArrayList vs LinkedList and How linked list works internally?


 How map internally works?
 Concurrency Hash Map
 All type of Map
 Hashmap vs hash table
 Comparator vs comparable
 create custom queue, stack and Linked List
 Queue/ Priority Queue/ Blocking Priority Queue

Spring Framework-

 Dispatcher Servlet, Request Handler and View Resolver.


 What annotations cover by @SpringBootApplication
 Put vs post vs patch
 How many Scopes of Bean
 Bean Factory vs Application Context
 How prototype bean behave when it’s being used inside singleton bean. If it is behaving like
singleton then How to make it prototype.
 @ControllerAdvice
 Singleton Bean scope vs Singleton Design pattern
 How to add customize Properties file in Spring boot
 How to change default server(tomcat) in spring boot.
 Profiling

Hibernate-

 N+1 Problem
 Orphan Removal
 All type of mapping (Programming wise and Theoretically)
 Configuration of Hibernate like datasource and dialect
 1st level and 2nd level cache

Design Principles

 SOLID (Read Liskov In Details), DRY, KISS, YAGNI principles.

Design Patterns

 https://www.journaldev.com/1827/java-design-patterns-example-tutorial#strategy-pattern
 https://www.journaldev.com/1827/java-design-patterns-example-tutorial#template-
method- pattern
 https://www.journaldev.com/1827/java-design-patterns-example-tutorial#builder-pattern
 https://www.journaldev.com/1827/java-design-patterns-example-tutorial#decorator-
pattern
 https://www.geeksforgeeks.org/singleton-design-pattern/
 https://www.geeksforgeeks.org/abstract-factory-pattern/
 https://dzone.com/articles/factory-method-vs-abstract
 http://www.codespaghetti.com/java-design-pattern-interview-questions/

Code Smells

 http://www.programmergirl.com/identifying-code-smells-java/

Code Coverage

 https://www.atlassian.com/continuous-delivery/software-testing/code-coverage

Mocking

 https://www.softwaretestinghelp.com/mockito-inteview-questions/
 https://examples.javacodegeeks.com/core-java/powermockito/powermockito-tutorial-
beginners/
 https://www.youtube.com/watch?v=8S8o46avgAw

Unit & Integration Testing

 https://www.toptal.com/java/unit-integration-junit-tests
SOLID

 https://www.geeksforgeeks.org/solid-principle-in-programming-understand-with-real-life-
examples/
 https://deviq.com/solid/

Ports and Adapters

 https://www.thinktocode.com/2018/07/19/ports-and-adapters-architecture/
 https://medium.com/@codespeaks/a-quick-and-practical-example-of-hexagonal-
architecture-
 in-java-7334e7f2ad43

Git

 https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
 https://www.freecodecamp.org/news/an-introduction-to-git-merge-and-rebase-what-they-
are-and-how-to-use-them-131b863785f/

Jenkins

 https://www.youtube.com/watch?v=7KCS70sCoK0

Sonar

 https://www.youtube.com/watch?v=BuT1Ji0P9Ug

Test Driven Development (TDD)

 https://hackernoon.com/introduction-to-test-driven-development-tdd-61a13bc92d92
 https://www.youtube.com/watch?v=y8TcPr73Bwo
 https://www.youtube.com/watch?v=s9vt6UJiHg4
 http://aspiringcraftsman.com/2012/04/01/tdd-best-practices-dont-mock-others/
 https://github.com/testdouble/contributing-tests/wiki/Don't-mock-what-you-don't-own

Behavior Driven Development (BDD) & JBehave

 https://www.youtube.com/watch?v=VS6EEUVZGLE
 https://www.toptal.com/freelance/your-boss-won-t-appreciate-tdd-try-bdd
 https://www.youtube.com/watch?v=kNieSSoynW4
 https://www.youtube.com/watch?v=eV7kBt89pWU
 https://www.youtube.com/watch?v=dmqkCS8sPL4

DDD

 https://www.youtube.com/watch?v=NNFJREcalc0

JWT

 https://auth0.com/learn/json-web-tokens/

OAuth

 https://www.youtube.com/watch?v=996OiexHze0
OWASP

 https://sectigostore.com/blog/what-is-owasp-what-are-the-owasp-top-10-vulnerabilities/

Spring Security

 https://www.youtube.com/watch?v=X80nJ5T7YpE
 https://www.youtube.com/watch?v=Dbxzw0cpxBU

Exception Handling

 https://stackify.com/best-practices-exceptions-java/
 https://www.baeldung.com/exception-handling-for-rest-with-spring
 https://www.toptal.com/java/spring-boot-rest-api-error-handling

Spring Cloud

 https://www.baeldung.com/intro-to-feign
 https://nirajsonawane.github.io/2019/03/21/Simplifying-Microservices-Communication-
 Using-Spring-Cloud-OpenFeign/
 https://www.youtube.com/watch?v=aO3W-lYnw-o
 https://www.youtube.com/watch?v=x1BR0D-
buQg&list=PLVz2XdJiJQxz3L2Onpxbel6r72IDdWrJh
 https://www.youtube.com/watch?v=rlS9eH5tEnY

Microservices

 Circuit Breaker Microservice Design Pattern


 Rate Limiter Design Pattern
 Boundary context
 bulkhead pattern
 API gateway spring cloud Design Pattern, Zull is in maintance mode so focus on Resilience 4j
 Aggregator Design Pattern
 https://cloudacademy.com/blog/microservices-architecture-challenge-advantage-
drawback/
 https://microservices.io/patterns/refactoring/strangler-application.html
 https://microservices.io/patterns/data/saga.html
 https://microservices.io/patterns/microservice-chassis.html
 https://livebook.manning.com/book/microservices-patterns/chapter-2/25

SSL/TLS/Certificates

 https://www.youtube.com/watch?v=T4Df5_cojAs

Pivotal Cloud Foundry (PCF)

 https://www.youtube.com/watch?v=IMM58syURi4
 https://www.youtube.com/watch?v=okOv450mO7U
 https://www.youtube.com/watch?v=Mo14JCWcotk

Big O notation

 https://www.baeldung.com/java-algorithm-complexity
 https://www.interviewcake.com/article/java/big-o-notation-time-and-space-complexity
Other Important Topics

 https://howtodoinjava.com/interview-questions/spring-mvc-interview-questions-with-
 answers/
 http://tutorials.jenkov.com/java-concurrency/java-memory-model.html
 http://tutorials.jenkov.com/java-concurrency/index.html
 http://tutorials.jenkov.com/java-concurrency/deadlock.html
 http://tutorials.jenkov.com/java-concurrency/deadlock-prevention.html
 https://www.baeldung.com/java-executor-service-tutorial

Reference Links-

 https://www.youtube.com/@DurgaSoftwareSolutions (Core java and Excellent in


Collections)
 https://javaconceptoftheday.com/ (Core java)
 https://www.youtube.com/@DefogTech/videos (Microservice Design Patterns and Multi-
Threading)
 https://www.youtube.com/@EricProgramming/videos (Leet Code Problem Solving)
 https://medium.com/
 https://www.javainuse.com/ (Micro service Setup like Eureka)
 https://www.scaler.com/ (Oops Design Patterns)
 https://www.digitalocean.com/ (Oops Design Patterns)
 https://www.youtube.com/@Java.Brains (Spring Boot, Hibernate and Spring Security)
 https://www.javaguides.net/p/spring-data-jpa-tutorial.html (Spring JPA)
 https://www.youtube.com/@greatlearning (AWS and Docker/ jenkins)
 https://github.com/riti2409/Resources-for-preparation-Of-Placements
 https://www.youtube.com/@codeKarle
 https://www.codekarle.com/ (System Design pattern)
 https://www.youtube.com/@CodeDecode (Interview Qus for all topics and Deep Dive in
kafka)

You might also like