Blog
Thoughts on problem solving, software, mathematics, and teaching.
Learning to Say No: The Most Underrated Engineering Skill
Every yes is a no to something else. Engineers who can't decline requests don't protect their time, their codebase, or their team.
The Debugging Mindset: How to Find Bugs Faster
Good debuggers aren't smarter than bad ones. They just ask better questions, in a better order.
Five Things Math Olympiads Taught Me That School Didn't
Olympiad mathematics is a different discipline from school math. The skills it teaches — elegance, patience, structured exploration — transfer to almost everything.
Building a Code Review Culture That Actually Works
Most code review processes are either rubber stamps or adversarial nightmares. The difference almost always comes down to intent and norms, not tools.
Deep Work for Engineers: Protecting Your Best Hours
Context switching is expensive, and open offices make it worse. Here's how I structure my day to get meaningful work done despite the interruptions.