Things I Believe
A collection of opinions, principles, and software development philosophies.
Simplicity is a Feature
We often celebrate adding features, but deleting code is just as satisfying. Complex codebases increase cognitive load and breed bugs. The best way to build reliable systems is to optimize for readability and delete unused code aggressively. When a system is simple, it is easier to change, debug, and scale.
Performance is Not Optional
Site speed is not just a nice-to-have optimization; it is a fundamental user experience requirement. A slow application suggests a lack of respect for the user's time and attention. Performance budget constraints should be established at the beginning of a project, not treated as an afterthought before launch.
Build in Public
Documenting architectural decisions, failures, and ongoing learnings helps the engineering community grow and clarifies your own mental models. Writing forces you to structure your thoughts, making you a better engineer and a clearer communicator.