Don't Think
When You Code
A book about the craft of software engineering in the AI era, drawn from 20+ years of experience building high-performing teams, surviving production disasters, and learning that mastery comes from deliberate practice — drilling one small detail at a time.
From learning QuickBASIC as a 10-year-old in small-town Illinois to leading engineering teams through full-scale platform modernizations and AI transformations, Joel shares the stories, frameworks, and hard-won lessons that shaped his approach to building software and leading engineers.
These chapter highlights focus on practical systems for AI software development lifecycle execution, modern SDLC planning, and becoming a better software engineer.
Chapter Highlights
Built for engineers focused on AI-driven software lifecycle execution, stronger SDLC practices, and long-term software engineering growth.
Flow State for Software Engineers
How top engineers enter flow more often by matching challenge to skill and training pattern recognition.
Deliberate Practice That Improves Coding Faster
A practical training-journal method to become a better software engineer with targeted, repeatable skill reps.
Task Templates for a Faster SDLC
Use reusable implementation playbooks to reduce rework, improve estimates, and speed up the software development lifecycle.
Mental Models for Legacy Code and Architecture
Make stronger architecture decisions under uncertainty by scanning for patterns instead of rethinking every line.
How Teams Make Decisions That Stay Decided
Prevent decision churn by tying choices to assumptions and only reopening when new information appears.
AI in the Software Lifecycle and Modern SDLC
Translate proven task templates into AI prompt templates to improve output quality across the AI software lifecycle.
