Hi there! I'm a fullstack developer who's spent the last 13+ years building products and scaling technology teams. I actively code and focus on setting up codebases and developer experience for my engineering team. I write about engineering leadership, team building, and the occasional tech rabbit hole I fall into.
Learn more about my background →
Some things I've worked on
- Building B2B products that solve real business problems
- Leading engineering teams and scaling technology operations
- Mentoring developers and building strong engineering cultures
- Architecting systems that handle complex business logic
- Contributing to edtech platforms that impact student learning
- Setting up developer experience and codebase infrastructure
- Delivering quality products under tight deadlines
- Creating scalable solutions for growing businesses
- Building open-source products like Formzillion that launched successfully on Product Hunt
Things I believe
⚙️ developer experience drives user experience
- developer experience is vital for building shipping fast engineering teams
- outdated technology stack is harmful for engineering teams to ship fast
- without fixing developer experience, fixing anything else doesn't matter
- great developer experience enables great user experience
🚀 shipping fast beats the best strategy
- speed is a superpower
- create a bias toward shipping
- small teams ship faster
- landings > launches (i.e. product adoption > shipping code)
- listen, build, ship, tell the customer, then repeat forever
⚡ quality over scale
- building amazing products for fewer users is just as valuable
- user impact drives technical decisions
- technical debt is a business decision
- technical excellence enables business success
🎯 simplicity beats complexity
- don't complicate architecture just to learn new tech
- microservices aren't always the answer
- monorepos solve real problems for lean teams
- premature optimization is evil
- don't busy yourself with being busy
👥 great teams build great products
- the quality of your team directly impacts the quality of your output
- leadership is about enabling others
- diversity creates better solutions
- mentorship creates lasting impact
- code reviews are about learning, not gatekeeping
💬 communication is the job
- clear communication bridges the gap between technical and business needs
- clear writing is clear thinking
- leaders step up to provide clarity when absent
- documentation creates clarity
📚 continuous learning is non-negotiable
- technology evolves rapidly, and staying current is essential
- education is the best form of developer marketing
- be ruthlessly truth-seeking
📝 documentation is code
- if it's not documented, it doesn't exist
- testing is about confidence, not coverage