About
Senior full stack developer in Lima, Peru. I build SaaS platforms in React, Node.js and PostgreSQL, from the domain model to production.
Section 1 of 3: Method
Boundaries are explicit.
Dependency runs one way — interface to application, application to domain. The domain knows nothing of the framework, the database or the transport. A boundary is crossed by a written decision.
The smallest change that works.
No abstraction for a future that has not arrived; whatever stops being used goes in the same change.
Verify before claiming.
Nothing is done because it compiles. It is done when the gates pass and it has been seen in the production build.
Decisions are written down.
What cannot be read off the code goes into a dated record with at least two options compared.
Section 2 of 3: Stack
Frontend
- React
- Next.js
- TypeScript
- TanStack Query
- React Hook Form
- Tailwind CSS
- shadcn/ui
- Vite
- Astro
Backend
- Node.js
- Fastify
- Zod
- OpenAPI
- REST
- Better Auth
- JWT
Data
- PostgreSQL
- Prisma
- Redis
- SQL
AI
- OpenAI API
- LLM assistants
- Claude Code
Architecture
- Hexagonal architecture
- Domain-Driven Design
- Domain events
- Contract-first APIs
- Modular monolith
- Nx monorepo
- ADRs
Cloud and quality
- Docker
- GitHub Actions
- Fly.io
- Cloudflare
- Vitest
- Playwright
- Testing Library
- ESLint
- Git
Section 3 of 3: Languages
- Spanish
- Native
- English
- Elementary