Skip to content

damian0o/java-interview

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

GIT

  • How do you work with git in regular basis?
  • How to resolve conflicts?
  • Commit was removed. Is it possible to revert this action?
  • What is a git cache?
  • What flows did you use to introduce new feature to production?
  • What is a difference between Merge and Rebase?

Git repositories

  • Bitbucket
  • Github
  • Gerrit

CICD

  • Jenkins/Bamboo
  • Integration Tests
  • Straight to production
  • Staging environments

Agile

  • Tell us about your experience with scrum?
  • Ceremonies in scrum and main roles
  • What is Kanaban?

Good Practices

  • Code Reviews
  • What for do we need code review?

Testing

  • Different kinds of tests?
  • How should tests proportion looks like?
  • What is TDD?
  • Are unit tests required?
  • What structure do you use for single test. (Given When Then, Arrange Act Assert)
  • How you name specific test case ? (should...)

Design

  • OOP
  • DDD
  • BDD

OOP

  • Acronyms SOLID, DRY
  • Encapsulation, Abstraction, Polimorphism, Inheritance
  • Design patterns - categories, differences, patterns composition

Java

  • Java Object Class methods
  • Hash and equals methods contracts
  • How to compare two object in Java? What should we implement or/and extend to accomplish it?
  • Generics - what is it?
  • Java annotations
  • How to intruduce Amphibious to codebase using base classes Car and Boat?
  • final keyword
  • List<? super B> VS List<? extends B> where B extends A, C extends B and D extends B

Java Memory Model

  • Stack - how can we get stackoverflow exception
  • Heap - how can we get OutOfMemory Exception
  • GC
    • differences,
    • How do different gc works?
    • What for do we need GC?
    • G1 - why is it awesome?

Testing libs

  • JUnit,
  • Mockito,
  • AssertJ,
  • Wiremock
  • Spock

Java Collections

  • List

  • Set

  • Map

    • Hash Map - O notation
  • Thread safe collections in Java

Java Concurrency

  • Semaphore
  • Monitor
  • Threads pool
  • synchronized keyword - what object will be used: when mathod is static and for regular method.
  • What is cirtical section?
  • What does that mean that operation is atomic?
  • Volatile keyword
  • Implement Singleton

Java 8

  • What features were introduced in java 8?
  • What for do we need Optional?
  • What is a keyword default in Java interface?

Java 9

  • New feaures?
  • HTTP Client
  • RxJava
  • Modularization / OSGi

Java Streams

  • filter, map, flatMap, reduce, group by, collect
  • How many times can you invoke operations on single stream?
  • Two kinds of opperations on streams.

HTTP

HTTP

  • HTTP methods
  • HTTP status codes

REST API

  • What is it?
  • How resources are stored? (Nouns Verbs)
  • What HTTP methods should be used?
  • What operations are idempotent?

Spring

  • What design pattern is most used pattern in spring framework?
  • Dependency Injection
  • AOP in spring
  • Spring annotation?
  • How do you impelement REST api in Spring?
  • Transactional annotation?
  • Components
    • Controller
    • Service
    • Repository
    • Configuration
  • Configuration
    • XML
    • Java classes

Spring Boot

  • What is a difference between spring boot and spring?
  • What for do we need Spring Boot?
  • Is it possible to use xml configuration files?
  • What is the dafault http server for Spring Boot?
  • Available http servers from the box?
  • WAR vs JAR

Spring Cloud

  • Modules of spring
  • What is circut breaker?
  • Circut breaker impelementation using semaphore and thread pools: What is the difference?

Building Dependency Tools

  • Ant,
  • Maven,
  • Gradle
  • Maven scopes

Databases

Hibernate

  • n + 1 problem
  • What is transaction?
  • Optimistic Locking vs. Pessimistic Locking

SQL

  • What databases did you use?
  • Left Righ Inner Outer Full Join

NoSQL

  • SQL vs NoSQL
  • Mongo
    • Optimistic Lock - how can be implemented?
    • How values are stored in mongo?

Redis

  • How the values are stored in redis?
  • For what we can use redis?
  • Redis vs memcache

Microservices

  • Communication channels between microservices

Queues

  • Kafka

    • How kafka works?
    • Topics Partitions
    • Multiple readers broadcasting
    • Kafka cluster
  • RabitMq

Case study

  • How will you implement newsletter functionality?

About

Java interview questions

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published