Philosophy
Software should feel obvious.
Clear affordances, purposeful interaction, and crisp feedback loops make products easier to trust. I optimize for maintainable velocity: shipping iteratively while keeping a strong design and technical core.
I design and build human-centered software, blending product thinking, interaction design, and pragmatic engineering to ship outcomes, not just code.
Clear affordances, purposeful interaction, and crisp feedback loops make products easier to trust. I optimize for maintainable velocity: shipping iteratively while keeping a strong design and technical core.
TypeScript, Next.js, Node.js, Tailwind, GSAP, Matter.js, WebGL / Canvas, automation workflows, and cloud-native primitives.
I establish a design grammar early: layout rhythm, spacing scale, component rules, and interaction standards. That gives every iteration a stable base instead of letting speed erode clarity.