0% found this document useful (0 votes)
54 views

Must Have: Java SE

The document provides a list of topics and technologies that could be covered in a technical interview for a Java/Spring backend developer role. It includes essential skills like Java SE, Spring, SQL, and web services. Other important but optional topics are listed under "Nice to have" like Java EE, Docker, NoSQL databases. The document also provides links to external resources for questions on each individual topic. It concludes with suggestions for improving a technical assessment, such as generating a progressive test from junior to senior levels.

Uploaded by

rfixerr
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views

Must Have: Java SE

The document provides a list of topics and technologies that could be covered in a technical interview for a Java/Spring backend developer role. It includes essential skills like Java SE, Spring, SQL, and web services. Other important but optional topics are listed under "Nice to have" like Java EE, Docker, NoSQL databases. The document also provides links to external resources for questions on each individual topic. It concludes with suggestions for improving a technical assessment, such as generating a progressive test from junior to senior levels.

Uploaded by

rfixerr
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

 Must have

 Java SE
 Spring
 Web Services
 REST
 Soap
 SQL
 Nice to have
 Java EE
 Kubernets
 Docker
 NoSQL
 Transactions
 Java Script Framework
 Ansible
 GO
 Jenkins
 Distributed Systems
 Testing
 Logging
 Maven
 Software Architecture
 SOA and Microservices
 Live Coding
 Code Snippets
 Some open questions
 Sugestii aplicatie

Must have
Java SE

1. General Questions about Java http://snowdream.github.io/115-Java-Interview-Questions-and-


Answers/115-Java-Interview-Questions-and-Answers/en/general.html
2. OOP principles (encapsulation, inheritance, polymorphism): what they mean, what is best practice,
when to use one in favor of the other. http://snowdream.github.io/115-Java-Interview-Questions-and-
Answers/115-Java-Interview-Questions-and-Answers/en/oop.html
3. Collections: main types and differences, what ordered and sorted means, how elements can be
compared(comparable vs comparator), how equals and hashCode are used inside collections.
Concrete classes can be given for comparison (ex: simple comparison: Vector vs ArrayList or more
complex comparison:TreeSet vs HashSet ) http://snowdream.github.io/115-Java-Interview-
Questions-and-Answers/115-Java-Interview-Questions-and-Answers/en/collections.html
4. Design Patterns: basic patterns (ex: singleton, factory,iterator) and more complex (ex: proxy,
observer, abstract factory); https://github.com/arialdomartini/Back-End-Developer-Interview-
Questions#patterns
5. Exception handling :difference between Throwable, Error, Exception, RuntimeException,
checked exceptions (maybe give concrete classes and ask the candidate to place them in one
category or the other); Best practices in using try, catch, finally. http://snowdream.github.io/115-
Java-Interview-Questions-and-Answers/115-Java-Interview-Questions-and-
Answers/en/exception.html
6. Memory model :Stack vs Heap - what is kept where. What is shared between threads.
7. Garbage Collector http://snowdream.github.io/115-Java-Interview-Questions-and-Answers/115-
Java-Interview-Questions-and-Answers/en/collectors.html
8. Class loaders: what they are, hierarchy, how classes are loaded(static vs dynamic). Reflection
mechanism: what is it, why use it and what are the drawbacks.
9. Abstract classes vs Interfaces. Nested classes: types, differences. Functional interfaces;
10. Generics: why are they useful, subtyping and wildcards.
11. Other concepts: static vs instance variables/methods/classes; differences between final, finally,
finalize;
12. Streams: sources, intermediate operations, terminal operations. Lambda build in
functions(consumer, predicate, function, supplier)
13. Threads
http://snowdream.github.io/115-Java-Interview-Questions-and-Answers/115-Java-Interview-
Questions-and-Answers/en/threads.html
https://github.com/arialdomartini/Back-End-Developer-Interview-Questions#concurrency
https://github.com/indy256/Full-stack-Developer-Interview-Questions-and-Answers#concurrency

Spring

1. Sprint basics https://github.com/in28minutes/spring-interview-guide


2. What is it. Why use spring.
3. What is dependency injection;
4. Bean types;
5. Bean injection types. Why we should choose on or the other.
6. Bean lifecycle;
7. Sprint Boot https://github.com/in28minutes/spring-interview-guide
8. Database Connectivity - JDBC, Spring JDBC & JPA https://github.com/in28minutes/spring-interview-
guide

Web Services
REST
https://github.com/in28minutes/spring-interview-guide

Soap
https://github.com/in28minutes/spring-interview-guide

SQL
https://github.com/indy256/Full-stack-Developer-Interview-Questions-and-Answers#sql

Nice to have
Java EE
Kubernets
Docker
NoSQL
https://github.com/arialdomartini/Back-End-Developer-Interview-Questions#nosql
https://github.com/indy256/Full-stack-Developer-Interview-Questions-and-Answers#nosql
Cassandra

Transactions
https://github.com/indy256/Full-stack-Developer-Interview-Questions-and-Answers#transcations

Java Script Framework


Ansible
GO
Jenkins
Distributed Systems
Scalability
Load Balancing
Cloud Computing
https://github.com/arialdomartini/Back-End-Developer-Interview-Questions#distributed
https://github.com/indy256/Full-stack-Developer-Interview-Questions-and-Answers#scalability

Testing
What are TU and TI. What is the difference. What should one or the other test. How tests should be
structured.
https://github.com/indy256/Full-stack-Developer-Interview-Questions-and-Answers#qa

Logging
What is a logging framework. Why one should be used.

Maven
why use it.

Software Architecture
https://github.com/arialdomartini/Back-End-Developer-Interview-Questions#architecture
https://github.com/indy256/Full-stack-Developer-Interview-Questions-and-Answers#architecture
SOA and Microservices
https://github.com/arialdomartini/Back-End-Developer-Interview-Questions#soa

Live Coding
https://github.com/arialdomartini/Back-End-Developer-Interview-Questions#algorithms
https://github.com/indy256/Full-stack-Developer-Interview-Questions-and-Answers#codewriting

Code Snippets
https://github.com/arialdomartini/Back-End-Developer-Interview-Questions#snippets

Some open questions


https://github.com/arialdomartini/Back-End-Developer-Interview-Questions#open

Sugestii aplicatie
Crearea testului

 Generare numar egal de intrebari din toate categoriile dar cu ponderi diferite in calculul punctajului
total in functie de complexitate.
 Generare intrebari progresiv de la junior catre senior. In functie de raspuns(corect/gresit) urmatoarea
intrebare sau set de intrebari vor fi cu o dificultate crescuta sau scazuta
 Alegerea dificultatii testului de catre candidat la inceput dar cu categorii fixe sau alese de noi si
posibilitatea de a face switch daca i se pare prea usor/greu.

Definirea intrebarilor/display

 Includere exercitiu coding pe langa testul grila.


 La tipul de raspuns se pote aborda o alta strategie: in enuntul intrebarii se adauga si numarul de
raspunsuri corecte : ce technologii web sunt dezvoltate in java ee alegeti urmatoarele 3 raspunsuri.
 Un timp ok pe intrebare este de 1,5 ~2 minute.In testul final trebuie sa se vada si in cat timp a facut
testul normal o persoana care cunoaste o technologie foarte bine raspunde in 40-60
secunde/intrebare.
 Marcare tip intrebare, ex: daca este de evaluare cod sau teoretica(sau alt tip pe viitor pentru a ne
ajuta in generarea testului)

Interpretarea rezultatului
Punctare raspuns partial la intrebarile cu mai multe raspunsuri corecte nu doar daca raspunde cu
toate variantele corecte.

Imbunatatiri propuse
 Crearea de profile cu intrebari predefinite: JavaWeb developer, SQL developer, WEB Frontend
developer, etc.
 Intrebarile trebuie sa fie scris mare, in pagina : sectiunea de intrebare boldita si mare cea de
raspuns normal text normal. O persoana pe parcursul testului nu trebuie sa se plictiseasca. Ai o
aplicatica care te ajuta sa salvezi o singura inregistrare sa vezi o singura inregistrare sau un Excel
file in care faci un input plictisitor. Pshiologic daca apasa butoane si are o schimbare de décor se
simte antrenat si ca are progress prin butonul de next simte si faptul ca a avut un progress… a trecut
la un pas urmator (si la teste sunt aplicate teori din jocuri … gen recompense … gen pedepse …… )

Format intrebari:
Intrebare teoretica sau evaluarea unei bucati de cod cu 4 variante de raspuns si unul sau mai multe
raspunsuri corecte.

Exemplu 1:
Which collection class allows you to associate its elements with key values, and allows you to
retrieve objects in FIFO (first-in, first-out) sequence?
Raspunsuri posibile:
a) java.util.ArrayList
b) java.util.LinkedHashMap
c) java.util.HashMap
d) java.util.TreeMap
Raspunsuri corecte: b

Exmplu 2:
public class MyClass {
static int i;
public static void main(String argv[]) {
System.out.println(i);
}
}
Raspunsuri posibile:
a) Error Variable i may not have been initialized
b) null
c) 1
d) 0
Raspunsuri corecte: d

You might also like