Distributed Systems Engineering — Part 1: Clocks, Time & Causality
Why wall clocks lie in distributed systems, how logical clocks restore causality, and the precise guarantees you can and cannot rely on when reasoning about event ordering.
Thoughtfully researched, carefully written. Long-form pieces, deep dives, and expert perspectives — for curious minds who want more than headlines.
Why wall clocks lie in distributed systems, how logical clocks restore causality, and the precise guarantees you can and cannot rely on when reasoning about event ordering.
Enforcing strict module contracts in a monorepo: path aliases, project references, barrel files, and why you should treat your shared packages as published APIs.
Compile-time safety stops at the API boundary. This part covers building end-to-end type safety from HTTP request to database response using Zod schemas.
Constraint propagation, infer keyword, template literal types, and how to write utility types that the compiler can fully verify — no any escapes.
A deep dive into TypeScript's structural type system, variance, conditional types, and mapped types — understanding the engine before tuning it.
A thorough examination of how large language models are changing software development — from copilots to autonomous agents and beyond.
A candid look at what actually happened when we split our monolith — the wins, the unexpected failures, and whether it was worth it.
Moving beyond metaphor — quantifying the real impact of technical debt on velocity, morale, and business outcomes with concrete measurement strategies.
How experienced engineers think through complex technical problems — the mental models, heuristics, and systematic approaches that separate good from great.