Skip to content

Projects

A selection of professional and personal projects I've worked on — ranging from microservice architectures and SAP, to live IoT, Discord bots and tooling to automate my day to day. Use the filters below to narrow by technology.

Filter by technology

2026 – present

Pequeñas Raíces Libres · NGO website

Website rebuilt from Canva into a fast static site that non-technical staff edit themselves.

Role: Design and development

Full rebuild of the website of a non-profit from Huesca that supports children in Guaricano (Dominican Republic). The previous Canva site blocked Google from indexing it and rendered everything with JavaScript. The new one is static HTML built with Astro and Tailwind, with a Sveltia CMS editing panel behind GitHub login so the association updates texts, photos and projects (each one a blog-style page) without touching code. Changes go through pull requests validated by GitHub Actions, photos are resized and compressed automatically on upload, fonts are self-hosted and there are no cookies. Deployed on Cloudflare Pages, scoring 97 on mobile and 100 on desktop in PageSpeed Insights, and 100 in SEO.

  • Astro
  • TailwindCSS
  • TypeScript
  • Sveltia CMS
  • Cloudflare Pages
  • CI/CD

2025 – present

butler-ci-cli

Terminal tooling to drive Jenkins pipelines from the command line.

Role: Design and development

Terminal tooling to automate Jenkins pipelines straight from the command line.

  • Node.js
  • TypeScript
  • Jenkins

2025

Astra5 · NASA Space Apps Challenge

Machine-learning flood detection on Sentinel-1 satellite imagery.

Flood detection tool built on Sentinel-1 imagery using Machine Learning with PyTorch. Backend in Node.js, model in Python and frontend in React.

  • Node.js
  • Python
  • PyTorch
  • React
  • Machine Learning

2024 – present

e-RVC · Catalonia's vineyard registry

Microservices platform for Catalonia's public wine-growing registry.

Role: Requirements, functional analysis and critical incident resolution

Microservices platform behind the e-RVC, the Generalitat de Catalunya's public registry where grape growers, wineries and regulatory councils manage plantings, harvests and wine-growing potential. 22 microservices in Java 8 and Spring Boot with an Angular 14 frontend. Direct client work for requirements gathering, functional analysis and critical incident resolution. Deployed on Docker, Jenkins and OpenShift.

  • Java
  • Spring Boot
  • Angular
  • Node.js
  • WebSockets
  • Docker
  • Jenkins
  • OpenShift
  • Git
  • Jira

2023 – 2024

Catalan language services platform

Legacy Java apps powering Catalan proficiency exams, translation and resources.

Role: Evolution and maintenance

Evolution and maintenance of the legacy applications run by the Generalitat de Catalunya's language administration — VxL (Voluntariat per la Llengua, the program that pairs Catalan learners with fluent speakers), GestCerCat (Catalan proficiency exam management), LLC (Catalan language resources portal), RTIJ (sworn translators and interpreters registry) and the in-house Apertium-based machine translators for Occitan/Aranese and the rest of the supported language pairs — built on Java 7, Servlets and JSP, deployed on Tomcat 7/9.

  • Java
  • Servlets
  • JSP
  • Tomcat
  • Jenkins
  • Apertium

2023

SAP ABAP4 · Hotel chains

ABAP4 and UI5 customisations for the ERP of large hotel chains.

Role: Feature development and bug fixing

Feature development and bug fixing in SAP ABAP4 for large hotel chains, including frontend work in SAP UI5 and integration with workflows based on Node.js 18 and Angular.

  • SAP ABAP4
  • SAP UI5
  • Node.js
  • Angular

2022 – present

usarral.com

Personal site and technical blog, statically built with Astro.

Role: Design, development and operations

Personal website and technical blog focused on development, Docker deployments, security and systems automation. Static, fast and shipped through a custom CI/CD pipeline.

  • Astro
  • Node.js
  • TailwindCSS
  • Docker
  • CI/CD

2022

GDM La Merced

Website and back-office tooling for a local handball club.

Role: Development and maintenance

Development and maintenance of the website and internal tooling for a local handball club: player management, match calendars and results publishing.

  • Node.js
  • Web

2021 – 2023

NodeBot

Discord chatbot that reached 3M users across 27,000 servers.

Role: Design and development

Scalable Discord chatbot built on Node.js and MongoDB. Reached more than 3 million users across 27,000 servers.

  • Node.js
  • MongoDB
  • Discord API