After two decades in software engineering—across full-stack dev, front-end architecture at scale, and now core payments infrastructure—here’s the brutal truth:
Most of what I thought mattered early on… didn’t.
Here are 3 things I wish someone had drilled into me on day one:
1. Output is a vanity metric.
I used to think productivity was shipping features fast. It’s not. Output is easy to measure and easy to game—but meaningless if it doesn’t drive outcomes. If no one uses it, if it doesn’t solve a real problem, if it creates more tech debt than value—it’s waste. Shipping isn’t winning. Impact is.
2. The hardest problems can’t be solved alone.
Writing code is the easy part. The real challenge is aligning with others—getting clarity on the problem, syncing with stakeholders, navigating tradeoffs, and making decisions that stick. The deeper the system, the more collaboration and communication matter. You can’t brute-force your way to impact in isolation.
3. If you’re not building leverage, you’re playing small.
Chasing individual velocity is a dead end. The highest-impact teams build systems, tools, and infrastructure that multiply the output of everyone around them. You can either be a feature machine or a force multiplier. Pick one.
These days, I focus on the invisible layers—things users never see, but everything else depends on. Infrastructure that quietly scales. Tooling that quietly removes friction. Guardrails that quietly prevent disasters.
There’s a lot more I’ve learned—the hard way and the long way. But for now, I’ll leave it here.
If something in this hit a nerve—or made you rethink how you’re approaching your own path—I’d love to hear it.