/experience
Posts touching experience.
34 posts
- April 12, 2026 4 min
The portfolio is the proof. Ship your work or it did not happen.
Not resumes. Not endorsements. Not interview performance. The code you ship, the systems you build, the writing you publish. Ship it or it did not happen.
- /career
- /engineering-leadership
- /architecture
- /experience
- April 5, 2026 4 min
What I got wrong in my first year as Head of Engineering and what I would do differently
Over-hiring before culture. Saying yes to everything. Underinvesting in developer experience. Staying hands-on too long. The common thread was not trusting the team.
- /engineering-leadership
- /career
- /decision-making
- /team-building
- /experience
- January 26, 2026 4 min
Why I run my portfolio site on the same stack I use at work
Next.js, Payload CMS, PostgreSQL, Cloudflare. Not laziness. Every problem solved on the portfolio feeds back into production expertise.
- /architecture
- /typescript
- /react
- /postgres
- /career
- January 5, 2026 5 min
The hardest conversation I had in 2025 was firing a senior engineer I had hired
He interviewed brilliantly but could not operate in a startup. Performance management is the most important and least taught leadership skill.
- /engineering-leadership
- /team-building
- /hiring
- /decision-making
- /experience
- November 17, 2025 4 min
Fifteen years of writing code and I still mass-delete my first draft
The first draft reveals the problem's shape. The second draft solves it. Engineers who try to write perfect code on the first pass are optimizing for the wrong thing.
- /career
- /engineering-leadership
- /architecture
- /experience
- October 20, 2025 4 min
I mass-deleted our internal wiki and started over. Twice.
The wiki grew to 400 pages that nobody read. The fix was not better organization. It was aggressive pruning and a decay policy.
- /engineering-leadership
- /team-building
- /decision-making
- /experience
- September 17, 2025 4 min
The one-on-one framework I use after fifteen years of getting one-on-ones wrong
Three fixed sections: blockers with deadlines, career trajectory, and one question the report chooses. Structure creates safety without drift.
- /engineering-leadership
- /team-building
- /career
- /experience
- August 18, 2025 4 min
The founder said ship in two weeks. I said no. Here is what happened.
A major customer deal hinged on a feature in two weeks. I pushed for three. The extra week saved us on day four.
- /engineering-leadership
- /startup-life
- /decision-making
- /cross-functional
- /experience
- July 28, 2025 4 min
My homelab staging cluster caught a production bug before CI did
A memory leak only manifested under sustained 48-hour load. CI tests pass in seconds. The homelab k3s cluster caught what automated tests could not.
- /homelab
- /k3s
- /observability
- /ci-cd
- /experience
- July 7, 2025 4 min
Two years in and I finally stopped rewriting the org chart every quarter
Constant restructuring is a symptom of unclear ownership, not wrong structure. Org charts stabilize when decision rights are explicit.
- /engineering-leadership
- /team-building
- /startup-life
- /experience
- June 30, 2025 5 min
Eighteen months in: the five things I would tell myself on day one as Head of Engineering at a startup
Delegate before you are ready. Learn compliance before it learns you. Your cofounder's priorities are not wrong, just different. Tech debt compounds faster than you think. And the hardest one: your job is not to write the best code.
- /engineering-leadership
- /startup-life
- /decision-making
- /career
- /experience
- June 19, 2025 5 min
The on-call rotation that was just me, and why I finally admitted that was not sustainable
For 14 months I was the only person who got paged at 3 AM. The real reason was not team size. It was that I did not trust anyone else to handle production incidents.
- /engineering-leadership
- /team-building
- /observability
- /startup-life
- /experience
- June 9, 2025 4 min
Cross-functional friction is a feature, not a bug, if you build the right feedback loops
For months I treated pushback from product, sales, and compliance as obstacles to velocity. The reframe: friction between teams is signal about misaligned priorities, and the right response is better feedback loops.
- /cross-functional
- /engineering-leadership
- /financeops
- /team-building
- /experience
- May 12, 2025 5 min
Founder dynamics: when your technical opinion conflicts with the CEO's investor promise
The CEO told investors we would launch a new vertical by Q3. I told the CEO we needed Q3 for infrastructure debt. We were both right, which made it worse.
- /engineering-leadership
- /startup-life
- /cross-functional
- /decision-making
- /experience
- April 28, 2025 5 min
The compliance audit that exposed every shortcut we took in our first year
Our first formal compliance audit surfaced 23 findings. Hardcoded keys, PII in logs, missing audit trails. None malicious, all "we will fix that later." The remediation sprint that followed.
- /fintech
- /security
- /cross-functional
- /architecture
- /experience
- April 14, 2025 5 min
Why I stopped mass-applying "best practices" and started asking "best for what"
Microservices, event sourcing, CQRS, DDD. I had been cargo-culting patterns from companies 100x our size. The question "who benefits from this complexity" changed my architectural decisions.
- /architecture
- /decision-making
- /engineering-leadership
- /startup-life
- /experience
- March 31, 2025 5 min
The quarterly planning meeting that taught me product managers and engineers solve different problems
I walked into Q2 planning with technical improvements. Product walked in with customer churn data. We talked past each other for two hours before building a framework to bridge both worldviews.
- /cross-functional
- /engineering-leadership
- /financeops
- /startup-life
- /experience
- March 10, 2025 5 min
Learning to delegate when every task feels faster to do yourself
For six months I was the bottleneck on every code review, architecture decision, and production deploy. Delegation felt slower because it was. The turning point was redefining my job.
- /engineering-leadership
- /team-building
- /startup-life
- /decision-making
- /experience
- February 24, 2025 5 min
When the sales team demos a feature that does not exist yet and engineering finds out from a prospect
A prospect called asking for help configuring a feature our sales deck showed but engineering had never built. The fallout was not the scramble but the trust erosion between teams.
- /cross-functional
- /startup-life
- /financeops
- /decision-making
- /experience
- February 3, 2025 5 min
The tech debt spreadsheet that made my cofounder finally understand why we need a refactoring sprint
Saying "we have tech debt" to a non-technical cofounder is meaningless. A spreadsheet mapping each debt item to customer-facing risk and remediation cost finally moved the conversation.
- /engineering-leadership
- /startup-life
- /cross-functional
- /architecture
- /experience
- January 13, 2025 5 min
I mass-rejected 200 resumes and hired the person who asked the best questions in the interview
Our first structured hiring round attracted 200+ applications. The person we hired had a weaker resume than a dozen others but asked questions that revealed deep systems thinking.
- /hiring
- /engineering-leadership
- /startup-life
- /experience
- December 16, 2024 5 min
The meeting where product, sales, and engineering all had different definitions of "real-time"
Product wanted sub-second dashboard updates. Sales had promised "real-time" reconciliation. Engineering was thinking about eventual consistency with 30-second polling. One word nearly derailed a quarter of work.
- /cross-functional
- /architecture
- /financeops
- /decision-making
- /experience
- November 25, 2024 4 min
Why our compliance team rewrites my API specs and I have learned to be grateful
In fintech, your API surface is a regulatory document. Our compliance officer started redlining my OpenAPI specs and improved our API design more than any tech review.
- /api-design
- /fintech
- /cross-functional
- /security
- /experience
- November 18, 2024 5 min
Hiring engineer number three when you can barely keep engineer number one from burning out
I posted a job listing for our third engineer while privately wondering if our first hire was about to quit. What I got wrong about workload distribution.
- /hiring
- /engineering-leadership
- /startup-life
- /team-building
- /experience
- November 4, 2024 4 min
The day our monolith's database hit 80% CPU and nobody noticed until sales called
A slow query compounded by a missing index took our PostgreSQL instance to the brink. Sales noticed before engineering did because client reports were timing out.
- /postgres
- /observability
- /architecture
- /financeops
- /experience
- September 25, 2024 4 min
The night our database ran out of connections and what I learned about pooling
At 2am our payment processing froze. Every database connection was consumed by long-running report queries sharing a pool with transactions.
- /postgres
- /node
- /architecture
- /fintech
- /experience
- September 18, 2024 5 min
Making technology bets: how I evaluate frameworks when the wrong choice costs a year
At a startup, picking the wrong framework is a survival threat. Here is the five-criteria scoring model I use for every significant technology decision.
- /decision-making
- /architecture
- /startup-life
- /experience
- August 21, 2024 5 min
Full-stack chaos: when the founder, PM, and head of engineering are all you
In a single Tuesday I triaged a database lock, wrote a product spec, pitched an investor, and reviewed a PR. Wearing every hat is a failure mode.
- /startup-life
- /engineering-leadership
- /cross-functional
- /experience
- July 24, 2024 5 min
Hiring our first engineer: the mass-interview process I built as a non-recruiter
No ATS, no recruiter, no playbook. I built the entire hiring pipeline from scratch and we interviewed 30 candidates to make one perfect hire.
- /hiring
- /startup-life
- /engineering-leadership
- /experience
- June 19, 2024 4 min
The AWS bill that made me rethink everything about infrastructure
Our third month AWS bill was 4x what I projected. The culprit was not compute. It was data transfer, NAT gateway charges, and CloudWatch log ingestion.
- /aws
- /architecture
- /startup-life
- /decision-making
- /experience
- June 5, 2024 5 min
Startup engineering culture when you are the only engineer
For the first four months I was the entire engineering department. No code reviews, no architecture discussions. Here are the practices I invented to stay honest.
- /engineering-leadership
- /startup-life
- /decision-making
- /experience
- May 15, 2024 4 min
My first homelab rack: a mini PC, k3s, and the itch to self-host everything
I bought a used mini PC for $180, installed k3s, and spent a weekend migrating my side projects off Vercel free tier.
- /homelab
- /k3s
- /self-hosting
- /experience
- May 1, 2024 4 min
What nobody tells you about building fintech: compliance is a product feature
I walked into FinanceOps thinking I was building software. Six months later I realized I was building a compliance platform that happens to have software around it.
- /fintech
- /financeops
- /startup-life
- /experience
- April 3, 2024 4 min
Why I chose PostgreSQL over MongoDB and how it shaped our entire fintech stack
Every fintech startup I talked to was defaulting to MongoDB. I went the other way and bet on PostgreSQL with strict schemas from day one.
- /postgres
- /architecture
- /fintech
- /decision-making
- /experience