Jero Sanchez
A Story of Infinite Refactor
From User Stories to Functional Requirements: A Disciplined Process

What happens when you refuse to let ambiguity sneak into your requirements? Can AI agents help you build better documentation—or do they just amplify sloppy thinking? Here's how I turned MVP user stories into testable, traceable functional requirements, and what I learned about the human role in the process.
Read more ⟶Automating the Boring Stuff: When Forgetting to Push Becomes a Thing of the Past

What happens when you forget to back up your work one too many times? Can a small automation tool save you from that moment of panic when you realize your latest notes are stuck on a powered-off machine? Here's how I built a systemd service to make git backups invisible and automatic.
Read more ⟶Architecture First, Features Later: Why I Built My Foundation Before Writing Code

What happens when you define your architectural decisions before documenting requirements or writing a single line of code? Can laying a strong foundation early actually save time and improve quality—or does it risk over-engineering? Here's how I used ADRs to shape my project's future, and why I chose Java, modular monoliths, gRPC, Kafka, and a home lab cluster.
Read more ⟶Three Days to Production: My First Spring Boot CRUD Microservice

What happens when you challenge yourself to build your first production-grade CRUD microservice in just three days? Here’s how I learned Spring Boot—leaning on AI help—by shipping a real, deployment-ready service and gaining practical skills and confidence along the way.
Read more ⟶Why I Am Choosing Java in 2025: Enduring Craftsmanship in a Fast-Moving World

What happens when a developer in 2025 chooses Java over trendier languages? What can we learn from a technology that quietly endures, and how does it shape the way we build for the long term? Here's why I'm making a deliberate, perhaps surprising, choice.
Read more ⟶