The 90-Day Roadmap: From Zero to First AI Job Offer
In 2026, AI engineers with 12-18 months of focused practice are landing offers that took traditional engineers 5 years. The market for ML/AI talent is the tightest it has ever been — entry-level ML offers at NVIDIA, Anthropic, and Stripe are landing in the $130-180K base + equity range, mid-level $200-300K. This roadmap is how you cross from learner to hired in 90 days, not 90 weeks.
Most people spend two years "preparing" to apply for an AI job and never apply. The candidates who get hired prepare differently — they collapse the loop. They build, apply, fail, learn, and re-apply in tight cycles. This roadmap is the exact 90-day version of that loop. Print it. Cross things off. Show up every day.
Learning Objectives
After this lesson, you will be able to:
Plan a concrete 90-day calendar with weekly milestones, application volume targets, and skill goals
Know the exact number of applications, coffee chats, and mock interviews per week that correlate with offers
Build a target company list across product, AI-native, fintech, healthtech, and consulting firms with real names
Negotiate your first offer using specific scripts — base, equity, sign-on, and relocation
Your Reflection
Saves automatically
What’s one thing you learned? What’s still confusing?
A structured 90-day plan beats a "whenever I feel like it" 18-month grind every time. Candidates who follow a calendar send 5x more applications, get 4x more replies, and land offers an average of 11 weeks faster than peers who study without a deadline.
Build this → By the end of this lesson you will have a literal printable 90-day calendar with three projects scoped, a 40-company target list seeded, an application template ready to send, and a negotiation script for the offer you have not received yet.
Three months. Three phases. Each phase has a single dominant verb.
Month 1 — BUILD. You are not yet looking for a job. You are manufacturing the artifact that will get you one: one polished project, a tuned resume, a public GitHub, a LinkedIn that doesn't embarrass you.
Month 2 — APPLY. You are now in market. Volume is the strategy. 25-40 applications per week, 3-5 coffee chats per week, daily interview prep.
Month 3 — CLOSE. You are in interview loops. Most of your time is spent in onsites, take-homes, and the negotiation phase that everyone forgets to plan for.
If you cheat a phase — apply before you have a portfolio, or stop applying after one onsite — the roadmap breaks.
The biggest lie new candidates believe is that they need "more breadth." More algorithms, more frameworks, more buzzwords. What they actually need is one project that proves they can ship.
#Week 1: Pick the project and set up infrastructure
Your week 1 checklist:
Pick a real problem. Test: can you describe the problem to a non-technical friend in 30 seconds and get them to nod?
Decide the stack. Default: Python + FastAPI + Claude/OpenAI API + Postgres + a Vercel/Railway deploy. Don't overcomplicate.
Create the GitHub repo with a real README, not "ML Project."
Set up a public domain (Vercel gives you one free) and Sentry for error tracking.
Write a one-page project brief: problem, hypothesis, success metric.
The goal of week 2 is a working end-to-end slice. Not pretty. Not optimized. Working. Backend that responds, frontend (or CLI) that calls it, deployment that loads on a real URL.
Backend that answers one API request end-to-end
Real evaluation: run 20 test inputs, log accuracy/latency/cost
Deploy to Vercel/Railway/Fly.io — must be reachable from a phone
Most candidates ship at week 2 and call it done. The ones who get hired spend week 3 measuring. Specific metrics in the README — latency p50/p95, cost per request, accuracy on a held-out set — separate you from 80% of applicants.
Add three concrete metrics to the README (e.g., "answers 89% of 100-question eval set in under 1.2s at $0.003 per call")
Write a blog post or LinkedIn article explaining one technical decision
Record a 60-second Loom demo
Get a non-engineer friend to test it. Fix whatever they break.
Rewrite your resume using the lesson "Writing Your AI Engineer Resume" — every bullet must have a number
Update LinkedIn headline. Bad: "Aspiring AI Engineer | Open to Work." Good: "Built a [project] used by [N people] | Looking for ML engineering roles at AI-native startups"
Build a 40-company target list (more below)
Draft your cold-application email template and your referral-request template
By end of Month 1 you should have: one polished deployed project, a public GitHub with a great README, a tuned resume, a strong LinkedIn, and a target list.
Month 2 is where most candidates lose the plot. They apply to 5 companies, get no response in 2 weeks, conclude "the market is broken," and spend the rest of the month doom-scrolling LinkedIn. Don't do that.
Treat these as rough planning estimates, not promises — actual rates vary widely by market, seniority, location, visa status, and how targeted your applications are, and any single search can land well outside these bands. Their value is as a diagnostic ratio rather than a forecast: it is the shape of the funnel, not the absolute numbers, that tells you where you are stuck. If you are under on volume, you have a volume problem. If you have volume but zero replies, you have a resume problem. If you have replies but no onsites, you have a phone-screen problem. Track your own numbers for four weeks and compare the drop-off between stages — that comparison is what localises the bottleneck.
A coffee chat is a 20-30 minute Zoom call with an engineer at a target company. You ask them about their work, their team, what they look for in candidates. At the end, if it went well, you ask: "Would you be open to referring me if a role opens up that fits?"
Cold-DM template that works (I've sent ~100 and gotten ~30 chats):
Hi [Name], I'm a [your background — student/career-changer/etc.] working on AI applications. I noticed you've been at [Company] for [N years] working on [specific thing they posted about]. I'm currently building [your project] and would love to learn 20 minutes about how the [team name] team operates. Happy to send a calendar link if you have a slot in the next two weeks. No pressure either way.
Goal: 3-5 coffee chats per week. Half will say no. That's fine.
If Month 2 worked, you enter Month 3 with active interview loops. The mistake here is stopping. Keep applying through Week 11. Pipeline pressure changes every conversation — interviewers can hear it in your voice when you have competing offers.
When the first offer arrives, do not say yes. Do not say no. Say this:
"Thank you so much, this means a lot. I am really excited about [specific team or project they showed me]. I have a couple of other processes wrapping up over the next 1-2 weeks. Could we connect early next week to discuss the offer in detail? I want to give this the consideration it deserves."
This buys time. Use that time to push every other process to "offer or no" within 7-10 days. Send this to every other recruiter:
"Quick update — I've received an offer that I'm considering, with a decision deadline of [date]. I really enjoyed my conversations with [Company] and would love to know if there's a path to a decision on your side within that window."
Most candidates take the first number. The hiring manager budgeted a range. Your job is to get to the top of that range. Here are scripts that work.
For base salary:
"Thank you for the offer. Based on my conversations with other companies at this stage and the market data I've seen for ML engineers with my background, I was hoping the base could land closer to $[your number, 10-20% above offer]. Is there any flexibility there?"
For equity:
"I'm very excited about the long-term upside here. Could you walk me through the equity structure — the vesting schedule, the most recent 409A valuation, and whether there's a refresher cycle? Given my conviction in the company, I'd love to see if the equity grant could be bumped to [number]."
For sign-on:
"If the base is constrained, would there be room for a signing bonus to bridge the gap? I'm thinking $[number] would make it work."
For relocation/remote:
"I'd want to make sure I can do my best work. Could we discuss either a relocation package of $[number] or, alternatively, a remote arrangement with quarterly travel?"
Once you sign, send a thank-you note to everyone who helped — coffee chats, mock interviewers, friends who reviewed your resume. They will remember it, and you will be the one taking referral calls in two years.
In the two weeks before start date:
Read the company's last 6 months of engineering blog posts
Set up your environment (laptop, IDE, tools they use)
Reach out to your hiring manager for a list of docs/codebases to skim
Take 4-7 days of total disconnection before day one. You earned it.
Approximately how many applications should you target across Month 2 (weeks 5-8) to expect 1-3 offers by end of Month 3?
Recap
Key Takeaways
190 days, 3 phases: Build (Weeks 1-4), Apply (Weeks 5-8), Close (Weeks 9-12). Don't skip a phase.
2Target 20-30 applications/week in Month 2 and 3-5 coffee chats/week. Track conversion rates.
3Use a 40-company target list across 4 tiers. Tier 4 (small domain-specific startups) is where most first-timers actually land offers.
4Negotiate every offer — base first, then equity, then sign-on. 10-20% above initial offer is normal. The candidates who don't ask leave $15K-$30K on the table.
Next: how to write the resume that triggers the callbacks in the first place.