Backend Development 6 min read

Compilation of Common Backend Interview Questions and Answers for Small Companies

This article presents a comprehensive collection of written‑test and interview questions covering Java basics, Spring MVC annotations, JVM memory, garbage collection, database design, transaction management, distributed systems, version control, and development workflow, aimed at helping candidates prepare for small‑company technical interviews.

IT Services Circle
IT Services Circle
IT Services Circle
Compilation of Common Backend Interview Questions and Answers for Small Companies

Hello, I am Guide. Responding to readers' requests, I share a set of interview questions from a small company, which, although simpler than past years, have become more competitive and cover a broad range of backend topics.

Written‑test questions:

Difference between == and equals()

Difference between GET and POST

When to use @ResponseBody in Spring MVC and how to use @PathVariable

Structure of the JVM heap

What is garbage collection (GC), its main purpose, and examples of common GC algorithms

Features of InnoDB and MyISAM

Understanding of MySQL transactions

Querying points data for member ID=100 in June 2023 (as shown in the image)

How to optimize a database

Describe the OAuth 2.0 authorization flow or explain the principle of single sign‑on

List common anti‑SQL‑injection measures used in programming and explain their principles

Design the mapping relationship among an order table, a product table, and a product‑order table

Interview questions:

Self‑introduction

Maximum single‑table data volume you have dealt with, and whether you added indexes (which fields?)

Which table had the most data, and what indexes besides the primary key were added?

How many departments does your company have and what are the main responsibilities of the product manager?

Which fields in that table have indexes?

How do you determine which fields need indexes when writing code?

Do you know composite indexes? If you create an index on (a, b, c), can you query in the order c, b, a?

In a Spring application, which layer (Controller, Service, DAO) usually handles transaction management and why?

When querying list data, should a transaction be opened? Why?

When using DELETE statements, should a transaction be opened? Why?

How does your distributed project handle distributed transactions?

Why use distributed transactions and what problems do they solve?

If a bank account has only 10 units and ten concurrent requests each try to deduct 10 units, how would you control it?

Which type of lock would you use in the above scenario, and which distributed lock would you choose for a distributed environment?

Does your code use Git or SVN for version control?

When a new requirement arrives, how do you manage branches?

From where do you create new branches for new requirements?

After creating a branch, do you start modifying code immediately? Describe your development process.

After development and testing, where does the code go?

If there are two new requirements, one to be released first and the other later, how do you manage their branches?

Is the test environment pulling code handled by operations or by testers themselves?

Do you have any questions for me?

The article also includes several related links to other technical articles and a decorative image.

backendJavaJVMdatabaseSpringgitInterview
IT Services Circle
Written by

IT Services Circle

Delivering cutting-edge internet insights and practical learning resources. We're a passionate and principled IT media platform.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.