Web Apps Built to Last
A lot of web projects start well and become harder to maintain over time. I build with that in mind from the start — clean architecture, proper separation of concerns, and code that a developer who joins six months later can actually understand.
Frontend
I build with React and Next.js. For most projects that means server-side rendering for good SEO and fast initial load, combined with client-side interactivity where it's needed. If you're building a complex dashboard or internal tool, I know how to keep things fast even with large datasets.
Backend
My backend work uses Node.js and Express, with MongoDB or PostgreSQL depending on the data model. I design APIs that are easy to consume, well-documented, and secure. Rate limiting, input validation, proper error responses — the things that often get skipped in a rush to ship.
Security Without the Checklist Mentality
I don't just run through an OWASP checklist and call it done. I think about the actual threat model for your application — what data is sensitive, who's accessing it, and where the real risks are — then build accordingly.
Handoff or Long-Term Partnership
Some clients want a working product they can hand to their internal team. Others want me to keep developing it. I'm set up for both — I document what I build and write code that doesn't require me to maintain it.
