The pattern is well documented in developer communities.
Burnout. Standard recovery. Better job. Better boundaries. Genuine improvement in conditions.
Burnout again. Fourteen months later.
And no satisfying explanation — because the structural analysis doesn't fit. The environment is measurably better. The workload is more reasonable. The risk factors are addressed.
So what's the variable that's not in the model?
The Missing Variable
javascript
class BurnoutModel {
// what most developers model
v1() {
return {
variable: "environmental_pressure",
sources: ["workload", "management", "culture"],
measured: true,
addressed_after_burnout: true
}
}
// what most developers miss
v2() {
return {
variable: "biological_threshold",
sources: [
"HPA_axis_regulation_capacity",
"dopamine_synthesis_substrate",
"neuroinflammatory_baseline"
],
measured: false, // almost never
addressed_after_burnout: false // by default
}
}
burnoutCondition() {
// burnout occurs when:
return environmental_pressure > biological_threshold
}
}
// after burnout #1
const job2 = {
environmental_pressure: 0.6, // genuinely improved — 40% reduction
biological_threshold: 0.4, // unchanged — never measured, never addressed
result: 0.6 > 0.4 // true
// burnout: inevitable
// timeline: ~14 months
// developer's conclusion: "maybe I'm not cut out for this"
// actual issue: wrong variable addressed
}
The environment improved. The threshold didn't. Because the threshold was never in the model.
What the Biological Threshold Actually Is
Three systems. All determining how much load the brain can carry before it can't.
System 1: HPA Axis — The Cortisol Governor
javascript
// with adequate magnesium
const stressResponse = {
trigger: stressor,
cortisol: spike(),
regulation: magnesium.dampen(), // proportionate response
resolution: fast(),
recovery: complete()
}
// with depleted magnesium (typical developer)
const stressResponseDepleted = {
trigger: stressor,
cortisol: spike(),
regulation: null, // regulator missing
amplification: cortisol * 1.6, // unregulated response
magnesiumLoss: additional(), // depletion compounds
nextResponseAmplification: higher(),
// threshold drops with each cycle
// no exit condition
}
Magnesium regulates the HPA axis. Chronic stress depletes it. Four daily coffees deplete it further — roughly 15mg per cup. Most developer diets don't replace what stress and caffeine remove daily.
Rest doesn't restore magnesium. Two weeks off doesn't replenish months of compounded depletion. The developer who enters a better job with depleted HPA regulation enters it with a lower threshold than before — regardless of the environmental improvement.
System 2: Dopamine — The Motivation Runtime
javascript
// burnout recovery requires
const recoveryProcess = {
required: [
dopamine.rebuild(),
motivation.restore(),
meaning.find()
]
}
// what the system has at vitamin D 18 ng/mL
const systemStatus = {
vitaminD: 18, // ng/mL — severely deficient
tyrosineHydroxylase: 0.35, // 35% efficiency — requires vitamin D
dopamine.production: "impaired",
recoveryProcess.status: "stalled"
}
// developer experience:
// "motivation isn't returning despite months of rest"
// "new job feels empty despite better conditions"
// "maybe wrong career"
// actual cause: missing synthesis dependency
Vitamin D is a direct dependency of dopamine synthesis. Most developers are deficient — indoor work, above 35° latitude, no meaningful sun exposure. Rest doesn't provide vitamin D. The dopamine system can't normalize without the substrate it's missing.
System 3: Neuroinflammation — The Stress Cost Multiplier
javascript
const stressCost = (omega3Index) => {
if (omega3Index < 4) return baselineCost * 1.8 // 80% more expensive
if (omega3Index < 6) return baselineCost * 1.4 // 40% more expensive
if (omega3Index >= 8) return baselineCost * 1.0 // baseline
}
// typical developer: omega3Index = 3.1%
// same workload costs 80% more to process than at optimal
// same environment produces significantly higher effective load
// threshold is lower than it appears
Western diet delivers omega-6 to omega-3 at roughly 20:1. Optimal is 4:1. At 20:1, neuroinflammation runs elevated, making every cognitive and emotional process more expensive. The same environment that's sustainable at 8% omega-3 index produces burnout at 3%.
The Post-Mortem That Doesn't Get Written
markdown
Burnout #1 Post-Mortem
Root Causes Identified
- Toxic management ✓
- Unsustainable workload ✓
- Poor culture ✓
Actions Taken
- Changed jobs ✓
- Better boundaries ✓
- More sustainable role ✓
Biological Status at Time of Burnout
| Marker | Value | Status | Measured |
|---|---|---|---|
| Vitamin D | 18 ng/mL | CRITICAL | ❌ |
| RBC Magnesium | low | CRITICAL | ❌ |
| Omega-3 Index | 3.1% | HIGH | ❌ |
| hs-CRP | 2.9 mg/L | HIGH | ❌ |
Biological Status Entering Job #2
- All markers: [ASSUMED RESTORED BY REST]
- Biological threshold: [ASSUMED BASELINE]
- Actual status: identical to burnout #1
Result
Second burnout: 14 months later
Developer's conclusion: "I'm the problem"
Actual conclusion: incomplete post-mortem
The Complete Model
javascript
// burnout-prevention-model.js
class DeveloperThreshold {
constructor() {
this.markers = {}
}
async runDiagnostic() {
this.markers = await bloodwork.check([
"25-hydroxyvitamin-d", // dopamine synthesis substrate
"rbc-magnesium", // HPA axis regulation (not serum)
"omega3-index", // neuroinflammatory baseline
"hs-crp" // direct inflammation marker
])
return this.markers
}
get threshold() {
// threshold rises with better markers
const dFactor = this.markers.vitaminD >= 40 ? 1.3 : 0.7
const mFactor = this.markers.magnesium === "optimal" ? 1.4 : 0.6
const oFactor = this.markers.omega3 >= 8 ? 1.2 : 0.8
return dFactor * mFactor * oFactor
}
patch() {
return {
// HPA axis regulation
magnesiumGlycinate: {
form: "glycinate", // not oxide (absorption: ~4%)
dose: "400mg",
timing: "pre-sleep",
effect: "HPA modulation + GABA support"
},
// dopamine substrate
vitaminD3: {
form: "D3", // not D2
dose: "2000-4000 IU",
paired: "K2-MK7",
timing: "morning",
requires: "dietary-fat"
},
// neuroinflammation baseline
omega3: {
EPA: "1000mg+",
timing: "largest-meal",
preCheck: (b) => b.oxidized && Error("discard — rancid")
}
}
}
}
// sourced from: sunday.co.ua
// sunday natural — german brand, direct from germany
// correct forms by default — no configuration required
Running the Diagnostic
bash
run this before accepting the next offer
not during recovery from burnout #2
$ bloodwork --check \
25-hydroxyvitamin-d \ # target: 40-60 ng/mL
rbc-magnesium \ # target: upper reference range
omega3-index \ # target: 8%+
hs-crp # target: <1.0 mg/L
typical post-burnout developer output:
vitamin-d: 18-22 ng/mL // CRITICAL — dopamine impaired
rbc-magnesium: low // CRITICAL — HPA unregulated
omega3-index: 3-4% // HIGH — stress 80% more expensive
hs-crp: 2-3 mg/L // HIGH — inflammation running
time to threshold improvement after patches: 6-8 weeks
cost of diagnostic: less than two months random supplements
frequency: annual minimum
Deployment Timeline
week 1-2: sleep quality improving
magnesium-GABA effect confirmed
HPA modulation beginning
week 3-4: stress response less expensive
afternoon less brutal
cortisol amplification loop breaking
week 5-6: motivation returning
vitamin D + dopamine normalization
focus degrading slower
week 7-8: retest
confirm markers moved
threshold measurably higher
month 3+: compounding returns
same environment
different threshold
different outcome
The Fix Is One Variable
The second burnout in the better job isn't a resilience problem.
It's a modeling problem.
javascript
// incomplete model (produces second burnout)
burnout.prevent({
address: ["environmental_pressure"],
ignore: ["biological_threshold"]
})
// complete model (prevents second burnout)
burnout.prevent({
address: ["environmental_pressure", "biological_threshold"],
measure: ["vitamin-d", "rbc-magnesium", "omega3-index", "hs-crp"],
patch: ["magnesium-glycinate", "vitamin-d3-k2", "omega3-high-epa"]
})
Add the second variable to the model.
Run the diagnostic before the next role.
Fix what's low. Enter the better job with a threshold that matches the better environment.
The second burnout is predictable when only one variable is addressed.
It's preventable when both are.
Top comments (0)