💻Technical Questions
Q1Reverse a linked list. Code it in your preferred language.
💡Iterative (O(1) space, O(n) time) and recursive (O(n) space) approaches. Walk through the pointer manipulation before coding.
Q2Find the longest common subsequence of two strings.
💡Classic DP problem. Build the 2D DP table. O(m×n) time and space. Explain how to reconstruct the actual subsequence.
Q3What is the difference between an abstract class and an interface in Java?
💡Abstract class: can have state, concrete methods, single inheritance. Interface: no state (Java 8+: default methods), multiple implementation. When to use each.
Q4Given an array, find all pairs that sum to a target value.
💡Brute force O(n²) vs HashMap approach O(n). Handle duplicates, negative numbers, same element used twice.
Q5Explain polymorphism with a code example.
💡Method overloading (compile-time) vs method overriding (runtime). Practical examples — Shape → Circle/Rectangle. How the JVM resolves method calls.
Q6What is the difference between == and .equals() in Java?
💡== compares references (memory addresses). equals() compares content. String pool behavior. Always use equals() for object comparison.
🧠Behavioral Questions
B1Why do you want to work at [this company]?
💡Research the company's technology stack, culture, recent projects. Show genuine interest beyond 'good company'. Mention specific teams, products, or engineering challenges.
B2Where do you see yourself in 5 years?
💡Show ambition aligned with the role. Growth path: SDE-1 → SDE-2 → Senior → Tech Lead. Mention skills you want to develop. Don't say 'your position'.
B3Tell me about your final year project.
💡Problem it solved, your specific contribution, tech stack used, challenges faced, what you learned. Quantify any results.
🎯Situational Questions
S1You're given a task and aren't sure how to approach it. What do you do?
💡Research, break it down, estimate unknown pieces, ask targeted questions (not general help), time-box your independent effort before escalating.
S2You disagree with your team lead's technical approach. What do you do?
💡Understand their rationale first (there may be context you lack). Share your perspective with data. Accept the decision respectfully if overruled. Document your concern if safety/quality is at stake.
Must-Know Topics
- ✓Data Structures (Arrays, Linked Lists, Trees, Graphs, Heaps)
- ✓Algorithms (Sorting, Searching, BFS/DFS, DP)
- ✓Object-Oriented Programming (Java/Python/C++)
- ✓SQL (Joins, GROUP BY, subqueries)
- ✓Operating System Basics
- ✓Computer Networks (HTTP, TCP/IP)
- ✓DBMS (Normalization, Indexing, Transactions)
- ✓Version Control (Git)
Common Interview Mistakes to Avoid
- ✗Not practicing coding out loud (think-speak-code)
- ✗Solving only easy LeetCode problems, ignoring medium/hard
- ✗Memorizing solutions instead of understanding patterns
- ✗Not preparing for HR rounds (common trap for tech candidates)
- ✗Not researching the specific company's interview pattern
Frequently Asked Questions
How do mass hiring companies (TCS, Infosys, Wipro) conduct interviews?▼
Typically 3 rounds: (1) Online coding test (aptitude + basic coding), (2) Technical interview (DSA, OOP, SQL, OS/networking basics), (3) HR interview (behavioral, communication, fit). Coding difficulty is lower than product companies but aptitude and communication are equally weighted.
What is the difference between service company and product company interviews?▼
Service companies: moderate DSA, OOP fundamentals, project knowledge, communication skills. Product companies: harder DSA (medium-hard LeetCode), system design, problem-solving under pressure, culture fit. Compensation at product companies is typically 2–5x service companies.
How many LeetCode problems should I solve for TCS/Infosys interviews?▼
50–100 problems at easy-medium difficulty, plus strong aptitude (quantitative, logical reasoning, verbal). For product company lateral roles from service companies: 150–200 medium/hard problems + system design basics.
What is the best programming language for software developer interviews in India?▼
Java is most common in service companies (TCS, Infosys, Wipro, HCL). Python is preferred at product companies for its conciseness. C++ is common in competitive programming backgrounds. Use whatever you're fluent in — logic matters more than language.
How do I switch from a service company to a product company?▼
Upskill on DSA (LeetCode medium/hard), system design, and modern tech stack (not just Java/Spring). Build a portfolio of side projects. Prepare for 3–6 months minimum. Start with smaller product companies before targeting FAANG. Referrals are the most effective channel.
Ready for your Software Developer (India) interview?
Make sure your resume gets you to the interview stage first. Get a free ATS score.
Score My Resume Free →