Thoughts on frontend development, hybrid mobile apps, and the JavaScript ecosystem.
From Claude Code to Cursor to ChatGPT — how I integrated AI-powered development tools into my daily workflow and why every engineer should.
After years of Ionic and Capacitor, I took the leap into native Android and iOS development. Here's what surprised me and what carried over.
Everything I wish I knew when switching from Angular to the React ecosystem — mental models, patterns that transfer, and the gotchas.
Why I stopped calling myself a frontend developer, what it took to grow into a full-stack software engineer, and how it changed the way I approach problems.
Practical techniques I've used to improve load times, reduce bundle sizes, and deliver smoother experiences in production Ionic apps.
Lessons learned from maintaining a large TypeScript codebase — utility types, strict configurations, and patterns that keep things manageable.
My experience adopting Angular Signals in a production app — what worked, what didn't, and how it changed the way I think about reactivity.
A step-by-step walkthrough of migrating a production hybrid app from Cordova to Capacitor, including the gotchas and wins.
Moving beyond "write more tests" — a realistic testing strategy for frontend apps balancing unit, integration, and E2E tests.
A no-fluff guide to Docker from a frontend dev's perspective — containerizing apps, dev environments, and CI/CD pipelines.
How NestJS brings structure to Node.js APIs — modules, dependency injection, and patterns I use in every project.
After years of remote work at Tawk.to, here are the habits, tools, and routines that keep me shipping consistently.
A deep dive into building a performant chat UI with virtual scrolling, real-time updates, and offline support in Ionic.
Reflections on starting a new role, what drew me to Tawk.to, and what I'm excited to build with their mobile team.