My first real project taught me more through failure than success. Building a dashboard that broke under real user load, I learned that clever abstractions collapse under production constraints. That lesson stuck: what survives isn't what impresses—it's what works when things go wrong.
Working on accessibility audits for a large application changed how I design. The constraint of WCAG compliance didn't limit creativity—it forced better decisions. Keyboard navigation improved the UX for everyone. Semantic HTML made the code easier to maintain. Constraints became features, not obstacles.
I stopped chasing the newest frameworks around 2020. Not because they're bad—because constantly rewriting working systems wastes time that could go toward solving actual problems. That meant saying no to resume-driven development, but yes to building on proven foundations. Boring technology gives you time to focus on interesting problems.
Today, I focus on design systems and accessible architecture. Not because it's trendy—because these problems compound. A good component library pays dividends for years. An accessible foundation serves everyone. The work changed, but the principles didn't: build for the long term, optimize for maintenance, serve humans first.