Software engineer — .NET backend & Angular. Valencia, Spain.
I build the infrastructure other code depends on. Most of what I publish here is not an app but the layer underneath one: source generators, persistence abstractions, CI that enforces its own quality bar. MSc in Software Systems Engineering and Technology from the Universitat Politècnica de València.
A modular ASP.NET Core toolkit — 16 packages across mediation, persistence and cross-cutting concerns.
- Compile-time mediator generated with Roslyn source generators — handler dispatch resolves at build time, no reflection, Native AOT compatible
- Generic Repository / Unit of Work that works against both EF Core and Marten
- EndpointKit — RESTful endpoints generated from configuration
- CQRS pipeline, validation, exception handling, resilience, caching, data protection, OpenAPI, Elasticsearch, RabbitMQ and OpenIddict auth as opt-in packages
- 26 test suites — unit tests plus integration tests against real PostgreSQL and Redis containers, not in-memory fakes
- BenchmarkDotNet suites and dedicated Native AOT compilation tests
- One quality-gates manifest drives the coverage thresholds, the test inventory and the generated docs — so documentation cannot drift from the code
C# · Apache-2.0 · Repository →
An Angular-first SCSS framework with its own JIT utility engine.
- CLI (
ks build/watch/init/intellisense) that scans templates and emits only the CSS actually used - Design tokens and the full class inventory exported to JSON for editor tooling
- Built on CSS cascade layers, container queries, OKLCH colour and
light-dark() - Dark mode and RTL as first-class concerns
- PurgeCSS pipeline with a smoke test, Cypress visual baselines, Vitest unit tests
- Documentation site served with Angular SSR
SCSS · TypeScript · Apache-2.0 · Repository →
An e-learning platform with AI-powered dubbing and translation — graded 9.0/10, supervised by Prof. Vicente Pelechano Ferragud.
.NET microservices for authentication, administration and course management behind an API gateway, with OpenIddict, RabbitMQ, Redis and PostgreSQL, orchestrated with Docker Compose. Python services handled transcription with OpenAI Whisper and voice synthesis with TTS, running entirely on local hardware. Angular 19 front-end with SSR, composed through Native Federation.
The CQRS mediator and source generator written for this system were later extracted into the toolkit above.
Published in RiuNet, the UPV institutional repository →
Backend — C# · ASP.NET Core · EF Core · Marten · Roslyn source generators · Native AOT
Architecture — Microservices · CQRS · Clean Architecture · event-driven messaging · API gateways
Data & infra — PostgreSQL · SQL Server · Redis · RabbitMQ · Elasticsearch · Docker · GitHub Actions · Linux
Frontend — Angular · TypeScript · RxJS · NgRx · Signals · SSR · SCSS
MSc in Software Systems Engineering and Technology — Universitat Politècnica de València, 2025
Postgraduate Diploma in Computer Science — Cairo University, 2021
Arabic (native) · English (B2) · Spanish (B1)

