# Persistent Systems Interview Questions with Answers

8 previously-asked interview questions from Persistent Systems's hiring process, each with the correct answer and a worked explanation. Written against the company's actual test pattern.

_Source: Astra (https://useastra.in). Updated 2026-09-05._

### 1. What is the difference between abstraction and encapsulation?

**Answer:** Abstraction hides complexity by exposing only essential features (the what), often via abstract classes or interfaces. Encapsulation hides internal data and restricts access through methods and access modifiers (the how). Abstraction is about design; encapsulation is about implementation and data protection.

**Explanation:** Abstraction hides complexity; encapsulation hides and protects data.

### 2. What is denormalization and when would you use it?

**Answer:** Denormalization intentionally adds redundancy to a normalized database (for example duplicating columns or precomputing joins) to speed up reads. It is used in read-heavy or reporting systems where query performance matters more than storage or write simplicity, at the cost of update complexity.

**Explanation:** Add redundancy to speed reads in read-heavy systems.

### 3. What is the difference between a mutex and a semaphore?

**Answer:** A mutex is a locking mechanism owned by one thread that allows exclusive access to a resource. A semaphore is a signalling mechanism with a counter that permits a fixed number of threads to access a resource. A mutex is essentially a binary semaphore with ownership.

**Explanation:** Mutex: exclusive lock with ownership. Semaphore: counted signalling.

### 4. What are the SOLID principles in object oriented design?

**Answer:** SOLID stands for Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion. Together they guide writing maintainable, extensible, and loosely coupled object oriented code.

**Explanation:** Five principles for maintainable OO design.

### 5. What is a REST API?

**Answer:** A REST API is a web interface following Representational State Transfer principles: it is stateless, uses standard HTTP methods (GET, POST, PUT, DELETE) on resources identified by URLs, and typically exchanges JSON. It enables loosely coupled client server communication.

**Explanation:** Stateless HTTP interface over resources, usually JSON.

### 6. What is garbage collection in programming?

**Answer:** Garbage collection is automatic memory management that reclaims memory occupied by objects no longer reachable by the program, as in Java and Python. It frees developers from manual freeing, reducing leaks, though it adds runtime overhead and less predictable timing.

**Explanation:** Automatic reclaiming of unreachable memory.

### 7. Tell me about yourself.

**Answer:** Give a concise 60 to 90 second overview: your degree, strongest technical skills, a project or internship with its impact, and why Persistent interests you. Keep it structured and relevant to product engineering.

**Explanation:** Structured pitch: background, skills, project, fit.

### 8. Why do you want to join Persistent Systems?

**Answer:** Mention Persistent focus on software product engineering and digital services, its work with global product companies, strong engineering culture, and learning opportunities. Tie it to your interest in building quality software.

**Explanation:** Product engineering focus, strong engineering culture.

More Persistent Systems preparation, including the full recruitment process: https://useastra.in/campus/persistent
