Ukraine Flag We stand with Ukraine! Learn More

List of technical Java and JS interview questions: What do you need to know at the Trainee level?

Finding your first job or internship in IT is an experience you need to be prepared for. Therefore, let’s consider the topics that will undoubtedly come in handy when preparing for the first interviews.

The main pool of questions consists, after all, of the database and what the candidate added to the resume, and the conversation as a whole is built around the following topics:

  1. Java Core
    • What are access modifiers in Java?
    • What access modifiers can be used for a class in Java?
    • Keyword Final. Why is it used and what can it be used for?*
    • What is OOP and what are its main principles? (also need to give examples)
    • What are Abstract class and Interface? What are their differences?
    • What is Overloading, Overriding? What are their differences?
    • String, StringBuilder, StringBuffer – what are their differences?
  1. Exceptions:
    • Basic hierarchy of Exceptions.
    • What are the types of Exceptions? (You also need to give 2-3 examples)

  1. Collections:
    • Collections base hierarchy.
    • What is an ArrayList?
    • What is a LinkedList
    • What is the difference between Array vs Linked List?
    • Why is inserting into the middle of an ArrayList slower than in a LinkedList?*
    • What is Map?
    • How does HashMap work?
    • Is it possible to put a value with a NULL key in HashMap?*
    • What is Set?
    • Why do you need a Comparator?
  1. What are the main features of Java 8?
  2. Stream API
    • What is Stream API?
    • What are the types of operations? (And also examples of these operations)
  3. Lambda:
    • What is Lambda?
    • What is a Function Interface?
    • It is necessary to list the Function Interfaces that are in the JDK?
  1. Optional:
    • What is Optional?
    • In what cases should it be used?
  2. Multithreading, Concurrency:
    • What is a flow?
    • What is a Demon?
    • What are the ExecuterService?*
    • Why do you need synchronized, lock?*
  1. Spring Framework*:
    • What is Spring Framework?
    • What is Bean?
    • How to create a Bean?
    • What are the basic configurations?
  2. Database:
    • Why are Databases necessary?
    • What should be done to connect the Database to the project?
    • What is JDBC?
    • What is a ResultSet?
  1. SQL:
    • What are JOINS for?
    • What are the types of JOINS?
    • What are aggregate functions?
  2. Hibernate*:
    • What is Hibernate?
    • Why do you need the Entity and Table instructions?
    • How to use Hibernate to display the relationship between tables?
  1. HTTP:
    • What types of HTTP methods do you know?
    • What is the difference between PUT and PATCH requests?
    • What is a Query Parameter?
    • What is Body?
  2. Testing*:
    • What are the types of testing?
    • What is JUnit?
    • Why do you need Assert meth

After all, all questions are not asked, and their number depends on the available level of the interlocutor and whether he answers in an expanded or condensed manner.

At this level, a candidate is usually sought for training, so the main criterion is knowledge of Java itself, there is no emphasis on an in-depth understanding of technologies. Important foundation: Spring, REST API, and Hibernate to know the level of progress in programming language research.

*Questions or topics that are quite difficult at this stage are marked with an asterisk. So, if the candidate can clearly explain them, it is a big advantage for a successful interview.