Skip to content

Experience

  1. to Present

    Remote

    Europol

    SIRIUS project

    Software Engineer · Collaborator & Maintainer

    Developing and maintaining a tool for Europol’s SIRIUS project (opens in a new tab).

    • Built the application’s backend in Rust, focusing on asynchronous programming, concurrent processing and efficient resource management.
    • Implemented a worker-based architecture using gRPC for communication between Rust services and Python workers, separating task orchestration from execution.
    • Developed the web interface with Next.js and TypeScript, and managed application packaging and deployment with Docker Compose.
    • Continue to maintain and improve the tool through bug fixes, testing and ongoing development.
    • Rust
    • Python
    • Next.js
    • TypeScript
    • PostgreSQL
    • gRPC
    • Docker
  2. to

    Madrid, Spain

    CITCO

    Ministry of the Interior · Spain

    Software Engineer · Internship

    Developed open-source intelligence (OSINT) tooling that remains in use within the organization, working across data collection, database management, application development, and deployment.

    • Implemented web-scraping services in Python as part of an application built with Next.js and MySQL.
    • Contributed to deployment using Docker and Docker Compose to run the application and its services together.
    • Python
    • Next.js
    • MySQL
    • Docker
    • Docker Compose
  3. to

    Madrid, Spain

    Colectivo Cinética

    Full-stack Developer · Freelance

    Developed desktop software used by multiple education centers, alongside a web interface connecting the applications to the company’s website.

    • Built two cross-platform desktop applications with reusable components and a modular architecture to support ongoing maintenance and development.
    • Designed and developed the web interface in React and TypeScript, and packaged applications with Docker for production deployment.
    • React
    • TypeScript
    • Docker