Skip to content

How the plan works

Plan guide

≈325 hours over 21 weeks around 18:30–07:00 night shifts. Enough to become a credible junior builder of AI applications with a real portfolio – not a frontier-lab researcher. This is built around that truth.

  • 21

    weeks

    16 Nov 2026 – 11 Apr 2027, incl. 3 buffers

  • ≈325 h

    total study

    ≈45 h of it is buffer

  • 13.75 h

    core per week

    + 3.5 h Friday flex

  • 42

    interview problems

    AI-free, from Week 5

  • ≈£36

    planned spend

    max ≈£73 of a £100 cap

About the plan

Work through the plan week by week. Each session has a ‘done when’ check, a minimum version and a commit. Sleep comes first: if you’re short of sleep, do the minimum version or skip a Mon–Wed session, and let the next buffer week absorb it. ‘≈’ marks estimates. J-numbers are job postings and S-numbers are sources (see Market and Resources → Sources).

What you’ll have at the end of Week 21

  • Skills: Python, Git, SQL, APIs, JavaScript/TypeScript and React basics
  • 42 interview problems solved and logged
  • P2 – a cited RAG app over GOV.UK guidance with an eval report
  • P5 – a deployed solution built for a real user, evaluated on their real questions
  • Three labs behind them: a structured-output extractor (P1), a tool-using agent with an MCP server (P3) and a LoRA fine-tune on your Mac (P4)

Plan shape

  1. W1–4Python from zero
  2. W5–6Problems, data and APIs
  3. W7Buffer (New Year)
  4. W8–12LLM engineering (P1–P3)
  5. W13Buffer + find your P5 user
  6. W14–16ML foundations + LoRA
  7. W17Buffer + your user’s eval set
  8. W18–20FastAPI, JavaScript/TypeScript, React, agentic tools, deployment, P5
  9. W21Portfolio, interviews and applications
  • Time: ≈325 hours over 21 weeks – 13.75 h of core sessions a week (including three 45-min Mon–Wed sessions), plus 3.5 h of Friday flex in non-overtime weeks. About 45 h of that is the three buffer weeks. Each Saturday starts with 20 minutes of spaced revision, and each Sunday ends with a 30-minute weekly review.
  • Money: planned spend is about £36 – £10 API credit (Week 6), an optional month of Claude Pro (≈£20, Week 19) and optional hosting (≈£6, Week 20). The maximum is ≈£73. Free alternatives exist for every paid item.
  • Mac: every tool was checked for Apple Silicon support.
  • Market reality: 30 UK postings analysed. Start applying in Week 21 (early April 2027).

What’s new in version 2

  • Three buffer weeks

    Weeks 7, 13 and 17 are buffers: catch up, consolidate, rest. Nothing new is taught in them, and each one has a useful job if you’re on track. The plan runs 21 weeks: Mon 16 Nov 2026 → Sun 11 Apr 2027.

  • Lighter Mon–Wed

    After a shift, the first half-hour awake is for water, daylight and food. The session is 16:15–17:00: one untimed interview problem plus revision, never new material.

  • One deep project, built for a real user

    P5 (the capstone) is built for a real user: a local charity, community group, small business or team at work, with evals on their real questions. You find the user in Week 13 and build their eval set in Week 17. A fictional brief is the fallback.

  • Labs vs portfolio

    P1, P3 and P4 are labs: you still build them to learn, but you pin only P2 and P5 on GitHub and talk about those in interviews.

  • Sleep and overtime unchanged

    Same shifts, ≈7.5 h of sleep after every shift, a Thursday reset and a Sunday nap. Friday flex still drops in overtime weeks; anything left over goes to the next buffer week.

  • Fixes from the review

    Project weeks show real weeks, the problem and drill counts agree everywhere, and leftover ‘Day 61+’ text is gone. v2.1 added the checked YouTube companion, an outdated-tutorials list and a reranker step in Week 11.

Assumptions the plan makes

  • You work nights 18:30→07:00 starting Sunday, Monday, Tuesday and Wednesday evenings. The commute is 30–60 min each way (the timetable assumes 45), and overtime happens on a Thursday or Friday about every other week.
  • You have the right to work in the UK and a 16 GB MacBook Air M5.
  • Week 1 starts Monday 16 November 2026 and the plan ends Sun 11 Apr 2027. If you lose more time than the buffers absorb (illness, holidays), add a week; don’t double up.
  • You can pay small amounts by card in USD (API credit, one optional month of Claude Pro).
  • You can find one real person or organisation willing to share public documents and 20 questions for P5. If not, the fictional brief still works.

Reality check

Estimates count from the end of Week 21 (mid-April 2027), at about 15 h a week.

AI Engineer (LLM apps)

≈4–8 months

Yes – apply as graduate/junior. Competitive; your portfolio, evals and steady coding practice are your edge.

Best entry move: Junior/graduate AI engineer and GenAI developer roles; UK-remote; consultancies’ graduate schemes.

Applied AI / Solutions Engineer

≈3–8 months

Yes, for junior solutions/support/implementation roles at AI startups.

Best entry move: AI support, implementation and solutions roles; use your previous industry as the selling point.

Forward Deployed Engineer

≈6–12 months (startup)

A stretch, but credible for new-grad/graduate FDE roles at startups. Not lab FDE.

Best entry move: Graduate FDE roles at startups; lead with P5; practise weekly decomposition; deepen TypeScript.

ML Engineer

≈9–18 months

Not yet. You’ll have foundations (micrograd, PyTorch on MPS, LoRA) but not depth.

Best entry move: Keep going with Karpathy, fast.ai and Kaggle; junior ML roles at startups.

MTS / Research Engineer at labs

≈2–5 years

No. Treat this as a 2–5 year goal.

Best entry move: A strong engineering job first; open-source work and paper reproductions; later fellowships.

Mac setup checklist

Steps 1–9 in Week 1’s light sessions; the rest in the week shown. Type each command exactly, then press Return.

0/16 steps
  1. Week 1

    Apple menu → About This Mac. You should see Chip: Apple M5 and macOS Tahoe 26. Install updates and keep ≥30 GB of disk space free.

  2. Week 1

    ⌘ + Space, type Terminal, press Return. The text ending in % is the prompt.

    $ pwd
    $ ls
    $ mkdir -p ~/code && cd ~/code
    $ open .
  3. Week 1

    Gives you Git and compilers. A pop-up appears: click Install and wait (10–30 min).

    $ xcode-select --install
  4. Week 1

    The Mac ‘app store’ for developer tools. Run the official command from brew.sh, then the ‘Next steps’ lines it prints.

    $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    $ brew --version
  5. Week 1

    uv manages Python versions and packages; gh logs you in to GitHub; VS Code is the editor.

    $ brew install uv git gh
    $ brew install --cask visual-studio-code
  6. Week 1

    Python 3.12 is a safe choice for PyTorch, MLX and most AI libraries.

    $ uv python install 3.12
    $ uv run --python 3.12 python --version
  7. Week 1

    uv init creates pyproject.toml; uv add installs a package and records it in uv.lock.

    $ mkdir -p ~/code/ai-21-weeks && cd ~/code/ai-21-weeks
    $ uv init --python 3.12
    $ uv add requests pytest python-dotenv
    $ uv run python hello.py
  8. Week 1

    Install the code command in PATH, the Python and Jupyter extensions, and choose the .venv interpreter. Disable any AI autocomplete until Week 5.

    $ code .
  9. Week 1

    Choose GitHub.com → HTTPS → ‘Login with a web browser’ when gh asks.

    $ git config --global user.name "Your Name"
    $ git config --global user.email "you@example.com"
    $ gh auth login
  10. Week 6

    Keys go in .env, .env is in .gitignore, and you commit only .env.example. If a key is ever pushed, rotate it immediately.

    $ echo 'GEMINI_API_KEY=' > .env.example
    $ echo '.env' >> .gitignore
    $ echo '.venv/' >> .gitignore
  11. Week 11

    Ollama needs macOS 14+; pick a 3–4B model from ollama.com/library. mlx-lm runs and fine-tunes LLMs on Apple Silicon.

    $ ollama run <model-name-from-ollama.com/library>
    $ uv add mlx-lm
    $ uv run mlx_lm.generate --prompt "Explain RAG in one sentence"
  12. Week 15

    On Macs PyTorch uses Apple’s GPU through the MPS backend instead of CUDA.

    $ uv add torch torchvision
    $ uv run python -c "import torch; print(torch.backends.mps.is_available())"
  13. Week 18

    Vite (Week 19) needs Node 20.19+ or 22.12+.

    $ brew install node
    $ node --version
    $ npm --version
  14. Week 19

    Needs Pro/Max or a Claude Console (API) account. Start it inside a project folder, never your home folder.

    $ brew install --cask claude-code
    $ claude --version
    $ cd ~/code/ai-21-weeks/projects/p5-fde-capstone && claude
  15. Week 20

    Download ‘Docker Desktop for Mac with Apple silicon’. Free for personal use. Quit it when you’re not using it.

    $ docker run hello-world
    $ softwareupdate --install-rosetta
  16. Week 1

    GitHub · Google AI Studio · Claude Console · Hugging Face · Kaggle (verify phone) · Exercism · NeetCode · Render · Streamlit Community Cloud · Anthropic Academy · DeepLearning.AI · LinkedIn · Meetup.

Your week around night shifts

Assumes a 45-minute commute. Study never cuts into the main sleep after a shift.

SessionTimeLengthUsed for
Mon16:15–17:0045 minOne untimed interview problem + revision. Wake up properly first (15:45–16:15).
Tue16:15–17:0045 minSame pattern.
Wed16:15–17:0045 minSame pattern.
Thu14:30–16:302 hLearn: watch/read after your recovery sleep. Nothing too heavy.
Fri09:00–10:301.5 hCore: first hands-on work on Thursday’s topic.
Fri flex10:45–12:15 + 13:30–15:303.5 hCatch-up first, then stretch work. Dropped in overtime weeks.
Sat09:30–12:30 + 13:30–15:305 hMain build day: starts with 20 min revision.
Sun10:00–13:003 hFinish the build + drill; 30-min weekly review; then the pre-shift nap.

Sleep and energy

  • Main sleep straight after night shifts (08:15–15:45 Mon–Wed, ≈7.5 h). Keep the same window each work day.
  • Thursday reset: a shorter anchor sleep (08:15–13:00), daylight in the afternoon, then an early night (22:30).
  • Before Sunday’s shift: bed ≈01:00 on Saturday, study in the morning, then a ≈90-minute pre-shift nap (14:30–16:30).
  • Caffeine early in the shift only, none in the last ≈4 hours. Avoid bright light late in the shift.
  • Study sessions never cut into sleep. If you wake up wrecked, skip the light session – flex and buffers absorb it.
  • Overtime week: drop Friday flex. Thursday overtime moves Thursday’s session to Friday 15:00–17:00.

AI coding-assistant policy

Employers expect AI tools; interviewers test whether you can code without them. Build both skills, in that order.

  1. 1

    Weeks 1–4

    Write it yourself

    Type every line yourself, with AI autocomplete off. An assistant may only explain an error message you paste in.

    Struggling to write and debug is how you learn.

  2. 2

    Weeks 5–17

    Write, then review

    Write first, then ask an assistant to review and explain, without rewriting it. Type changes yourself. Interview problems are always AI-free.

    Feedback speeds learning without replacing it.

  3. 3

    Weeks 18–21

    Agentic tool on real tasks

    Small, real tasks in the P5 repo: plan mode first, read every diff, run tests yourself, reject anything you can’t explain, and log it all in AGENT_LOG.md.

    Employers now expect this, and the log is evidence you can show.

Showing this skill in interviews without hiding gaps

  • Show the log, not just the app

    Link AGENT_LOG.md in the P5 README: each entry has the task, your prompt, the agent’s plan, what you accepted, what you rejected and why, and the tests you added.

  • Own every line you shipped

    If you can’t explain a piece of code in a deep-dive, it shouldn’t be in your repo. Rewrite it or remove it.

  • Say who wrote what

    For example: ‘I wrote the retrieval, evals and API by hand; the agent drafted the CI workflow and the copy button, and I fixed two problems in its first attempt.’ Honest, and a strong signal.

  • Tell the ‘rejected change’ story

    One concrete example of an agent suggestion you caught (it hid an error, broke a test, or added an unneeded dependency) shows the judgement employers want.

  • Expect AI-free rounds

    Many coding interviews restrict AI tools, so follow each company’s stated rules. Your AI-free problems are the preparation. If AI use is allowed, narrate how you check its output.

  • Don’t overclaim

    ‘I’ve used Claude Code on a handful of tasks in my capstone, with tests and review’ beats ‘I’m an expert in agentic AI’.

Budget · £100 cap

Planned spend ≈£36; the maximum if you buy every optional item and use all the contingency is ≈£73.

  • Anthropic API credit (Week 6)
    £10

    Claude Haiku 5.5 is $0.10 / $0.50 per million tokens; 1,000 RAG calls cost ≈ $0.55, so the credit lasts the whole plan.

    Free: Gemini API free tier (Flash, Flash-Lite); local models via Ollama/MLX.

  • Claude Pro, 1 month (Week 19, optional)
    ≈£20

    Includes Claude Code for the agentic-coding sessions in Weeks 19–20. Cancel after a month if you wish.

    Free: Claude Code on API credit with --max-budget-usd, or GitHub Copilot Free.

  • Render always-on instance, 1 month (optional)
    ≈£6

    Keeps the FDE capstone awake for recruiters ($7/month smallest paid instance).

    Free: Render free instance (sleeps after 15 min idle, ~1 min to wake).

  • Domain name (optional)
    ≈£10

    A yourname.dev-style portfolio link.

    Free: GitHub profile README + project links.

  • Hugging Face PRO, 1 month (optional)
    ≈£7

    Only if you want a Gradio/Docker Space.

    Free: Render free tier, or Streamlit Community Cloud for P2.

  • Contingency
    £20

    Unexpected API overspend, or a paid GPU hour if a free quota blocks you.

    Free: Kaggle / Colab free GPUs; smaller models; Batch API (50% off).

USD prices converted at roughly $1 ≈ £0.80 and may carry VAT. Never put a card on a service “just in case”: set spend limits and cancel subscriptions when the month you need is over.

Free tiers and compute

  • Free LLM access

    The Gemini API free tier covers Flash and Flash-Lite models; the top model is paid-only (S56). Local models run free with Ollama, MLX and LM Studio (S45, S46, S48).

  • Kaggle Notebooks

    A weekly GPU quota is shown in your account (commonly reported as ≈30 h/week, with 12-hour sessions; phone verification needed) (S51).

  • Google Colab

    Google says free-tier limits are not published and vary, and notebooks run for at most 12 hours (S52).

  • Hugging Face ZeroGPU

    Free daily quota for small demos (S70).

  • Free hosting

    Render free web service (S54); Streamlit Community Cloud (S59); GitHub for code and README demos.

  • Free courses with certificates

    Anthropic Academy on Skilljar, including ‘Building with the Claude API’ and ‘Claude Code in Action’ (S58, S63); the Hugging Face Agents Course (S64).

  • Free coding assistants and practice

    GitHub Copilot Free (S74) for review and explanations from Week 5. Exercism Python track (S75) and the NeetCode 150 list (S76).

  • Student/startup credits

    Only if you are a student or found a company. Check the GitHub Student Developer Pack and providers’ startup programmes yourself; they aren’t assumed here.

Cost maths you can reuse in interviews

cost = (input tokens × input price + output tokens × output price) ÷ 1,000,000. With Claude Haiku 5.5 at $0.10 / $0.50 per million tokens, a RAG answer with 3,000 tokens in and 500 out costs about $0.00055. The same call on Claude Sonnet 5.5 ($2 / $10) costs about $0.011, twenty times more. Use the cheap model while building, and the Batch API (50% off) for offline evals (S57).

Where UK AI roles are posted

Listings close quickly – re-check each link before applying. Start applying in Week 21.

Getting referrals

Show up and show work: 2–3 events a month with a 60-second demo on your phone. Ask for advice, not jobs. After a useful chat, share a one-page note on how you’d apply your project to their product – then ask about a referral. Most evening meetups clash with your shifts, so prioritise Thursday and Friday events.

After Week 21: the next 3–6 months

About 15 h a week: half building, a quarter applying and networking, a quarter interview practice. Pick one primary track and one secondary.

TrackMonths 1–2Months 3–4Months 5–6
AI EngineerApply to 5–8 roles a week; harden P2/P5 (caching, more tests); one open-source docs/bug fix in an LLM library.A second production-style project with real users; deeper evals and observability; Anthropic Academy certificates.Interview loops; contribute regularly to one OSS project; mentor newer learners at meetups.
Forward Deployed EngineerThe Next.js Learn course (App Router); SQL/Postgres behind P5; weekly timed decomposition practice.Build for a real customer pro bono with a scoping doc and exec summary; one hackathon.Apply to new-grad/junior FDE and solutions roles; consider a solutions/support role at an AI startup as the bridge.
Applied AI / SolutionsA demo library (3 polished demos); writing samples; customer-call role-plays; apply to support/implementation roles.Specialise in a domain (your previous industry); cloud fundamentals; pre-sales skills.Target solutions roles at AI vendors; grow towards FDE.
ML EngineerFinish the Karpathy series (makemore, GPT, tokenizer); fast.ai Part 1.Kaggle competitions; the Hugging Face LLM Course fine-tuning chapters on free GPUs; a maths refresher.A small-scale paper reproduction; decide between an MSc and junior MLE applications.
MTS / Research EngineerGet an engineering job first; keep a research notebook; read 1 paper a week.Reproduce a small paper; contribute to an open-source training/eval library.Longer term (2–5 yrs): publications or strong OSS, then lab residencies/fellowships.