Skip to content

Commit 96e9b20

Browse files
authored
Principal/distinguished coverage: Part E (Ch 11-12), the principal's-lens appendix, Tier 4 rubric (#7)
* notes: verified facts for the principal's-lens pass * Appendix C: add Tier 4 - Judge to the rubric New tier-table row for principal+ answers (consequence, economics, kill-criteria), two extra cross-tier signals framed so staff readers see the next rung, and a Principal variant of the liveness worked example showing the jump from mechanism to policy. * Add Appendix D: the principal's lens; Further reading becomes E New appendix for principal/distinguished prep: a per-chapter zoom-out (each subsystem's limits and economics at org scale), four decision tables (when-not-Kubernetes, tenancy models, managed vs self-hosted, multi-cluster patterns with blast radius), and five argue-both-sides critique prompts with committed positions. Adds the Borg lineage papers to Further reading (now Appendix E), widens build.py's hardcoded Appendix A-D ranges to A-E so the new lettering renders in the TOC, and updates CONTRIBUTING's appendices description. * STYLE: appendices budget covers the principal's lens * STYLE: sanction the Part E judgment format; frontier facts in notes Scopes the chapter-shape and question contracts to Chapters 1-10 and defines the Part E shape: optional flows, Scenario and Capstone section formats, Tier 2/3/4 questions (no Tier 1), budgets for ch11 and ch12, audience widened to principal. Records verified frontier project status (Crossplane graduated, SpinKube sandbox, KCP) in research-notes. * Add Chapter 11 - Fleet, Platform & Economics (Flows 29-30) The first Part E chapter: fleet architecture (rings, drift, replicated-independent default), capacity economics (requests as a price signal, GPU idleness), and platform engineering (abstraction choice, escape hatches, platform SLOs). Two new flows - a fleet-wide config rollout and a breaking CRD change across the fleet - plus the book's first Scenario section (a shared-platform design review) and Tier 2/3/4 questions per the new Part E contract. * Add Chapter 12 - Design Judgment: Lineage, Frontier & Capstones The second Part E chapter: a deliberately brief Borg/Omega/Kubernetes lineage (the three carried bets and their price), six frontier bets each with verified state, a judgment call, and a when-it-matters trigger (AI scheduling, eBPF/sidecar-less, hosted control planes, control-planes-for-everything, WASM, edge fleets), and the book's two Capstone exercises: 'Redesign Kubernetes in 2026' and a model one-page platform strategy with kill-criteria. Tier 2/3/4 questions per the Part E contract. * Wire Part E into the book's structure and counts FLOWS.md gains the Part E section (Flows 29-30) and the fleet-scale intro clause; README and cover widen the audience to principal and count 30 flows; build.py PARTS gains Part E; CONTRIBUTING documents ch11/ch12; STYLE budgets match the measured chapters. * Fix Q12.4 control-plane-down reference (Flow 27, not 26); FLOWS intro covers Part E
1 parent 77decb4 commit 96e9b20

11 files changed

Lines changed: 408 additions & 20 deletions

File tree

CONTRIBUTING.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ chapters/ One markdown file per chapter — this is the content you edit
1616
ch08.md Storage & CSI (Flows 24-25)
1717
ch09.md CRI, device plugins & DRA (Flow 26 + extension map)
1818
ch10.md Scalability, resiliency & design (Flows 27-28)
19-
appendices.md Quick-reference tables, glossary, rubric, further reading
19+
ch11.md Fleet, platform & economics (Flows 29-30, Part E judgment format)
20+
ch12.md Design judgment & capstones (Part E judgment format, no flows)
21+
appendices.md Quick-reference tables, glossary, rubric, principal's lens, further reading
2022
STYLE.md The writing contract — read before editing any chapter
2123
notes/ Research notes (version facts) and the original plan
2224
build/ PDF build pipeline

FLOWS.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
# The 28 flows
1+
# The 30 flows
22

3-
Every flow traces one event end to end, from the command you type to the container that runs.
3+
Every flow traces one event end to endfrom the command you type to the container that runs, and in Part E, across a whole fleet of clusters.
44
Each has numbered steps, a diagram, and the ways it fails in production.
55

6-
Flow 8 is the master flow: other chapters zoom into their segment of it and say so.
6+
Flow 8 is the master flow: other chapters in Parts A–D zoom into their segment of it and say so; Part E's flows run above it, across clusters.
77

88
## Part A — Foundations & control plane internals
99

@@ -70,3 +70,10 @@ Flow 8 is the master flow: other chapters zoom into their segment of it and say
7070

7171
27. [What happens when the control plane is down](chapters/ch10.md#flow-27-what-happens-when-the-control-plane-is-down)
7272
28. [What happens when etcd loses quorum](chapters/ch10.md#flow-28-what-happens-when-etcd-loses-quorum)
73+
74+
## Part E — Judgment at principal scale
75+
76+
**[Chapter 11 — Fleet, Platform & Economics](chapters/ch11.md)**
77+
78+
29. [What happens when a fleet-wide config change rolls out](chapters/ch11.md#flow-29-what-happens-when-a-fleet-wide-config-change-rolls-out)
79+
30. [What happens when a breaking CRD change ships across the fleet](chapters/ch11.md#flow-30-what-happens-when-a-breaking-crd-change-ships-across-the-fleet)

README.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# k8s-worksheet
22

3-
**Kubernetes Internals Interview Worksheet** — a flow-first prep guide for senior and staff-level interviews on Kubernetes internals.
3+
**Kubernetes Internals Interview Worksheet** — a flow-first prep guide for senior, staff, and principal-level interviews on Kubernetes internals.
44

55
**[Download the PDF](https://github.com/sanketsudake/k8s-worksheet/releases/latest/download/kubernetes-internals-worksheet.pdf)** · [all releases](https://github.com/sanketsudake/k8s-worksheet/releases)
66

@@ -28,10 +28,15 @@
2828

2929
- [Chapter 10 — Scalability, Resiliency & System Design](chapters/ch10.md)
3030

31+
**Part E — Judgment at principal scale**
32+
33+
- [Chapter 11 — Fleet, Platform & Economics](chapters/ch11.md)
34+
- [Chapter 12 — Design Judgment: Lineage, Frontier & Capstones](chapters/ch12.md)
35+
3136
**Reference**
3237

3338
- [Appendices](chapters/appendices.md)
34-
- [The 28 flows](FLOWS.md)
39+
- [The 30 flows](FLOWS.md)
3540

3641
## Contributing
3742

STYLE.md

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
## Audience and voice
66

7-
- Reader: senior/staff engineer preparing for a deep Kubernetes interview.
7+
- Reader: senior, staff, or principal engineer preparing for a deep Kubernetes interview.
88
- Simple technical English. Short sentences (aim ≤ 20 words). One idea per paragraph. Paragraphs ≤ 4 sentences.
99
- Define every piece of jargon at first use, in one clause: "the informer (a client-side cache that watches the API server)".
1010
- High signal, low noise: no filler ("It is important to note that…", "In the world of Kubernetes…"), no marketing tone, no repetition of what another section already said — cross-reference instead ("see Flow 1").
@@ -13,11 +13,11 @@
1313

1414
## File format
1515

16-
- One markdown file per chapter: `chapters/chNN.md` (`ch01.md``ch10.md`, `appendices.md`).
16+
- One markdown file per chapter: `chapters/chNN.md` (`ch01.md``ch12.md`, `appendices.md`).
1717
- Start with `# Chapter N — Title`. Use `##` for sections, `###` for flows and questions. No deeper nesting.
1818
- No HTML in the markdown. Tables in GitHub style. Code in fenced blocks with language tag (`yaml`, `go`, `bash`).
1919

20-
## Chapter shape (in this order)
20+
## Chapter shape (Chapters 1–10, in this order)
2121

2222
1. **Opening ("Why this chapter")** — 3–6 sentences: what the interviewer is probing here and the one mental model to hold.
2323
2. **Concepts** — the minimum background needed to follow the flows. Keep short; teach details inside the flows.
@@ -113,7 +113,7 @@ fence, on its own line, as plain italic text with no internal `**bold**`.
113113

114114
## Question format (strict)
115115

116-
Section `## Questions`. Three subsections: `### Tier 1 — Explain`, `### Tier 2 — Reason`, `### Tier 3 — Design & Debug`.
116+
Section `## Questions`. Chapters 1–10: three subsections `### Tier 1 — Explain`, `### Tier 2 — Reason`, `### Tier 3 — Design & Debug`. Part E chapters (11–12): `### Tier 2 — Reason`, `### Tier 3 — Design & Debug`, `### Tier 4 — Judge` — no Tier 1; mechanism recall belongs to Chapters 1–10.
117117

118118
Each question:
119119

@@ -125,18 +125,32 @@ Each question:
125125
*Strong answers also mention:* one or two things that distinguish a great candidate.
126126
```
127127

128-
Number questions `N.M` per chapter (chapter.number, continuous across tiers). Per chapter: 3–4 Tier 1, 3–4 Tier 2, 2–3 Tier 3. Tier 3 questions are scenarios: a symptom to debug or a system to design — the answer walks the reasoning, not just the conclusion.
128+
Number questions `N.M` per chapter (chapter.number, continuous across tiers). Chapters 1–10: 3–4 Tier 1, 3–4 Tier 2, 2–3 Tier 3. Part E: 3–4 Tier 2, 2–3 Tier 3, 2–3 Tier 4. Tier 3 questions are scenarios: a symptom to debug or a system to design — the answer walks the reasoning, not just the conclusion. Tier 4 questions demand a committed position: the answer names assumptions and kill-criteria, argues the strongest counter-position, then decides (the Appendix C Tier-4 row is the rubric).
129+
130+
## Part E chapters (judgment format)
131+
132+
Chapters 11–12 target principal-level judgment and relax the Chapters 1–10 shape:
133+
134+
1. **Opening ("Why this chapter")** — same as Chapters 1–10.
135+
2. **Concepts** — may carry most of the chapter.
136+
3. **Flows** — optional. When present, the strict flow format and all mermaid rules apply unchanged.
137+
4. **Scenario sections**`### Scenario: <title>`: a presented architecture or plan in 3–6 sentences, then `**Critique.**` — an 8–15 line model answer naming what is wrong, what is right, and what to ask next.
138+
5. **Capstone sections**`### Capstone: <title>`: an exercise prompt, a model artifact or answer, then `**What reviewers look for.**` mapped to the Appendix C Tier-4 row.
139+
6. **Questions** — Tiers 2/3/4 as above.
140+
7. **Common mistakes & red flags** — same as Chapters 1–10.
141+
142+
Diagrams are optional in Part E; every mermaid rule applies when one appears.
129143

130144
## Cross-references
131145

132146
- Refer to flows by global number ("Flow 8"), figures by "Figure 4.2", chapters by "Chapter 5".
133-
- The master flow is Flow 8 (pod creation → Running, Chapter 4). Other chapters zoom into their segment of it and say so.
147+
- The master flow is Flow 8 (pod creation → Running, Chapter 4). Other Chapters 1–10 zoom into their segment of it and say so; Part E chapters operate above it, at fleet scale.
134148

135149
## Length budgets (hard-ish)
136150

137151
- Ch 1: ~1,900 words · Ch 2: ~3,500 · Ch 3: ~2,600 · Ch 4: ~4,700
138152
- Ch 5: ~3,800 · Ch 6: ~3,900 · Ch 7: ~3,000 · Ch 8: ~2,400
139-
- Ch 9: ~2,400 · Ch 10: ~3,900 · Appendices: ~2,300
153+
- Ch 9: ~2,400 · Ch 10: ~3,900 · Ch 11: ~3,200 · Ch 12: ~3,000 · Appendices: ~3,900
140154
- Counting rule: `sed '/^```/,/^```/d' chapters/chNN.md | wc -w` — fenced blocks (diagrams and code) do not count.
141155
- Over budget → cut noise, not flows. (Budgets reset Aug 2026 to the shipped book plus ~5% headroom; the original targets had drifted ~30–95% under reality, which made the contract unenforceable.)
142156

build/build.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
("Part B — Controllers", ["ch05.md", "ch06.md"]),
2323
("Part C — Standards & Extension Interfaces", ["ch07.md", "ch08.md", "ch09.md"]),
2424
("Part D — Operating at Scale", ["ch10.md"]),
25+
("Part E — Judgment at Principal Scale", ["ch11.md", "ch12.md"]),
2526
("Appendices", ["appendices.md"]),
2627
]
2728

@@ -108,9 +109,9 @@ def flow_sub(mm):
108109
html = md2html(text)
109110
html = re.sub(r"<h3>Flow (\d+): (.*?)</h3>", flow_sub, html)
110111
if fn == "appendices.md":
111-
html = re.sub(r"<h2>(Appendix [A-D][^<]*)</h2>",
112+
html = re.sub(r"<h2>(Appendix [A-E][^<]*)</h2>",
112113
lambda mm: f'<h2 class="chapter-title appendix" id="{slug(mm.group(1)[:10])}">{mm.group(1)}</h2>', html)
113-
for mm in re.finditer(r'id="(appendix-[a-d])">([^<]+)<', html):
114+
for mm in re.finditer(r'id="(appendix-[a-e])">([^<]+)<', html):
114115
toc_entries.append((0, mm.group(2), mm.group(1)))
115116
body_parts.append(f'<section class="chapter">{html}</section>')
116117
else:
@@ -125,7 +126,7 @@ def flow_sub(mm):
125126
cls = "toc-part" if level == 0 else "toc-ch"
126127
toc_html.append(f'<li class="{cls}"><a href="#{anchor}"><span class="t">{title}</span><span class="pg"></span></a></li>')
127128
toc_html.append("</ul>")
128-
toc_html.append('<h2 class="toc-h">The 28 flows</h2><ul class="toc flows">')
129+
toc_html.append('<h2 class="toc-h">The 30 flows</h2><ul class="toc flows">')
129130
for num, title, anchor in sorted(flow_entries):
130131
toc_html.append(f'<li class="toc-flow"><a href="#{anchor}"><span class="t"><b>{num}.</b> {title}</span><span class="pg"></span></a></li>')
131132
toc_html.append("</ul></div>")

build/cover.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<div class="kicker">Interview Preparation Worksheet</div>
33
<div class="rule"></div>
44
<h1>Kubernetes Internals,<br/>Controllers &amp; the Standards<br/>Behind Them</h1>
5-
<div class="sub">A flow-first guide for senior and staff engineers: 28 end-to-end
5+
<div class="sub">A flow-first guide for senior, staff, and principal engineers: 30 end-to-end
66
"what happens when&hellip;" walkthroughs, sequence diagrams, failure modes, and
77
tiered interview questions with model answers &mdash; covering the control plane,
88
controller machinery, CNI, CSI, CRI, DRA, and system design at scale.</div>

0 commit comments

Comments
 (0)