Blog

Articles, guides, and notes on software engineering.

Prerequisite Knowledge Before Starting a Risk Assessment
Security 2026-08-21

Prerequisite Knowledge Before Starting a Risk Assessment

A single map of the prerequisite knowledge worth having before you start a risk assessment. Starting from assets, threats, vulnerabilities, and risk, it places NIST SP 800-30, ISO/IEC 27005, OWASP ASVS, NIST SP 800-63B, and CVSS v4.0, through to threat modeling and MITRE ATT&CK.

#Security#Risk Assessment#NIST#OWASP#CVSS

Recent Posts

Why the Domain Fades From View in Web Development, and Why It Eventually Comes Back
Architecture 2026-08-21

Why the Domain Fades From View in Web Development, and Why It Eventually Comes Back

Understand what a domain really means, why it works as an architectural boundary, and the structural reasons the domain fades from view in web development.

#DDD#Design#Architecture
An Introduction to Monitoring Design: From Purpose to SLIs
Operations 2026-08-20

An Introduction to Monitoring Design: From Purpose to SLIs

Reframing the purpose of monitoring as decision-making, this guide walks through a tool-agnostic way to design monitoring: the big picture, design principles, user-impact scenarios, and SLI definition, for beginners.

#Monitoring#Reliability#SLI
Designing Engineering Management as a "Deck"
Management 2026-08-13

Designing Engineering Management as a "Deck"

Don't let management practices—1on1s, OKRs, review rules—pile up as a loose collection. A way to design them as one system (a deck) around the quality and reproducibility of decisions, and the conditions that turn a practice into an outcome.

#Engineering Management#Team Management#Organization Theory
Hands-On API Learning
Architecture 2026-07-28

Hands-On API Learning

Hands-On API Learning

#Book Review#API#Design
Beyond Vibe Coding
Development Process 2026-07-28

Beyond Vibe Coding

Beyond Vibe Coding

#Book Review#AI#Generative AI
Context Engineering
Development Process 2026-07-28

Context Engineering

Context Engineering

#Book Review#Context Engineering#Generative AI
How to Craft an Engineering Strategy
Management 2026-07-28

How to Craft an Engineering Strategy

How to Craft an Engineering Strategy

#Book Review#Engineering Management#Business Strategy
Good Code, Bad Code
Architecture 2026-07-28

Good Code, Bad Code

Good Code, Bad Code

#Book Review#Design
Prompt Engineering for LLMs
Development Process 2026-07-28

Prompt Engineering for LLMs

Prompt Engineering for LLMs

#Book Review#Prompt Engineering#Generative AI
The Work of a Senior Engineering Leader
Management 2026-07-28

The Work of a Senior Engineering Leader

The Work of a Senior Engineering Leader

#Book Review#Engineering Management#Leadership
Simplicity: Sustainable, Humane, and Effective Software Development
Development Process 2026-07-28

Simplicity: Sustainable, Humane, and Effective Software Development

Simplicity: Sustainable, Humane, and Effective Software Development

#Book Review#Design
The Book You Wish Your Parents Had Read
Parenting 2026-07-28

The Book You Wish Your Parents Had Read

The Book You Wish Your Parents Had Read

#Book Review#Parenting
Thinking in Systems: A Primer
Business 2026-07-28

Thinking in Systems: A Primer

Thinking in Systems: A Primer

#Book Review#Systems Thinking#Thinking Methods
Where Should You Store SPA Tokens? A BFF + Session Authentication Design
Architecture 2026-07-16

Where Should You Store SPA Tokens? A BFF + Session Authentication Design

Explains where to store access tokens in an SPA (the danger of localStorage), a BFF + session design that keeps tokens out of the browser, and why starting token-less is often enough.

#BFF#Authentication#Security
What is the Big Picture of Service-to-Service Authentication? mTLS, Token Exchange, SPIFFE, and Zero Trust
Architecture 2026-07-15

What is the Big Picture of Service-to-Service Authentication? mTLS, Token Exchange, SPIFFE, and Zero Trust

Organizes service-to-service authentication in microservices across three layers: network, token, and identity foundation. Covers mTLS, Token Exchange (RFC 8693), SPIFFE, Zero Trust (NIST SP 800-207), and BeyondProd.

#Authentication#Microservices#Security
What are Sender-Constrained Tokens? An Introduction to mTLS (RFC 8705) and DPoP (RFC 9449)
Application 2026-07-14

What are Sender-Constrained Tokens? An Introduction to mTLS (RFC 8705) and DPoP (RFC 9449)

Explains sender-constrained tokens that address the weakness of bearer tokens, using mTLS (RFC 8705) and DPoP (RFC 9449) to bind a token to its sender, plus Resource Indicators (RFC 8707) that narrow the audience.

#OAuth#Authorization
What is Dynamic Client Registration (DCR)? An Introduction to RFC 7591 and 7592
Application 2026-07-13

What is Dynamic Client Registration (DCR)? An Introduction to RFC 7591 and 7592

Explains Dynamic Client Registration (RFC 7591) and Client Registration Management (RFC 7592), which register and manage OAuth clients via an API. Covers the registration endpoint, registration access token, and security considerations.

#OAuth
OIDC Logout and Security Event Token (SET)
Application 2026-07-12

OIDC Logout and Security Event Token (SET)

Explains OpenID Connect Front-Channel Logout and Back-Channel Logout, and how the Security Event Token (RFC 8417 SET) enables session revocation and event notification.

#OpenIDConnect#Authentication
Access Token Validation and Revocation: Introspection, JWT AT, and Revocation
Application 2026-07-11

Access Token Validation and Revocation: Introspection, JWT AT, and Revocation

Compares the two access token approaches (opaque + Introspection / JWT access tokens) and how each is validated, plus revocation via Token Revocation. Covers RFC 7662, RFC 9068, and RFC 7009.

#OAuth#Authorization