Ask Mentors Anything

Get your questions/doubts directly answered by our mentors. Let's get started.

Mentee Question

Asked by Genius Bharti

Hey, below are the questions I wanted to discuss with you. Q1. Preparation plan for an intermediate in DSA to get into Google with 3 months prep time? Q2. What steps one should follow if he/she has strictly 3 months of interview preparation time with intermediate knowledge of DSA? Q3. How he/she can increase his/her chances of getting interview opportunities to make switch possible by end of 3 months positively.

Mentors Answer

Answered By Mentor Govind Ramachandran

Preparation Plan for Intermediate in DSA to Get Into Google (3 Months)


Month 1: Strengthen Fundamentals

  • DSA Concepts Review: Focus on the core DSA topics, including:
  • Arrays, Strings, Linked Lists, Stacks, Queues, Hashing
  • Trees, Graphs, Dynamic Programming, Recursion, Sorting/Searching
  • Time Complexity and Space Complexity analysis
  • Practice Platforms:
  • Solve easy and medium-level problems on LeetCode, HackerRank, and Codeforces.
  • Aim for 2-3 problems daily, focusing on implementation and optimization.
  • Books/Resources:
  • "Cracking the Coding Interview" by Gayle Laakmann McDowell
  • "Introduction to Algorithms" (CLRS)
  • Google’s Tech Dev Guide
  • Coding Competitions:
  • Participate in LeetCode Weekly Contests or Codeforces to simulate pressure and improve speed.


Month 2: Deep Dive into Advanced Topics

  • Advanced Algorithms & Problem-Solving:
  • Master recursion, backtracking, divide & conquer, greedy algorithms, and dynamic programming (DP).
  • Focus on graph algorithms (DFS, BFS, Dijkstra's, and Bellman-Ford), Trie, Segment Trees, and Binary Indexed Trees.
  • Solve more medium and hard problems.
  • Mock Interviews:
  • Start conducting mock interviews with peers or platforms like Pramp, InterviewBit, or Exercism.
  • Time yourself to mimic interview conditions and practice explaining your thought process clearly.
  • Optimization Focus:
  • Revisit problems you struggled with, analyze time and space complexity, and attempt to optimize further.
  • Pay special attention to edge cases and memory usage, especially with recursion and DP.


Month 3: Full-Fledged Mock Interviews & Systems Design

  • Systems Design:
  • Begin practicing systems design basics, even if you're aiming for a more algorithmic role (Google may ask this at higher levels).
  • Books like “Designing Data-Intensive Applications” by Martin Kleppmann and Grokking the System Design Interview can help.
  • Advanced Problem-Solving:
  • Spend time solving LeetCode Hard and previous Google interview questions. Focus on diverse topics to build confidence.
  • Behavioral Interviews:
  • Prepare for the behavioral aspects by using Google’s Leadership Principles (e.g., problem-solving, teamwork).
  • Practice STAR (Situation, Task, Action, Result) format for answering questions about previous projects, challenges, and learning experiences.
  • Mock Interviews (Final Phase):
  • Conduct at least 3 full-length mock interviews each week.
  • Analyze your performance, focus on improving communication, speed, and optimization techniques.


Q2: Steps to Follow with Strict 3-Month Prep Time (Intermediate in DSA)


  1. Set Clear Goals:
  • Define weekly goals for topics to cover and problems to solve.
  • Break the 3 months into 4-week sprints (Week 1-4: basics; Week 5-8: intermediate/hard; Week 9-12: mock interviews and final preparation).
  1. Daily Routine:
  • DSA Practice (2-3 hours): Focus on solving problems from different topics. Gradually increase difficulty.
  • Theory & Concepts (1-2 hours): Study DSA concepts, algorithms, and review past mistakes.
  • Mock Interviews (2 per week): Simulate real interview environments.
  1. Track Progress:
  • Maintain a journal of the problems you solve, your approach, and what you learned from each solution.
  • Regularly revisit topics where you feel weak or make mistakes.
  1. Consistency:
  • Stick to a strict schedule. Avoid burnouts by ensuring breaks and rest days but avoid long gaps in preparation.


Q3: Increase Interview Opportunities and Make the Switch by 3 Months


  1. Resume Optimization:
  • Tailor your resume for each job application, highlighting DSA proficiency, problem-solving skills, and relevant projects.
  • Use keywords from Google job postings, focusing on your technical achievements and project impact.
  1. Leverage LinkedIn & GitHub:
  • Be active on LinkedIn: Post about your coding journey, share solutions, and connect with recruiters and engineers from Google.
  • Ensure your GitHub is clean and shows contributions to DSA problems and relevant projects.
  • Participate in open-source projects to show collaborative skills and technical prowess.
  1. Networking:
  • Connect with current Google employees or recruiters. Informally ask for advice or referrals. Participate in Google’s coding competitions, like Kick Start, to get visibility.
  • Join DSA communities or coding platforms like LeetCode Discuss, Stack Overflow, and Reddit to increase your exposure and improve your skills.
  1. Job Platforms & Referrals:
  • Use AngelList, LinkedIn Jobs, Indeed, and Hired to apply for relevant roles.
  • Ask for referrals from your network—this increases your chances significantly for Google or similar companies.
  1. Recruiter Outreach:
  • Research recruiters who work with Google or top-tier tech companies. Personalize messages on LinkedIn and be prepared to showcase your problem-solving skills.


Conclusion:

  • 3-Month Summary:
  • Month 1: Strengthen fundamentals and solve easy-medium problems.
  • Month 2: Focus on advanced algorithms, harder problems, and begin mock interviews.
  • Month 3: Polish system design, conduct mock interviews, optimize communication, and start networking for referrals.


With a focused and disciplined approach, alongside proactive networking, you can maximize your chances of cracking a Google interview and securing opportunities by the end of 3 months.


Answered By Mentor SONAL PRIYA

I agree with Isha. Thank you Isha for detailed and structured answer. I would like to highlight on consistency part. You need to be consistent in your effort, and shouldn't get disheartened by initial hickups. If you are consistent, nothing is impossible.

Also, for cracking Google-level interview you need to solve the medium to hard level question with time bounding yourself to 45-60 min. For that mock interview which simulates real interview are very useful.

Another aspect to touch up on is System Design round, if you are applying for L4 or above levels, you need to be prepared for atleast one System Design round. The difficulty and expectation level of System design round vary for different levels.

Please let me know, if you have any other doubts.


Answered By Mentor Isha

To maximize your chances of cracking Google-level interviews with 3 months of preparation and intermediate knowledge of DSA, you should follow a structured plan. Here's a step-by-step guide:

 

Phase 1: Build Strong DSA Foundations (Weeks 1-4)

 

1. Revise Core Concepts:

Mainly focus on mastering arrays, strings, linked lists, trees, graphs, heaps, and hashmaps. Practice basic operations like searching, sorting, merging, and traversal.

 

2. Learn Problem-Solving Patterns:

Sliding Window, Two Pointers, Binary Search, Divide & Conquer, and Backtracking. Familiarize yourself with Dynamic Programming (DP) basics (e.g., memoization, tabulation). Start solving easy-medium problems with a focus on efficiency (optimal time/space).

 

Phase 2: Focus on Advanced Topics & Harder Problems (Weeks 5-8)

 

1. Tackle Graphs and Trees:

Master tree traversal techniques (DFS, BFS), binary trees, BSTs, and heap.

Graph algorithms: Dijkstra, Floyd-Warshall, Kruskal, Prim, and Union-Find.

 

2. Improve on Dynamic Programming (DP):

Solve classic DP problems (e.g., Knapsack, Longest Common Subsequence, and Coin Change). Practice DP patterns like Top-Down and Bottom-Up approaches.

 

3. Mock Interview Practice:

Start with mock interviews. Identify weak spots and re-learn the concepts you struggle with.

 

4. System Design (Basic):

For Google, some interviews may touch on system design.

Start with scalability basics, load balancing, caching, database partitioning, and APIs.


Phase 3: Polishing and Interview Readiness (Weeks 9-12)

 

1. Daily Problem Solving

Focus on hard-level problems.

 

2. Full Mock Interviews:

Simulate actual interviews by timing yourself (45-60 mins) for each problem.

  

3. Hackathons and Coding Challenges:

Participate in coding competitions on Leetcode, Codeforces, and HackerRank. Google recruiters often notice top performers.

 

By consistently working on these strategies over the next 3 months, you'll maximize both your preparation and interview opportunities.


Let me know, if you have any other questions. We can connect.


Top Performing Mentors This Week 🔥

Loading...

400+

Book a FREE Trial Session with any mentor of your choice

Book a FREE Trial Session