Ideate · Build · Ship
Software you
can rely on
Designed, engineered, and tested end to end.
Almost seven years engineering robust, well-tested systems across the stack — built to keep working long after launch, for the people who'll maintain them.
About
The work behind the screen
I build software end to end — from the data and services underneath to the interfaces on top, applying the same engineering rigor at every layer.
For almost seven years I've worked across the full stack as a software engineer — backend, frontend, mobile, and the layers in between. What stays constant isn't the toolset; it's how I approach a problem: understand the real constraints, choose the right approach, and build something that holds up in production.
I care less about which framework is in fashion than about whether a solution is correct, maintainable, and a genuine fit for the problem in front of me. Picking up a new domain or a new way of working is part of the job — the means to an end, never the end itself.
Experience
Things I've shipped
Refactored and developed an internal ERP-CRM solution in Angular, customising Angular Material to implement the company's own design system on top of the framework's defaults.
Developed and maintained bespoke ERP software for a client, building frontend components and responsive interfaces with Angular and the Fuse template.
Side Projects
Experiments & side projects
One or two sentences: what it does, the problem it solves, and the interesting engineering decision behind it. Side projects are where you get to show range, so lead with what makes this one yours.
View project ↗Approach
How I think about software
Problems first, tools second
I pick technology to fit the problem and its constraints, not the other way around. Languages and frameworks are means to an end — I learn what a project needs and stay productive across the stack.
Correctness you can prove
Tests and CI aren't an afterthought, they're how I move fast without breaking things. When the cost of failure is real, the safety net is part of the design — not bolted on later.
Code that outlives me
I optimize for the team that inherits the system, not the cleverest line I could write today. Clear contracts, readable structure, and decisions a future maintainer can follow.
Working with AI
Setting AI up to do real work
AI changes how software gets built, not whether it needs to be built well. Most of the value isn't in the prompt — it's in the engineering that lets a model work reliably on a real codebase.
I package domain knowledge and repeatable procedures into skills, so an AI agent follows the proven path instead of improvising. The expertise lives in version control, not in one person's head or a throwaway chat.
I build the scaffolding around the model — the tools, guardrails, and checks it runs inside — so it produces correct, verifiable output and does dependable work rather than one-off demos.
I write code and documentation that hand an AI the context it needs to reason correctly: clear structure, explicit contracts, and the why behind decisions. The same clarity that helps a model helps the humans who maintain it.
Contact
Let's work together
Whether you're hiring for a role or have a project that needs an engineer, I'm open to both.
The quickest way to reach me is email or LinkedIn — whichever you prefer.
Based in Spain · Open to full-time roles and project work.