About me
I am Jose Yufarinson Mosquera Diaz. I design and build software systems from Medellín, Colombia.
- 6
- Years building software
- Medellín, Colombia
- Since 2020
I started developing professionally in 2020, and since then my work has moved in one clear direction: away from writing isolated screens and toward designing complete systems. Today I work on ecosystems where backend, web, and mobile share the same domain, types, and language.
I studied software development at Instituto Tecnológico Metropolitano (ITM) in Medellín. What interests me is not the framework of the month but the question that comes first: where to draw the boundaries so the system survives changes nobody has thought of yet.
In practice that means hexagonal architecture on the backend, published contracts between modules, a versioned design system on the frontend, and automated quality gates that fail on their own. I would rather a tool catch the problem than trust that someone remembers it.
Stack
Technology I use in real production systems, grouped by layer.
- Frontend
- TypeScriptReact 19Next.jsViteTailwind CSSRadix UITanStack QueryZustandReact Hook FormZod
- Mobile
- React NativeExpoNativeWind
- Backend
- Node.jsNestJSArquitectura hexagonalDDDRESTEventos de dominio
- Data
- PostgreSQLPrismaFirestoreCloud Storage
- Infrastructure
- DockerFirebaseGitHub ActionsCloudflare R2
- Tooling and quality
- pnpmTurborepoESLintPrettierVitestJestStorybookdependency-cruiser
How I work
Four convictions that show up in everything I deliver.
Boundaries are enforced, not promised
A team agreement erodes in three months. A dependency-cruiser rule that breaks the build does not.
Every decision is written down with its cost
If I cannot name the alternative I discarded and what I gave up, I did not make a decision: I accepted a default.
The compiler is the first reviewer
Strict TypeScript, zero `any`, content validated with Zod. The error that shows up at build time does not show up in production.
The system must not depend on me
Documentation, automated deployment, and explicit conventions. If the team cannot move forward without me, the work is unfinished.
Availability
I take on freelance projects and remote collaborations. Based in Medellín, Colombia, working on Latin American hours.