Portfolio
Codere NEWCO
Responsible for developing applications for the loyalty club. We use a powerful architecture (ARCA) to encapsulate REDUX. I integrated the core part of this architecture myself. I also kept dependencies up to date and integrated native functionalities into plugins to ensure clean and structured code.
· Spain Appset: Improved overall performance using @defer and independent loaders. The app features a communication layer with Electron, reusable components, and animation implementations using CSS, Ionic Animations, and Angular Animations.
· LATAM Appset: The apps are built on a robust architecture that unifies code across multiple applications in Latin America, making maintenance easier, improving scalability, and reducing development time. Successfully handled push notifications across all scenarios and systems.
· Push Agent: Developed a push notification management system. It includes a custom-built server, an internal database (Derby), and a mechanism for sending push notifications at no cost. The system uses its own internal communication protocol and exposes endpoints, WebSockets, and file ingestion for integration with external systems.
· ARCA: The Automatic REDUX Core Architecture (ARCA) is a technical framework that encapsulates NgRx. I extracted the software into a standalone library and replaced NgRx dependencies with a custom REDUX implementation, making it significantly lighter and faster.
· CMS Administrator: I participated in migrating the corporate websites into the new CMS, LifeRay.
Airbus Defence & Space
Aerospace calculation application for military operations. A technical challenge that led me to take on a leadership role, create custom plugins, develop automation scripts, and implement file security measures.
· LTA+: Developed the application from scratch, making key decisions regarding the technical architecture and communication between modules.
· E2E Testsuit: Own initiative. End-to-end (E2E) testing architecture for iOS applications. Dynamically builds tests based on an Excel file, allowing non-technical staff to modify tests easily.
· Filesystem Fork: Fork of the official Ionic Filesystem plugin with added support for Electron. The project required file operations on Windows and iOS. Since no suitable alternatives were available, we iterated on the official plugin and added additional functionality.
· EFB SFTP: Native implementation of the SFTP (SSH File Transfer Protocol), integrated for both Electron and iOS.
· EFB ZIP: Native plugin for file compression and decompression operations. Supports password management and is implemented for Electron and iOS.
AutoTrade — SaaS for Automated Trading
Launched in early August 2025, AutoTrade is a SaaS desktop platform that enables users to deploy and run their algorithms across any market, saving time and energy while scaling operations without manual intervention.
· Stripe & Firebase Integraton: AutoTrade uses Stripe for payment processing and Firebase for account management. Both platforms are synchronized through internal events and webhooks, ensuring that databases remain up-to-date in real time.
· Software Architecture: One of the project’s most significant achievements is its architecture. It functions similarly to an Electron app but is built entirely in pure Python with a modular design. Modules are separated into backend (Flask), automation engine, scheduler, SSCA (Socket Communication Agent) and webhook (Node.js). All modules communicate via local sockets using a proprietary protocol (SSCA & CSCA).
· Backend Module: Built with Flask and running on a dedicated thread, the backend serves the Angular-based frontend and handles OS-level communication with the user.
· Automation Engine: Stays idle until triggered from the main thread, at which point it spawns secondary threads. This module is responsible for executing, saving, and deleting click automation routines — the core functionality of AutoTradePro. Automations can be triggered manually, via scheduled tasks, local sockets, or webhooks, providing maximum connectivity and integration.
· Scheduler Module: Runs in its own thread and enables the scheduling of automations for specific dates or at recurring intervals (e.g., every 15 minutes).
· SSCA (Server Socket Communication Agent): Serves as the core communication layer between threads. Its custom implementation can also be accessed by external systems.
· Webhook Module: The only Node.js-based component, this module connects AutoTrade to external systems over the network (e.g., TradingView). Compiled into a binary, it runs in parallel whenever the user’s subscription includes webhook capabilities.
Tracks your water intake, steps, weight, and supplements. Free, ad-free, and 100% offline. Make fitness an easy and accessible habit! Hybrid tracking, fitness, and health app. I handled the entire process—from design to architecture, including publishing on the app stores. Additionally, I developed a strategy to grow the user base, scale the business, and implement monetization.
· Pedometer: Custom plugin for native layer interaction. Manages step counting (Android-only).
Automation bots for trading strategies.
· P4RZ1V4L: Terminal-based environment for backtesting trading bots. Includes genetic algorithms and other systems to fine-tune input parameters. Uses an architecture that abstracts the backtesting process.
· L4NC3L0T: Automated trading bot. Executes trading strategies autonomously within a terminal environment.
The word 'Demiurge' comes from the Greek 'dēmiourgós' meaning 'maker,' 'artisan,' 'producer,' and ultimately, 'creator.' Demiurge is a set of utilities designed to streamline my workflows and automate processes.
· Demiurge: Component library to accelerate Angular application development, specifically tailored for hybrid applications.
· Youtube2ivooX: Automation of the process for downloading and extracting audio from YouTube, then uploading it to iVoox.
Dive into interactive stories where every choice impacts the plot and character behavior.
· Blazebook Mobile App: Mobile and web application for reading interactive books. Features a technical architecture designed to interpret interactive stories in an abstract way.
· Blaze server: NodeJS/NestJS server that manages users, handles files, and administers the database. Hosted on a dedicated local PC, separate from the frontend.
· Blazebooks (old): Old application. Native. It was my final degree project. I received top honors.
Collection of old, unrelated projects. Some of them were very useful for building certain architectural components and acquiring new knowledge.
· Dropsher: A tech entrepreneurship initiative focused on developing a drag-and-drop platform for creating no-code applications. While the project was ultimately discontinued, it provided valuable experience in collaboration, leadership, and people management.
· Rainclouds Web: Website for the Atmospheric Black Metal band RAZAK. It was in production for several years.
· Retro Games: Retro arcade game application. The goal was to offer a collection of classic games optimized for mobile devices. To integrate Phaser with Angular, I had to build an architecture component based on RXJS. This component has remained a core part of all the systems I've integrated since, due to its usefulness and versatility.
· Stoic Manager: Personal management application inspired by Stoic principles. Designed to help users organize their daily tasks.
· Battle Of Numbers: Terminal-based game. Developed using Termux on a mobile phone. It has no dependencies.