Coding interviews are the core technical filter at every product company and FAANG office in India. The preparation is learnable, but it requires structure. Most candidates fail not because they lack intelligence but because they prepare randomly: solving problems without understanding the patterns, practising alone without simulating the interview, and running out of time by covering too many topics too shallowly. This guide gives you a structured 12-week preparation plan, the best resources for Indian candidates, and the specific interview-day techniques that improve your performance.
12-Week Preparation Plan by Company Target
4-week plan (IT services + entry-level product): Target companies: TCS, Infosys, Wipro, Cognizant, Capgemini, junior product company roles. Week 1-2: fundamentals. Arrays: two sum, find max/min, rotate array, reverse array, second largest element. Strings: reverse, check palindrome, check anagram, count vowels, longest common prefix. Linked list: reverse, find middle, detect cycle. Stacks and queues: balanced parentheses, implement stack using array. Target: 30-40 problems, all solved correctly. Week 3-4: practice and mock tests. Take 5-7 full coding rounds from PrepInsta or GeeksForGeeks company-specific sections. Time yourself: 2 problems in 30 minutes. Target: 80% of problems solved fully correctly within the time limit.
8-week plan (product companies: Flipkart, Swiggy, Zepto, Razorpay): Weeks 1-2: cover IT services topics above. Weeks 3-4: add sliding window (longest substring, max sum subarray), two-pointer (3Sum, container with most water), binary search (rotated sorted array, search range). Weeks 5-6: trees (BFS, DFS traversals, BST validation, LCA), heaps (K largest, merge K sorted lists, top K frequent), dynamic programming tier 1 (fibonacci, climbing stairs, house robber, min cost climbing). Weeks 7-8: DP tier 2 (0/1 knapsack, LCS, LIS, coin change), graphs (BFS shortest path, DFS connected components, topological sort, union-find), mock interviews 3x per week.
12-week plan (FAANG India: Amazon, Google, Microsoft): Weeks 1-4: 8-week plan weeks 1-4 condensed (already have fundamentals). Weeks 5-8: advanced DP (edit distance, matrix chain multiplication, DP on trees), graphs (Dijkstra, Bellman-Ford, Floyd-Warshall, MST), trie (prefix tree implementation, word search). Weeks 9-10: segment tree and BIT for range queries, monotonic stack and deque, advanced string algorithms (KMP pattern matching). Weeks 11-12: company-specific problem sets on LeetCode (Amazon tag + Google tag), system design primer (required for SDE-1 at FAANG), 5 full mock interviews under real conditions.
The Best Resources for Coding Interview Preparation in India
Ranked by ROI for Indian candidates: (1) NeetCode.io: the highest-ROI resource for most Indian candidates. Free NeetCode 75 (covers the essential patterns for product company roles) and NeetCode 150 (covers FAANG India topics). Video solutions for every problem explain the intuition, not just the code. Most Indian candidates who clear Flipkart/Swiggy/Razorpay SDE-1 reports using NeetCode as their primary resource. (2) LeetCode (Premium worth it for FAANG targets): the platform used in most interviews. Premium provides: company-tagged problems, study plans (75-day, 100-day), and mock interviews. If you are targeting Amazon specifically: the Amazon problem tag is one of the best ROI investments in LeetCode Premium. (3) Striver's A2Z DSA Sheet (free): comprehensive 455-problem sheet by Raj Vikramaditya (Striver). Popular with Indian candidates. Best used alongside NeetCode: NeetCode for pattern clarity, A2Z for volume and completeness. (4) GeeksForGeeks (GFG, free): best for campus placement company-specific sections (TCS, Infosys, Wipro problems), algorithm explanations, and editorial solutions. Less suited for FAANG preparation. (5) Codeforces (free): competitive programming. Useful for graph problems, number theory, and building speed. Participating in Codeforces Div. 3 or Div. 2 B-C problems is equivalent to LeetCode medium difficulty. (6) Pramp and interviewing.io (free and paid): live peer-to-peer and expert mock interviews. Essential in the last 4 weeks. Nothing replaces the experience of coding in front of another person on a shared whiteboard/editor under a 30-minute time limit.
The 8 Core Patterns That Cover 80% of Interview Problems
Mastering these 8 patterns is more effective than solving 500 random problems: (1) Two-pointer: one array with two indices that move toward each other or in the same direction. Used for: pair sum on sorted array, 3Sum, remove duplicates, container with most water, trapping rain water. Signal: the problem involves a sorted array or you can find an O(n^2) brute force that you want to reduce to O(n). (2) Sliding window: a window (subarray or substring) that expands or contracts. Fixed window (sum of k-length subarray) or variable window (longest substring without repeating chars). Signal: 'contiguous subarray', 'substring', 'consecutive elements', or 'maximum/minimum length satisfying a condition'. (3) Binary search on answer space: not just search in a sorted array. Apply binary search to the answer itself when: answers form a monotone condition (e.g., 'can I deliver all packages if my ship capacity is X?' is monotone: if yes at X, yes at X+1), and checking a given answer value is O(n). Common: minimum capacity to ship within D days, koko eating bananas. (4) BFS and DFS: BFS for shortest path (level-by-level, queue), DFS for exhaustive exploration (recursion or stack). Use BFS when you need the shortest path or level-order processing; use DFS when you need to explore all possibilities, detect cycles, or check connectivity. (5) Dynamic programming: recognise when problems can be broken into overlapping subproblems; define a state (what you are computing), a recurrence (how the state is computed from smaller states), and the base case. (6) Backtracking: generate all possibilities and prune invalid ones early. Common: subsets, combinations, permutations, word search, N-queens. Signal: 'generate all' or 'find all valid' + constraint. (7) Heap/priority queue: when you need to efficiently find the maximum, minimum, or K-th element from a changing collection. Common: K largest elements, top K frequent words, merge K sorted lists. (8) Union-Find: efficiently tracks connected components in an undirected graph. Common: detecting cycles, connected components, minimum spanning tree (Kruskal's).
Practise coding interview walk-throughs and technical explanations with HireStepX's AI voice interviewer. Build confidence narrating your approach under pressure. First 2 sessions free.
Practice freeInterview-Day Techniques That Improve Your Score
Communication during the coding interview: Most candidates know that you should 'think aloud', but few do it effectively. What it actually means: narrate your thinking at the high level ('I am considering a sliding window approach here because the problem asks for a contiguous subarray'), not at the line-by-line level ('now I am writing the for loop'). If you are stuck, say 'I know the brute force is O(n^2); let me think about what information I am recomputing and how to cache it.' This shows the interviewer your thinking process and often triggers a helpful hint. Managing time in 45-minute coding interviews: 0-5 minutes: clarify constraints, discuss approach, check edge cases. 5-25 minutes: write the solution. 25-35 minutes: test with given examples, trace your code manually. 35-40 minutes: test with 2-3 edge cases (empty input, single element, all equal values). 40-45 minutes: time complexity analysis and any optimisation discussion. If you write brute force first: say 'I will write the brute force first to have a working solution, then optimise.' A working O(n^2) solution with an explained O(n log n) optimisation is better than an incomplete 'optimal' solution. When you get stuck: most interviewers give hints when asked. 'I am thinking about this direction, does that seem right?' or 'I am stuck on the edge case where all values are negative. Can I get a nudge?' Asking for direction is not a failure; getting stuck silently for 10 minutes is.
Frequently asked questions
Explore more