๐ฏ FAANG + OpenAI + Anthropic
๐
6 months ยท ~2 h/day
๐ช Starts at zero DSA
๐ฑ Leverages your mobile background
From iOS engineer to a Big-Tech software offer โ in six months.
You already ship production mobile code. What stands between you and an offer at Apple, Amazon, Google, Meta,
Netflix, OpenAI or Anthropic is a different test: data-structures & algorithms under a timer, system design,
and a behavioral bar. This guide is the ordered path from knowing no LeetCode to interview-ready โ
what each company actually tests, what to learn in what order, the mental models that make it click,
and a 24-week plan you tick off as you go.
The strategy in one paragraph
The coding bar (LeetCode-style DSA) is identical whether you apply as a generalist or a mobile specialist โ you
cannot skip it, so it gets the most runway. But system design is where your iOS years are an asset: you'll be a
strong signal in mobile-flavoured design and only need enough distributed-systems literacy not to freeze. So the
play is: grind DSA hard, lead with mobile-leveraged applications, layer on backend fundamentals for breadth.
Every one of these eight companies hires mobile engineers โ including the ChatGPT and Claude apps โ so you rarely have
to abandon your edge to get in the door.
01 ยท KNOW THE TEST
Map every loop
How the interview actually runs at each of the eight companies, what each one weights, and where your mobile background counts double.
02 ยท LEARN IN ORDER
Ranked by hiring ROI
Not all prep is equal. The exact order to invest your 360 hours so the first thing you study is the thing that moves the needle most.
03 ยท MAKE IT CLICK
Build the mental models
Interactive explainers for the ideas a self-taught path skips: Big-O, hashing, sliding window, binary search, graph traversal, scaling.
Know the test
The eight loops, decoded
Every loop shares a spine โ coding, system design, behavioral โ but the weighting and flavour differ
sharply. The bars below are rough emphasis, not official numbers; use them to decide where a given company will make or
break your candidacy. Green tag = has a dedicated mobile/iOS track you can apply to with your current edge.
Learn in order
What to learn, ranked by hiring ROI
With ~360 hours, sequencing is everything. This is the order that maximises your odds given a mobile background and
zero DSA โ each item rated by impact (how much it moves a hire decision) and effort (how far you are from
the bar today). Spend your early months on the top of this list; the bottom is polish and edge.
The trap to avoid
The instinct from a mobile seat is to go wide โ learn React, a backend framework, a database, some ML. Resist it.
A single un-grinded DSA gate fails you at every one of these companies, no matter how broad your stack. Breadth is
a tie-breaker; coding is the gate. Go deep on #1โ#3 before you touch #5โ#7.
The map of the maze
The coding-interview pattern map
Here's the secret that turns ~2,000 LeetCode problems into something learnable: nearly all of them are one of about
16 recurring patterns. You don't memorise problems โ you learn to recognise the pattern, then the solution
follows. Learn them roughly in this order; each links to the kind of problem that signals it. This is your DSA syllabus.
Make it click
The mental models, visualised
A self-taught path often leaves gaps in the intuitions a CS degree drills in. These are the ones that unlock the most
problems โ play with each until the model is yours, then practise narrating it out loud (the interview tests whether you
can explain it, not just use it). Tap a card to open it.
Your six months, mapped
The 24-week study plan
Six phases, 24 weeks, ~2 hours a day (~12 h/week). It builds from complexity & arrays up through every DSA pattern,
then system design, a breadth + behavioral layer, and four weeks of mocks and applications. Each week lists a daily
rhythm, a problem target, and links to a self-contained lesson that lives in this repo โ no third-party sites, no
accounts, no paywalls; everything reads offline. Lessons are authored in order (Week 1 is live). Tick weeks off โ progress
saves in this browser. Pick the phase tab to expand it.
On the day
The interview-day playbook
Knowing the material isn't the same as passing. These are the frameworks that turn what you know into a hire signal โ
one for each kind of round โ plus the red flags that quietly sink prepared candidates.
The coding round โ narrate this skeleton every time
1 ยท CLARIFY
Restate & ask
Repeat the problem, confirm input ranges, types, dupes, sortedness, empty cases. "Can the array be empty? Integers only?" Buys time, prevents solving the wrong thing.
2 ยท EXAMPLES
Work an example by hand
Trace a small input on the whiteboard. It surfaces the pattern and edge cases before you write a line of code.
3 ยท BRUTE FORCE
State the naive answer first
"The O(nยฒ) way isโฆ โ let me see if I can do better." Shows you can always produce something, and frames the optimisation.
4 ยท OPTIMISE
Name the pattern + complexity
"A hash map drops this to O(n) time, O(n) space." This is the core signal: recognising the pattern and stating the trade-off.
5 ยท CODE
Write clean, talk as you go
Good names, small helpers, no silent stretches. Narrate intent: "now I iterate once, storing complements." Silence reads as stuck.
6 ยท TEST
Dry-run + edge cases
Walk a real input through your code, then call out empty / single / duplicate / overflow. Catching your own bug beats the interviewer catching it.
The system-design round โ the seven-step frame
1 ยท RequirementsFunctional ("users post, follow, view a feed") + non-functional (scale, latency, availability, consistency). Write them down; agree before designing.
2 ยท EstimatesBack-of-envelope: DAU, QPS, read:write ratio, storage/year. Drives every later choice. ("100M DAU, ~10:1 read-heavy.")
3 ยท API + data modelDefine the handful of endpoints and the core entities/tables. Concrete contracts anchor the rest.
4 ยท High-level diagramClient โ LB โ service โ cache โ DB, plus queues/CDN. Draw the happy path end-to-end first.
5 ยท Deep divePick the interesting piece (feed fan-out, sharding key, dedup) and go deep โ that's where the signal is.
6 ยท Bottlenecks & trade-offsName the failure points and your fix: replication, caching, partitioning, the CAP choice you made and why.
Your edge here
For a
mobile system-design prompt (offline sync, photo upload, a chat app, a feed that scrolls smoothly on a flaky network),
lean on the depth in
the iOS guide and this kit's System Design prep notes โ you'll out-signal a backend-only candidate on the client half.
The behavioral round โ STAR, mapped to values
It's not filler
At Amazon it's roughly half the decision (Leadership Principles); at Netflix it's the culture screen that can end the loop. Prepare
12โ15 STAR stories from your real mobile work โ conflict, a hard bug, a failure, mentoring, influence, ambiguity, a win โ and
map each to the target company's values (Amazon LPs, Meta's signals, Google's "Googleyness"). "I haven't faced exactly that, but here's how I'd reason" beats a vague non-answer.
Red flags that quietly sink candidates
๐งฎ CodingJumping to code before clarifying; silent for minutes; can't state Big-O; ignoring edge cases; giving up at the brute force.
๐บ๏ธ System designDiving into one component without requirements/estimates; no numbers; one giant box; never naming a trade-off or bottleneck.
๐ค Behavioral"We" with no "I"; blaming teammates; no metrics; no lesson learned; rambling past 2โ3 minutes per story.
๐ง MindsetArguing with the interviewer; not taking hints; pretending to know; treating follow-ups as attacks rather than depth probes.
Practise against the real thing
Reps under pressure are everything. Drill timed problems, do live mocks with a human, and for the domain round
use this kit's iOS interviews โ answer out loud and grade yourself against the strong-answer markers.