Writing
Thoughts on software architecture, engineering leadership, and the occasional rant about abstractions.
2026
-
Leadership Without Permission and the Strange Burden of Seeing Clearly
An exploration of how technical leadership emerges without formal authority, and why clarity, influence, and the willingness to absorb ambiguity matter more than titles when systems need direction.
2025
-
Being Seen in the Fluorescent Fog
A long, spiraling essay about perception, misperception, and the quiet horror of being misunderstood at work, with a few useful truths buried inside.
-
Two Beasts, One Language: The Ontology and Obsession of PostgreSQL and MySQL
A deep, reflective exploration of how PostgreSQL and MySQL, though united by SQL, embody radically different philosophies of data, time, and integrity—revealing that every schema is a choice, every query a confession, and every index a window into the database's soul.
-
The Engineer as a Perpetual Learner - Why learning is the job and how to build a system that keeps you becoming
A reflection on how AI is transforming software engineering by handling routine tasks, allowing developers to focus on higher-level system thinking and architectural decisions.
-
Human Connections and Career Advancement: A Deep Dive
An obsessively detailed examination of the recursive anxieties, bureaucratic storytelling, and faintly sacred possibilities of professional advancement in late-stage capitalism, with footnotes.
-
The Distributed Mind: Reliability, Cognition, and the Philosophy of Log-Driven Systems
Explore the obsessive, late-night cognitive experience of engineers transitioning from fragile monolithic databases to resilient distributed systems. This DFW-inspired narrative follows a single transaction through Kafka, Flink, Redis, and Elasticsearch, highlighting probabilistic correctness, eventual consistency, and human patience in modern software architecture.
-
You're Not Being Replaced by AI. You're Being Freed to Think Again
A reflection on how AI is transforming software engineering by handling routine tasks, allowing developers to focus on higher-level system thinking and architectural decisions.
-
It's always a people problem - Why Code Is Never the Real Problem
A deep dive into why technical excellence alone isn't enough in software engineering, and how understanding human problems is the key to building systems that last. Explores the journey from code-focused engineer to system-thinking architect.
-
Dunning-Kruger Driven Development
The inevitable result of an industry where "it works" gets conflated with "it will last," or worse, "it is safe."
2024
-
How I was laid off and got six job offers in a month
My story of how I was laid off and got six new job offers in a month.
2023
-
The Secret to Building Long-Lasting Software Systems
Passing knowledge through time in software engineering is a necessary skill that can be achieved through methods such as documentation, code best practices, linters, and project management software, to build robust and scalable software systems.
-
How to get a better DEV job as a developing country developer
Tips on how to get a better DEV job as a developing country developer, avoiding the common pitfalls and mistakes that most developers make when applying for jobs.