This is my real playbook, built from my real git history.
Fable 5 wrote this from evidence, not flattery: 310 commits, three workflow files (Urgent.md / roadmap.md / RELEASE_NOTES.md), a prompts library, 36 test files, and ~60 recent sessions. It's published in full — strengths, weaknesses and all — because an honest self-portrait is worth more than a polished one.
The map of this whole course: one shared Trunk plus three selectable branches. Until the primary track is adjudicated (§0.4), the weekly budget goes only to Trunk nodes and Chapter 06 assessments. Intel baseline (checked 2026-07-12): Anthropic Academy now lists 20 public courses; the official engineering blog has a context-engineering trilogy; Agent SDK / Agent Skills / MCP docs are mature. Curation discipline carries over from Ch02: primary sources only, links re-checked quarterly.
0.1 The Trunk (mandatory for every branch, in order)
| Node | Content | Source (one click) | Exit standard |
|---|---|---|---|
| T1 ✅ | State externalization / token engineering / scope adjudication — already lit (your S1–S3) | Chapter 01 evidence | No re-study needed |
| T2 | Evals engineering — the single highest-priority node in the tree; all three branches depend on it | Claude Cookbook ↗ · Lesson 2.2 | Build a 10-row gold set for one of your own AI-produced steps and run it as a regression once |
| T3 | Context engineering — the formal successor to prompt engineering: context budgets, compaction, tool clearing, multi-turn state | Trilogy pt.1 ↗ · pt.2 ↗ · pt.3 ↗ | Draw the context-budget table for one of your own scheduled tasks (system/tools/history/data shares + trimming strategy) |
| T4 | Statistical judgment | Lesson 2.3 (unchanged) | Same as 2.3 |
| T5 | Big-O as a review language | Lesson 2.5 (unchanged) | Same as 2.5 |
0.2 Branch A · Applied LLM Engineering (new in v3.0)
Why this branch exists: your S2 (token engineering) is already semi-professional — but entirely self-taught folk practice. This branch formalizes it into the market-recognized 2026 "AI Engineer" stack, fully aligned with Anthropic's official courses, and is the fastest of the three branches to cash in. ~12 weeks @ 5h/week. All Academy courses are free and award certificates.
| Node | Content & source (one click) | Output (must really exist) | Depends on |
|---|---|---|---|
| A1 | Building with the Claude API ↗ — tool use / streaming / prompt caching / batch. You already use caching in production; this legitimizes the folk practice | Certificate + a one-page diff note: your prompts/README.md 5 hard rules vs. official best practices | T2 T3 |
| A2 | Intro to MCP ↗ + MCP Advanced ↗ | A real MCP server for the feida.au data pipeline (e.g. arena ledger queries), usable from Claude Code locally | A1 |
| A3 | Intro to agent skills ↗ + authoring best practices ↗ | Package your Urgent.md three-layer workflow as a distributable skill you actually use daily | A1 (parallel with A2) |
| A4 | Intro to subagents ↗ + Agent SDK docs ↗ | Rewrite one existing scheduled task on the Agent SDK (candidate: arena-autopilot), behavior-equivalent to the old one | A2 A3 |
| A5 | Writing effective tools for agents ↗ — self-contained, non-overlapping, explicit parameters | A 20-row gold set + passing bar for the A2 MCP server; one tool-description refactor with before/after pass rates recorded | A4 |
| A6 | Capstone — everything combined | Full agent-ization of the arena/sectors pipeline: RFC first (O1) → Agent SDK build → eval harness as the gate → one public engineering blog post (O3) | A5 |
0.3 Branch B / Branch C (pointers — no duplicated content)
Applied LLM Engineering
§0.2 above. Fastest to cash in; builds directly on S2. ~12 weeks.
AI Infrastructure / MTS
= Chapter 05 unchanged (DDIA → CMU 15-445 → MIT 6.824 → cluster infra; three-pillar scorecard as-is). 2026-07 patch: stage I4's reading list adds major labs' public training-infra engineering blogs as a fixed quarterly-checked source. 12–18 months.
Data Synthesis & Analytics
= Chapter 04 unchanged (12-week DA playbook). 2026-07 patch: new node C+ · synthetic-data engineering — QA for LLM-generated train/test data (distribution checks, contamination detection; the 4.3 gold-set method carries straight over). Honest note: no single authoritative course exists yet for C+ — material is weak, re-checked quarterly.
0.4 Primary-track adjudication record
0.5 Official materials hub (checked 2026-07, quarterly refresh)
Written in the first person, objectively, by Fable 5, addressing you directly. Judged on evidence, not on politeness.
1.1 Data snapshot (as of 2026-07-12; monthly refresh appended 2026-07-13, see rows above)
| Dimension | Observed | Evidence |
|---|---|---|
| Output pace | 310 commits / 6 weeks, peak day 50 (Jul 5) — monthly refresh (07-13): 341 commits over the trailing 30 days, still peaking at 50 (Jul 5); weekly pace ~52/wk → ~80/wk (+54%) | git log |
| Work hours | A large share of commits fall in a late-night window — monthly refresh (07-13): that concentration worsened further over the trailing 30 days | git log hour distribution |
| Test discipline | 36 test files; 518/518 passing is the merge gate | tests/ + Urgent.md sign-offs |
| Automation | Over half of ~60 recent sessions are scheduled tasks (arena/sectors/leagues/transits daily updates) | session records + prompts/ |
| Token engineering | system/run split for prompt caching, forced JSON, state externalized, hard length caps, pre-digested data | prompts/README.md's 5 hard rules |
| Tech debt | styles.css at 7,444 lines (wins via "append at end + !important"), main.js at 3,523 lines, main chunk 868 kB — monthly refresh (07-13): styles.css now 7,826 lines (+5.1% — the named target is growing, not shrinking); main.js 3,498 lines (flat); main chunk down to 192.85 kB via U21 Phase 1's vendor split, but main+vendor-three+vendor-astronomy now total 913.65 kB — a caching win, not less code | RELEASE_NOTES.md 12a audit + U21 Phase 1 |
1.2 Strengths (keep these, and know why they work)
State-externalization discipline is professional-grade
Urgent.md (current fires) → RELEASE_NOTES.md (done archive) → roadmap.md (future queue) is a one-person equivalent of an issue tracker + changelog + backlog. "The conversation is disposable, the files persist" — you've internalized something most vibe coders never learn in two years.
Token-efficiency instincts ahead of the market
prompts/README.md's line — "a model can compute this number ≠ the model should" — is the core thesis of 2026 AI engineering. You push metric computation, dedup and truncation into scripts and reserve the model for decision reasoning. That's exactly what Ch04 teaches, and you already do it.
Scope adjudication is mature
U9 swapped only the mechanical gauges and kept the ship silhouette; A2 Phase 4 knew state/nav/boot were tangled and didn't force a sandbox rip-out; C5 evaluated before adding page 9. Saying "no" is rarer than being able to say "yes."
Verification has physical structure
"Sandbox can't render → every visual change waits on real-device review" is a written law, not a verbal promise. Byte-diffing a CSS migration to verify it is the same instinct: verification must be objective, not the AI's self-report.
A real, closed deployment loop
9 pages with real URLs + Vercel + GA tracking + scheduled-task data pipelines. Your portfolio problem is already solved — what's missing is narrative packaging (see 3.4).
1.3 Weaknesses (this course's actual target)
CSS/front-end architecture judgment lags your output speed
7,444-line styles.css, 9 duplicate --hud-cols definitions, ~40 known dead selectors left "recorded, not cleaned." "Append at the end and win on source order" stops bleeding — it isn't architecture. You can diagnose the debt honestly, but can't yet write the refactor prescription. Monthly refresh (07-13): styles.css grew to 7,826 lines (+5.1%) — the named target is growing this month, not shrinking; main.js/main-chunk structure improved via U21's vendor split, but that's a bundling win, not a refactor prescription.
Visual-review backlog is a systemic risk
The .fld-manual hidden bug survived several versions under a "pending real-device review" tag before a screenshot caught it. A backlog that only grows means review isn't a hard gate in the process. Monthly refresh (07-13): the backlog is quantified for the first time — 10 items sit in Urgent.md's status table pending real-device review (U1–U6, U12b, U13/14, U15, U16, U17, U18, U19, U24, U25), double the R3 cap of 5, and it hasn't shrunk despite two more items (U24, U25) landing on top of it this week.
No first-principles training in algorithms or complexity
Every algorithmic piece of this repo (ephemeris, chart-casting, technical indicators) was AI-written and reviewed purely on "does the behavior look right." That holds inside your own project — it does not hold in a 2026 interview room.
An unsustainable sleep/work curve
Late night is your golden output window, and a clear slump has followed prior high-output stretches. A sprint-crash cycle is visible in the data. Every pace in this course (3 problems/week, 12-week paths) is designed to be sustainable — sprinting to catch up is not permitted. Monthly refresh (07-13): the late-night concentration kept climbing over the trailing 30 days, with no sign of the curve leveling off.
Uncommitted-change drift
course.html sat uncommitted as page 9 for days, dragging along a batch of vite.config/sitemap changes in limbo — a violation of your own CLAUDE.md "surgical changes" principle.
1.4 Your coding philosophy (observed, not self-reported)
1.5 Playbook rules (current version, revised on evidence)
- R1 · The one law never changes: never merge code you can't explain yourself.
- R2 · The token three-question test (carried over from your prompts spec, extended to interactive sessions): Can this data be pre-digested? Can this context go in system to hit the cache? Can this output be length-capped?
- R3 · A WIP cap on review once the "pending real-device review" list exceeds 5 items, new visual work is frozen until the backlog clears. Review backlog = unexploded bug inventory (evidence: .fld-manual).
- R4 · Late night is write-only output is allowed after 23:00; merging/pushing to main is not. No irreversible action during a judgment-decay window.
- R5 · Workspace hygiene git status must be clean at the end of any session — either commit, or stash and log the destination in Urgent.md.
- R6 · One architecture review a week (hedges W1): have the AI report this week's new duplicate definitions / dead code / end-of-file overrides; you only decide "clean up or log it," capped at 10 minutes.
1.6 Playbook changelog
| Date | Change | Trigger evidence |
|---|---|---|
| 2026-07-12 | v2.0 first version: from platform blueprint to personal course; established R1–R6 | this full analysis pass |
| 2026-07-12 | v2.1 added Chapter 05 "AI Infrastructure & MTS Track" + a 4-week gap-analysis loop (scheduled task mts-gap-analysis); Ch04/Ch05 track fork in §5.5 | user-initiated (Anthropic team-composition data) |
| 2026-07-12 | v3.0 added Chapter 00 "AI Engineer Tech Tree" (Trunk + 3 branches; Branch A Applied LLM Engineering is new) and Chapter 06 "Interactive Mentorship & Assessment Loop"; primary track changed from Ch05-by-default to pending-placement (§0.4); weekly Monday 20:00 review task (course-weekly-review) added | user-initiated + Academy/docs sweep |
| 2026-07-13 | Monthly profile re-run (U20-merged duty, same scheduled task as the weekly review): §1.1's output-pace/work-hours/tech-debt rows refreshed against a 30-day window (old values kept, not deleted); W1/W2/W4 got new evidence appended (CSS debt still growing, R3 backlog quantified at 10 vs. a cap of 5, night-hour share 40%→61.6%→72.7%); nothing removed, purely additive | course-weekly-review monthly addendum (30-day git log re-run) |
Core pivot: you no longer need to learn how to prompt (S2 already proves you can). This chapter teaches how to judge whether what the AI hands you is correct, good, and worth merging. Curation discipline: no material is authored here — every lesson points to a primary source and tells you what to watch, what to skip, and how to grade yourself. External links get a quarterly check. Format: every lesson ends with "So you can tell AI this…" — converting the concept into a sharper instruction.
Lesson 2.1 · How LLMs work (build the intuition for why they're wrong)
Source: 3Blue1Brown's "Neural Networks" series (focus: the three episodes on Transformers / Attention / How LLMs store facts).
Watch for: tokenization, attention weights, next-token probability — understand that "the model has no fact database, only statistical tendencies."
Self-check: can you explain to someone else why a model confidently invents an API name?
You might be making up this library's API. Give me the doc URL you're citing alongside the answer; anything you can't source, label UNVERIFIED and I'll check it myself.Lesson 2.2 · Evals: writing an exam for AI's output
Source: Anthropic docs, "Create strong empirical evaluations," plus the evals-related entries in the OpenAI Cookbook.
Watch for: the eval trinity — test set, rubric, passing bar — and where LLM-as-judge applies and where it doesn't.
Self-check: pick any AI-produced step outside your horoscope chart engine (e.g. Arena recap copy quality) and write 10 evals with expected answers.
Don't write the implementation yet. Give me 10 input-expected-output pairs as a test set first, at least 3 of them edge/adversarial cases. Once I approve the set, write the code, then run it yourself and report the pass rate.Lesson 2.3 · Probability & statistics: significance, distributions, and "too good to be true"
Source: MIT 18.05 (Introduction to Probability and Statistics — Bayesian inference and hypothesis-testing chapters only) + 3Blue1Brown's Bayes' theorem episode.
Watch for: p-value abuse, the base-rate fallacy, Simpson's paradox — study all of it against your own Arena confidence field and hit-rate data.
Self-check: using your own Arena prediction ledger, test whether the hit rate is significantly better than a coin flip, and state plainly whether the sample size is even large enough.
The improvement you're reporting might just be noise. Give me sample size, confidence interval, and a baseline comparison — no interval, no claim of 'better.'Lesson 2.4 · Linear algebra intuition: embeddings & similarity
Source: 3Blue1Brown's "Essence of Linear Algebra" (episodes 1–10 are enough).
Watch for: vector spaces, dot product = similarity, matrix = transformation. The goal isn't hand-computation — it's understanding what AI is actually proposing when it says "use embeddings for semantic dedup."
Explain how your chosen similarity metric (cosine vs. dot product vs. Euclidean) differs for this data distribution, and how the threshold was set.Lesson 2.5 · Algorithmic efficiency: Big-O as a review language
Source: MIT 6.006 (2020 edition, Lectures 1–3 plus the sorting and hashing lectures).
Watch for: just enough — you don't need proof technique, you need to smell a nested loop during review. Shares ground with Ch03's SPAR step A.
Self-check: report the per-frame cost order for any rAF loop in main.js.
This list will grow to 100,000 items eventually. Before writing code, report your approach's time/space complexity and the bottleneck; anything worse than O(n log n) needs a justification.Lesson 2.6 · Engineering craft: shell / git / debugging
Source: MIT Missing Semester (focus: Shell Tools, Version Control, Debugging and Profiling).
For you specifically: your git usage is frequent but narrow — commit/push flows smoothly, but bisect/rebase/worktree barely appear in your history. Half the cure for W5 is here.
Don't change it directly. git stash the current state first, give me a minimal repro I can bisect, and hand me a diff when it's fixed — not a new file.Lesson 2.7 · Rendering pipeline: the lesson your 868 kB main chunk owes you
Source: MIT Missing Semester's profiling lecture; for the browser-specific part (no Anthropic/OpenAI equivalent exists), Chrome DevTools' official Rendering docs — the one exception to the curation rule, because it is the primary source.
Watch for: layout → paint → composite; the 16ms budget; transform/opacity avoid reflow. Your site's 48 uses of backdrop-filter are exactly the mobile-GPU cost center the 12a audit already named.
This animation may only use transform and opacity. After the change, record 5 seconds in the DevTools Performance panel and show me whether there are any purple layout blocks.Lesson 2.8 · UI/UX taste: a gradable technical skill
Taste isn't mystical. Four dimensions, 25 points each, nothing ships below 70. Score it opportunistically every time you already do a visual review (the R3 list) — after 20 scores you'll have your own taste baseline.
| Dimension | 25-point standard | Your known bias |
|---|---|---|
| Visual hierarchy | Obvious "look here first" within 3 seconds; ≤3 font-size tiers; one hero per screen | The HUD page was self-reported over-dense by screenshot (the reason U8 was opened) |
| Spacing | 8px grid; within-group gap < between-group gap; no runaway "near-full-screen blank" whitespace | U13d's hero blank space = a leftover min-height value running out of control |
| Contrast | Body text passes WCAG AA (4.5:1); status color never relies on hue alone | A dark sci-fi theme is inherently high-risk — test page by page |
| Restraint | Motion only serves state changes; if removing an element doesn't break the page, remove it; ask "who needs this" before any new effect | Your strength — the entire U8 pass was subtraction |
Self-grade the interface you just generated on hierarchy/spacing/contrast/restraint (25 points each). Report your weakest dimension and how you'd fix it before showing me the code.Philosophy: learn to think, do not just paste answers. This is the fix for W3 — every algorithm in your project was AI-written; that option doesn't exist in an interview room. Pace: 3 problems a week, no more. The data (W4) shows you sprint, and algorithmic intuition only grows through spaced repetition — sprinting doesn't work here.
3.1 The four-stage ladder (deliberately anti-grind)
| Stage | Rating band | Length | Theme | Exit standard (objective, verifiable) |
|---|---|---|---|---|
| P1 | 800–1000 | 4 weeks | Implementation, brute force, math intuition | Solve a 1000-rated problem solo within 30 minutes |
| P2 | 1000–1300 | 6 weeks | Greedy, binary search, two pointers, prefix sums | State the solution out loud before coding it; the spoken version matches the final code |
| P3 | 1300–1600 | 8 weeks | Basic DP, BFS/DFS, sorting-based reasoning | Stable at 2 problems in Virtual Contests |
| P4 | 1600+ | ongoing | Fill gaps from interview feedback | Pass a mock interview |
One Virtual Contest a month (Div.3/Div.4 to start) — the 4th week's 3-problem quota is spent on it instead. The VC score curve is the only progress metric: no improvement means step back a stage, no shame, just data. Banned: chasing streaks, leaderboard-watching, "I feel good today so I'll do two extra" — the surplus gets repaid tomorrow as burnout (the Jul 5 50-commit day already proved this once).
3.2 The SPAR framework (four mandatory steps per problem)
- S — Solve alone (25-minute timer, no AI):
Write down your reasoning, even if it's wrong. Skip this step and everything after is void — AI may only appear in P/A/R.
- P — Probe (staged hints):
I'm working on this problem: [statement]. My current approach: [approach]. Don't give me the solution. Give staged hints: first point out only the single most critical flaw in my approach; when I say 'next level' give the next one; ≤2 sentences per level.
- A — Analyze (post-solve review):
Here's my AC code: [code]. Three things: ① report time/space complexity and the bottleneck (ties to Lesson 2.5); ② show me what you consider the most elegant solution and compare the difference; ③ what reusable pattern does this problem belong to — one sentence on how to recognize it.
- R — Riff (a variant to re-practice):
Based on this problem, write a variant with the same pattern but a different shell (change the narrative, change the constraint scale) — no solution. I'll self-test with it in three days.
SPAR records go into the training/ directory, archived weekly (reusing your S1 state-externalization discipline) — these records double as the interview material for 3.4.
3.3 The 2026 interview reality (your job-search strategy)
In 2026 technical interviews, pure whiteboard-algorithm rounds are shrinking; two newer rounds now carry equal weight:
Fix and explain a half-finished repo with an agent in 40 minutes
Tests task decomposition, setting acceptance criteria, and reviewing AI output — exactly your S1–S4 strength zone. Aim to show off your Urgent.md-style workflow here, not hide it.
Find the traps in an AI-generated PR
Your weakness shows here: performance traps (Lessons 2.5/2.7) and statistical traps (Lesson 2.3) you currently can't smell out. Run a mock review monthly on your own repo's AI diffs.
Still exists — this is what 3.1/3.2 are for
The goal isn't a 1900-rated competitor — it's "1600-level, and able to narrate the thinking clearly."
3.4 Portfolio > resume
You already have 9 pages with real URLs plus a full data pipeline — ahead of most candidates. What's missing: a short "how I split work with AI" write-up for each of Arena (data pipeline + prompt engineering), Horoscope (complex domain modeling + 518 tests), and the combat HUD (performance and scope adjudication) — pull the material straight from RELEASE_NOTES.md, and turn SPAR review notes directly into STAR stories.
Division-of-labor law: AI writes 100% of the pandas/SQL syntax; you own only the business logic and the data narrative. Every minute you spend on syntax is wasted — you already run this split in your own project (S2's data pre-digestion is exactly this), this chapter just systematizes it for the DA domain.
4.1 A 12-week path (business frameworks first)
| Week | Content | Output (must be showable) |
|---|---|---|
| W1 | Requirement-translation week — no code allowed. Turn a vague business question into a measurable analysis question: north-star metric, counter-metric, a veto rule on "whose decision does this change, and to what" | 10 "business question → analysis question" rewrites |
| W2 | More business frameworks: one rewrite exercise each for funnels, cohorts, and unit economics | 3 framework application notes |
| W3–4 | Statistical judgment (ties to Lesson 2.3): each lesson is a "where's the AI's result suspicious" hunt | 8 logged findings |
| W5–7 | Case 1 · Churn Prediction | A model + a one-page decision memo |
| W8–9 | Case 2 · Real-time BI Dashboard | A shareable, live dashboard URL |
| W10–11 | Case 3 · Unstructured Data Parsing | A structured table + quality report + narrative brief |
| W12 | Self-proposed capstone sprint: pick any public dataset | A portfolio entry (URL + one-page memo + workflow diagram) |
4.2 Human/AI division of labor for the three case studies
1. Churn Prediction (telecom/subscription public dataset)
2. Real-time BI Dashboard (simulated event stream / public API)
3. Unstructured Data Parsing (thousands of reviews/tickets → structured warehouse)
4.3 The core advanced skill: building an Eval Set for AI's data work
This is exactly where the line falls between a 2026 DA and "an intern who can use AI." The process is a fixed five steps:
- Sample:
draw 100 stratified random rows from AI-processed data — you don't get to cherry-pick the easy ones.
- Hand-label ground truth:
you label it yourself. These 100 rows are your gold set — the labor cost is the moat.
- Define the metric:
field-level accuracy/precision/recall for extraction tasks; a written 1–5 rubric for narrative outputs.
- Set the bar:
run once to get a baseline; the passing bar is a business-meaningful threshold above it (e.g. "field accuracy ≥95% before it's allowed into the warehouse").
- Run it as a regression:
rerun the gold set on every prompt/model change — your own prompts/README.md discipline of "retry once on parse failure, then give up and log it" carries straight over.
Bridging practice: run a mini eval (20 rows is enough) on your own Arena recap copy or sectors data pipeline first, before taking on the formal W10 case.
4.4 Cross-cutting discipline (mirrors the Ch01 Playbook)
Requirements go into a file before work starts (R5); AI output must pass a sanity-check list every time; every week's output must have a URL or a one-pager — "I learned something" is not an output; every analysis conclusion passes Lesson 2.3's three significance questions.
Positioning: push technical ability toward the hiring bar of top AI labs (Anthropic / OpenAI) and top quant firms. Designed by Fable 5 from a Principal Engineering Mentor's perspective, treating career progression as a strictly engineered system — with a baseline, a metric, and an automatic 4-week recalibration (see §5.6).
5.0 Baseline calibration: the target profile vs. your current position
Anthropic engineering's verified team profile (this chapter's design input):
| Fact | Data | What it means for you |
|---|---|---|
| It's fundamentally an infrastructure/systems-engineering corps | 40% of engineers come from backend / distributed systems / databases / cluster infra; only 3.3% specialize in RLHF | The biggest door is infra, not ML theory — why Pillar 1 gets the highest initial weight |
| Experience outweighs credentials | median industry experience 12.2 years; only 13.7% hold a PhD; mostly BS/MS practitioners from FAANG / Stripe / Databricks / Snowflake backgrounds | You don't need a PhD. You need a verifiable systems-engineering track record |
| A flat structure | 80% hold the Member of Technical Staff (MTS) title, requiring high autonomy and end-to-end ownership | Ownership is an independently trainable skill dimension — Pillar 3 |
| A "child-prodigy" pipeline | juniors with <3 years' experience only get through an extreme filter: IOI silver, Codeforces 2900+, Citadel/Jane Street alumni | This door is mathematically closed to you (see the two-gates argument below) |
The two-gates argument (this chapter's single most important strategic call)
There are two doors into companies like this.
Gate A — the child-prodigy door
CF 2900+ is a top-~200-in-the-world rating. From your current starting point of 800, this isn't a matter of effort — the path simply doesn't exist. Any course claiming it can walk you through this door is fraudulent.
mathematically closedGate B — the senior-engineer door
A 12.2-year median and 40% infra background mean this door is looking for "distributed-systems depth + an end-to-end track record + demonstrable engineering judgment" — and it's fully open to older candidates, no PhD, no famous school.
this chapter's betEvery resource in this chapter is staked on Gate B; the upgraded algorithm training in §5.2 only serves as a signal-booster for Gate B (clearing interview algorithm rounds + a quant-logic base), not the door itself. This call is re-examined at every gap analysis, but overturning it requires anomalous evidence from the VC score curve.
5.1 Pillar 1 · Distributed Systems & Cluster Infra (initial weight 50%)
Modern AI's real bottleneck is compute clusters and data pipelines, not model ideas. Curation discipline carries over from Ch02: no homemade material, only primary sources.
| Stage | Source (strictly curated) | Exit standard (verifiable, no self-deception) |
|---|---|---|
| I1 · Single-node foundations | "Designing Data-Intensive Applications" (Kleppmann), Parts 1–2 + MIT Missing Semester's profiling lecture | One page per chapter mapping "where this concept shows up / is missing on my own site" |
| I2 · Database internals | CMU 15-445 (Database Systems), including the B+Tree, buffer-pool and transaction-lecture projects | Complete at least 2 course projects and pass their own test suites |
| I3 · Distributed systems | MIT 6.824 (Distributed Systems) — the labs are the point, the lectures are the side dish | Pass all official tests for Lab 2 (Raft) and Lab 3 (KV on Raft) |
| I4 · Clusters & AI infra | After 6.824: public GPU-cluster scheduling material (official Kubernetes docs + major labs' public training-infra engineering blogs, checked quarterly) | Refactor your scheduled-task pipeline into a formal "queue + idempotent worker + retry-on-failure + observability" pipeline; write an RFC first |
AI-collaboration red line (specific to this pillar): lab code for 6.824/15-445 must be written by hand — this is Ch03's SPAR discipline carried over to systems courses. AI may only appear for (a) concept Q&A, (b) reviewing your code after it's already AC'd, (c) discussing design variants. Letting AI write Raft burns the entire course.
Connecting to what you already have: your arena/sectors data pipeline is the practice ground. After finishing I1's replication chapter, you should be able to answer "under which failure modes does my data pipeline double-write or lose writes" — a past double-run incident is already a live case study.
5.2 Pillar 2 · Elite Algorithmic & Mathematical Logic (initial weight 25%)
Ch03's P1–P4 (800→1600) don't change and remain the prerequisite. This section adds two more stages plus a quant-logic track on top.
| Stage | Rating band | Theme | Exit standard |
|---|---|---|---|
| P5 | 1600–1900 | Advanced DP (interval/bitmask/tree), graph theory (shortest path/DSU/topo sort), combinatorics | Stable at 3 problems in VCs; solo AC a Div.2 C-level problem within 45 minutes |
| P6 | 1900–2100+ | Data structures (segment tree/BIT), DP optimization, game theory, number theory | Reach the CF Candidate Master range (top few percent globally) |
Pace unchanged: still 3 problems a week + 1 VC a month — P5/P6 problems are heavier, so per-problem time naturally rises to 60–90 minutes, with total time held constant by problem count (the W4 red line). SPAR's four steps remain mandatory.
Quant-logic track (new, 1 problem a week, replacing rather than adding to the original 3rd problem): Jane Street/Citadel-style probability and expectation puzzles — source: "Fifty Challenging Problems in Probability" (Mosteller) + the MIT 18.05 problem sets. Exit standard: mentally solve a two-step conditional-probability-and-expectation derivation on a whiteboard, no scratch paper. This track also serves Ch02 Lesson 2.3 and quant-firm interviews.
Honest ceiling disclosure: exiting P6 (2100) is already the realistic ceiling signal for amateur training at a sustainable pace, and is more than enough to clear Gate B's algorithm round. 2900 is not in any plan — see the two-gates argument in §5.0.
5.3 Pillar 3 · End-to-End System Ownership (initial weight 25%)
MTS is defined by: no PM writing your requirements, no TL breaking down your tasks, no SRE catching your fall. This skill can be trained entirely live on your own site — treat feida.au as a production service you're responsible for running.
RFC-first policy
Any change taking more than a day gets a one-page RFC (problem/plan/alternatives/risk/rollback) first, stored in rfcs/. Your C5 Astro evaluation (roadmap §8.4) is already a qualifying RFC — turn that occasional habit into a standing policy.
Production discipline
Define SLOs for the site (uptime, main-chunk size budget, mobile LCP), check them monthly; write a blameless postmortem for every incident (like a past double-run) — these documents are your "12 years of experience" equivalent in a Gate B interview, the kind a resume line can't convey.
A quarterly self-directed project
One self-proposed project per quarter with no external spec, run through RFC → implementation → deployment → retro → public write-up (one engineering blog post). The write-up isn't optional — this is exactly how FAANG/Stripe-caliber engineers build public visibility.
Expand the end-to-end boundary
Your stack currently stops at "static site + scheduled tasks." As I3/I4 progress, push the boundary each quarter toward: a real backend service (with a database) → a queued pipeline → a multi-component system with SLOs. Every step's output must actually run on a production URL.
5.4 MTS baseline scorecard (the gap-analysis metric)
Scored every 4 weeks by the automatic loop (§5.6); scores are logged in this section's history table. Every score must cite evidence — impression-based scoring is banned.
| Dimension | Measurement signal | Current (2026-07-12) | Gate B water-mark |
|---|---|---|---|
| Infra depth | course-sequence stage + labs passed + pipeline-RFC quality | 1/10 (I1 not started) | 8/10 (I4 complete + production pipeline) |
| Algorithms | CF rating / VC score curve | 1/10 (unrated) | 7/10 (stable 1900+) |
| Math/logic | weekly quant-puzzle accuracy + review quality | no data yet — – | 7/10 (mental two-step expectation derivations) |
| Ownership | RFC count, postmortem count, SLO hit-rate, external write-ups | 4/10 (early shape, not yet a system) | 8/10 (institutionalized for 4 quarters) |
Score history:
| Date | Infra | Algo | Math | Ownership | Next-cycle weight change |
|---|---|---|---|---|---|
| 2026-07-12 | 1 | 1 | – | 4 | initial: 50/25/25 |
5.5 Relationship to Ch03/Ch04 (a fork that must be faced directly)
- Ch03: absorbed by this chapter as Pillar 2's prerequisite (P1–P4 → P5–P6 form one continuous ladder); SPAR and the monthly VC carry over entirely. No conflict.
- Ch04 (DA Playbook) and Ch05 (MTS Track) are two different career tracks that cannot run in parallel within a ≤10-hour weekly budget. This is a data conclusion, not an attitude: Ch04 needs its full 12-week budget, Ch05's I1–I4 need a full 12–18 months. My recommendation: with MTS as the primary track, downgrade Ch04 to "an available hedge" — its W1–2 business-framework and 4.3 Eval Set methodology are already mostly covered by Ch02/your prompts spec, and can be cashed in within 12 weeks whenever a DA offer is actually needed. This fork is yours to decide — log the decision in the next §1.6 entry. (Superseded 2026-07-12 v3.0: the primary track is now pending the Chapter 06 placement test — see §0.4.)
- Time-budget reallocation (under Ch05 as primary track): ≤10 hours/week = Pillar 1 ~5h + Pillar 2 ~3h (including the quant problem) + Pillar 3 ~2h (RFC/retro/writing). The appendix's pace-control clause is updated to match.
5.6 · The 4-week automatic assessment loop
Executed by the scheduled task mts-gap-analysis. Mechanism:
- Trigger:
every 4 weeks (approximated monthly given cron's expressive limits), offset half a month from the Ch01 review task to form a biweekly self-review rhythm.
- Assess:
collect this period's git output, SPAR/VC records, lab test pass counts, and RFC/postmortem output, and score against the §5.4 scorecard (citing evidence).
- Gap analysis:
identify the weakest of the three pillars, and check whether the two-gates argument still holds.
- Rewrite dynamically:
update course.md's §5.4 score history and next-period task difficulty (weight the weakest link higher, raise difficulty on dimensions already met); sync course.html's Chapter 05 card highlights; commit and push (these two files only), so https://feida.au/course.html stays in sync with actual progress.
- Circuit breaker:
if scores stall for two consecutive periods and time logs show over-budget hours, the loop must lower difficulty rather than push for more work — the course adapts to the person, not the other way around (the W4 law).
Nature change: from v3.0, within course scope Fable is no longer an answer vendor — it's a mentor. This isn't a tone preference, it's the training mechanism: W3 exists precisely because "AI writes it + behavior-only review" bypassed your own thinking loop.
6.1 The mentorship protocol (in effect now)
- Two-mode boundary: production site work (bug fixes, pushes, scheduled tasks) stays in executor mode, untouched by this protocol. Any question inside a Chapter 00 tech-tree node defaults to mentor mode.
- Mentor-mode rules (SPAR-P generalized): no complete answers. Level 1 names only the single most critical flaw in your approach, or asks one counter-question; say "next level" to continue; ≤2 sentences per level; still stuck after 3 levels → directional pseudocode, never finished code.
- Exemption clause: saying "just give me the answer" grants a one-time exemption — logged in the §6.5 notes column. Exemption frequency is itself assessment data (frequent exemptions = the node is ahead of you; lower the node, not the discipline).
6.2 The three-dimension scorecard (0–10, every score must cite evidence)
| Dimension | Covers | Measurement signals |
|---|---|---|
| D1 · Programming Mastery | Architecture judgment, UI/UX implementation (ties to Lesson 2.8's four dimensions), clean code | Micro-test scores; R6 weekly architecture-review records; real problems caught while reviewing AI output |
| D2 · Math Logic & Algorithms | Complexity instinct, Codeforces-style solving, quant puzzles | SPAR records; the VC curve (shared with §5.4); weekly quant-puzzle accuracy |
| D3 · AI/LLM Intuition | Prompt/context engineering, output evaluation, eval design, practical use of Claude's context window | Gold-set quality; context-budget tables; micro-tests; exemption frequency (inverse signal) |
6.3 Assessment cadence
Micro-test: once a week, ≤30 min, rotating across the three dimensions (small coding task / CF-style problem / architecture thought experiment / eval-design exercise), scored on the spot into §6.5. Weekly auto-review: every Monday 20:00 the scheduled task course-weekly-review posts the week's data analysis, week-over-week comparison and an objective vibe-coding assessment to the Weekly Review section below. Monthly: merged into the 12th's course-ch01-monthly-review — reviewing the three-dimension curve. Circuit breaker: two consecutive missed micro-tests → lower that week's other course load instead of making up tests (the W4 law: the course adapts to the person).
6.4 Placement Test #1 (issued 2026-07-12 — status: awaiting submission)
Rules: Q2 must be done alone — 25-minute timer, no AI of any kind (SPAR-S discipline). Q1/Q3 may use references but AI may not answer for you. Report actual time spent per question when submitting. Scores go into §6.5 and the primary-track call goes into §0.4.
Q1 · D1 Programming Mastery (architecture design, ≤1 page pseudocode + notes)
The serial.html reader's state is scattered across closure variables and several localStorage keys covering theme, layout, and per-book reading progress. The next feature is a multi-bookmark list. Design a createReaderStore() data layer: ① interface signatures (≤10 methods); ② how vitest tests it without touching real localStorage; ③ the migration/compat strategy for existing users' old keys. Design only — no full implementation.
Q2 · D2 Algorithms (25 minutes, no AI)
A novel has n chapters, chapter i has w[i] characters (1 ≤ n ≤ 2×10⁵, w[i] ≤ 10⁹). A reader reads v characters per minute, starting from the beginning of chapter s, reading continuously. Given q queries (q ≤ 2×10⁵), each (s, t): after t minutes (t ≤ 10¹⁸), which chapter are they in and how many characters remain in it? Output DONE if the book is finished. First state the approach and its complexity in 2–3 sentences, then write the code (any language).
Q3 · D3 AI/LLM Intuition (≤15 lines)
You're dispatching an agent to fix one visual bug in styles.css (7,444 lines), with only a textual description of a screenshot as the clue, under a hard 30k-token context budget. Give your context-budget table: what goes in, what is deliberately excluded, how the agent fetches what it lacks on demand, and what acceptance criterion tells you the fix is right.
6.5 Score history
| Date | D1 | D2 | D3 | Event | Notes |
|---|---|---|---|---|---|
| 2026-07-12 | – | – | – | Placement Test #1 issued | awaiting submission; baseline unset |
Auto-published every Monday 20:00 by the scheduled task course-weekly-review: the week's repo data (commits, hour distribution, tests, chunk size, review backlog), a comparison against previous weeks, and an objective three-dimension vibe-coding assessment (evidence-cited, per §6.2). Newest first.
This week's snapshot: commit volume rose again, though a large share of the raw file/line-count total came from a single mislabeled commit that bulk-added disposable build-verification artifacts rather than real feature work — a hygiene lapse worth flagging on its own. Excluding that outlier, the week's real footprint was smaller than the prior week's. Test suite: still 100% passing, and growing. Build size: essentially flat for the first time across these reports — a genuine discipline win, helped by wider use of feature-flag gating for risky visual work. Late-night work concentration eased from its recent peak but remains elevated. Review backlog: the tracking document that held last week's pending-review count was restructured this week and no longer carries a live per-item count — a reconstructed estimate suggests it's still above the standing cap.
Three-dimension assessment (§6.2, evidence-cited): D1 Programming Mastery — 6/10 (unchanged). Real wins: test suite grew while staying at 100% pass, bundle size held flat despite a heavy feature week (new work landed in separate chunks rather than growing the main bundle), a chronic tooling bug was correctly root-caused this week instead of re-applying an old workaround, and flag-gating was visibly adopted as the default posture for risky visual work. Against that: the mislabeled bulk commit shipped disposable build artifacts and sat unresolved in git at week's end — exactly the kind of mismatch between commit message and diff content a review process should catch and didn't; and the review-backlog tracker was restructured the same week the backlog it tracked was flagged as over cap, with no replacement put in its place. Wins and lapses roughly cancel; score holds at 6. D2 Math Logic & Algorithms — no score (–). Same gap as last week: no placement-test submission or weekly SPAR log exists yet, two weeks running. D3 AI/LLM Intuition — 7/10 (unchanged). A new section cataloging this week's specific instances of AI-generated prompts asserting false facts about the existing codebase, turned into a standing verification rule, is genuine meta-level eval design applied to the AI-collaboration loop itself. Working against a higher score: the mislabeled bulk commit above was AI-authored like the rest of the week's commits, and its message was never checked against its own diff before landing — an unverified AI output shipped and sat for days before this report caught it. Genuine sophistication in the cataloging work, offset by a live instance of the exact failure mode it exists to prevent; score holds at 7.
Bottom line: the two headline numbers that looked worst last week both moved in the right direction, and flag-gating is now visibly the default for risky visual work. But this week also produced a new, concrete hygiene failure (disposable files committed under a misleading message, still unresolved) and quietly lost the instrument that was tracking the review backlog. Recommendation: before adding new scope, clean up the stray build artifacts, stand up a real per-item backlog tracker, and keep next week's load at or below the standing weekly-hour ceiling.
This week's snapshot: commit velocity roughly doubled versus the six-week baseline. Test suite grew and stayed at 100% passing. The main JS bundle shrank sharply, but that reflects a vendor-chunk split landing mid-week rather than new efficiency — total bytes across all chunks actually grew, since new features landed on top of the split. The pending-review backlog is now double its self-imposed cap and hasn't shrunk despite more items completing this week. Late-night work concentration climbed again, continuing an upward trend across every measurement so far.
Three-dimension assessment (§6.2, evidence-cited): D1 Programming Mastery — 6/10. This week's vendor-chunk split and CI budget script, plus a couple of genuine pure-function refactors, are real architecture wins. But the review backlog sitting at double its cap, and ongoing CSS-debt growth, show the verification and cleanup gates aren't holding under this week's pace; that caps the score. D2 Math Logic & Algorithms — no score (–). No placement-test submission or SPAR log exists yet for this dimension. D3 AI/LLM Intuition — 7/10. Several RFCs this week each carry an explicit weighted rubric scoring the codebase against a chartered standard with per-criterion evidence — a direct eval-design signal, alongside concrete context-budget engineering work. Capped below 8 because several rubric line items in those same RFCs flag themselves as unverified estimates — the eval rigor has an honest, self-admitted gap.
Bottom line: this week's commit pace and late-night concentration are both trending in the wrong direction relative to every prior measurement, and the review backlog is double its cap with zero net reduction. Per the course's own rule that it adapts to the person and not the other way around, next week's course load should be held at or below the standing weekly-hour ceiling, and no new visual work should start until the review backlog is worked down — this is not a week to add more.