Software and Hardware engineer
English
Spanish
Catalan
I am a results-driven engineer with expertise across software and hardware domains, including embedded systems, high-performance computing, and modern development workflows.
I excel at translating complex problems into reliable, maintainable solutions and I have a strong track record of delivering high-impact engineering work.
I also enjoy mentoring colleagues and sharing knowledge through training and collaborative initiatives.
2022-2026
Wordline Iberia SAU | PERE IV, 291, 08020 Barcelona
Software Engineer - Innovation Champion
- Developed and maintained features for a front-office payment authorization platform, enabling transaction processing for fleet customers across multi-merchant fuel networks. - Designed and integrated payment authorization workflows using IFSF and related forecourt communication protocols, ensuring reliable interoperability between payment systems, POS infrastructure, and fuel dispensers. - Led modernization of enterprise software platforms, migrating critical systems to C++20 and improving maintainability, performance, and long-term sustainability. - Re-architected legacy scripting and automation workflows, increasing operational reliability and reducing maintenance overhead. - Performed advanced performance profiling and execution tracing to identify and eliminate critical system bottlenecks. - Designed and maintained scalable CI/CD infrastructure supporting multiple high-availability projects and development teams. - Architected a centralized Nix-based development platform adopted by approximately 400 engineers, standardizing environments and improving build reproducibility. - Developed a distribution-independent deployment strategy using Nix, enabling modern toolchains to coexist seamlessly with legacy production infrastructure. - Championed engineering excellence through automated static analysis, pre-commit validation, and reproducible development environments, improving code quality and developer productivity. - Provided technical leadership, training, and mentorship on modern C++, containerization, Nix ecosystems, and software engineering best practices. - Drove organization-wide modernization initiatives that improved software resilience, developer experience (DX), and engineering efficiency across the platform.
2018-2022
Barcelona Supercomputing Center (BSC) | Jordi Girona, 29, 08034 Barcelona
R&D Engineer
OmpSs@FPGA + CUDA + OpenCL:
- Designed and implemented a robust memory coherence layer for virtual and physical memory across heterogeneous computing devices. - Architected an asynchronous task execution framework for optimized, dependency-aware workload scheduling. - Integrated bare-metal RISC-V task support and FPGA accelerator execution capabilities directly into the OmpSs-2 runtime environment. - Engineered comprehensive CUDA and OpenCL kernel support, bridging discrete and unified memory architectures. - Developed a custom runtime CUDA loader capable of dynamically parsing ELF files and deploying kernels to edge devices.European MEEP project:
- Led FPGA hardware/software co-design on Alveo U280/U55C platforms utilizing Vivado and advanced simulation toolchains. - Implemented QEMU PCIe forwarding and engineered a Verilator AXI bridge for rigorous system emulation. - Developed critical low-level communication infrastructure, including UART over PCIe and bare-metal UART-Lite drivers. - Delivered a first-stage RISC-V bootloader featuring advanced memory introspection and real-time editing capabilities. - Successfully ported U-Boot and facilitated complete Linux boot sequences on a custom RISC-V microarchitecture. - Implemented Linux kernel DMA API support tailored specifically to the custom hardware architecture. - Architected low-latency shared memory and PCIe communication channels between host systems and FPGA accelerators. - Developed a high-performance PCIe Ethernet device driver interfacing seamlessly with a custom Verilog Ethernet IP.European Legato project:
- Engineered custom editor extensions providing seamless OmpSs autocomplete functionalities for VSCode and Eclipse. - Contributed core infrastructure features to a cloud-native integrated development environment (IDE) built on Eclipse Che.
2025
toywithraylib
view moreBrowser-native Raylib game platform built with WebAssembly and Emscripten to run interactive applications locally without a build server.
2025
py-nixeval
view morePython wrapper for running Nix evaluations, enabling Nix as a dependable backend across Windows, Linux, and MacOS.
2025
njq
view moreNix-powered query tool for JSON and Nix expressions, offering a declarative query experience.
2025
cpp-match
view moreC++ extension enabling Rust-style match expressions and structured error handling with early returns.
2024
LG Smart TV ports
view morePorted N64 Super Mario 64, PICO-8 Emulator FAKE8, and additional applications to LG Smart TV platforms.
2024
Nixpkgs maintenance
view moreMaintained several Nixpkgs packages, including devcontainer, flatito, construct, and smtp4dev.
2023
Compiler Explorer Nix support
view moreAdded Nix evaluation support to Compiler Explorer, enabling live Nix workflows with assembly visualization.
2021
Pokemon Fire Red multiplayer
view moreReverse-Engineering of Pokemon Fire Red using IDA Pro, adapting m-GBA emulator to support hooks on arbitrary memory addresses, reading memory related to the game and offering a simple web-interface to control the actions of the AI.
2020
MiniRun runtime
view moreMinirun is a minimalistic task-based runtime that doesn't require compiler support. It's written in C++ and it's very simple to use and header-only, which does not require any compiler extensions and could be used in any C++ project. Supports tasks dependencies with sentinels and etherogeneous devices like CUDA, OpenCL, etc.
2019
WSLD
view moreWSLD is a simple tool to manage WSL distributions, it allows to import/export, backup and restore WSL distributions using docker images as the base.
2010-2024
Several small projects
Designed new quests and systems for MMORPG private-servers, in both, server and client. Created new systems for MMORPG private-servers Cheat-detection systems on MMORPGs Reverse-engineering and cheat development Maintenance of MySQL databases FreeBSD sysadmin Personal programming professor Telegram bots Chromium web extensions development And many more...