Gopher

Software Engineeer
family-commitments
non-traditional
USA
1 yoe
Go
FAANG
PUBLIC
Private Large Cap
Backend
multiple-offers
Offer companies
3
Prep Time

12 months

Problems solved

400

Avg. Hours per week

25

Target Companies

FAANG, PUBLIC, Private Large Cap

It'll all be worth it soon enough :) Have fun and make friends in the process
Topic Confidence

Arrays

Medium

Strings

Medium

Linked list

Medium

Trees

High

Graphs

High

DP

High

Greedy

Low

Back Tracking

Low

System design

Medium

OOP

High
Resources
Tech Dose
Algorithms and Data Structures for Massive Datasets
Tech Interview Hackers
Go Playground
Other details
8
40
20

Prep Details

I focused on a topic until I either got bored or it became too difficult, and then revisited the topic at a later time when I was more motivated. I like to rabbit hole and knock down a bunch of similar questions until I pick up on the patterns and different styles. I gain my confidence through spaced repetition and grit. Even when I was feeling unmotivated, or lacked focus, I would just google random topics on my to-do list; looked at solutions, and worked my way backward until DSA topics finally stuck. Obviously, you need to start with the fundamentals, but soon after you'll realize there's a plethora of interesting ways to tackle a question. Do anything that keeps you going and you'll soon see yourself becoming more apt at interviews and DSA topics. Commit to coding every day, or at least tell yourself to do so! You only need one worthy offer! There were days when I just did not feel working on the problem. It was also hard to be consistent at times due to family commitments. That is when I took some breather, focused on other things and when I was a bit fresh, jumped back on the saddle. Its a MARATHON and not a SPRINT!!

Rough Study plan

Below is m yrough study plan. I repeated it after every few weeks.

  • Week 1 - Queues / Stacks
  • Week 2 - Linked List + Recursion ( e.g. rev a stack w/ recursion)
  • Week 3 - Know your D.S.'s like HashMaps, 2d arr's and diff operations (e.g. know cardinal dirs, indexing x and y dirs, etc.)
  • Week 4 - Trees (tree traversals + recursion, BST property, etc.)
  • Week 5 - Heap + priorityQueue q's
  • Week 6- 8 - Graph theory
  • Week 9 - Strings + Arrays ( find q's that have multiple other tags e.g. DP, greedy, string searching, etc.)
  • Week 10 - Tries
  • Week 11 - Advanced Topics you're interested in ( e.g. Segment Trees, Monotonic Stacks, etc.)
  • Repeat