Mikel Villota
Software Engineer · Santander, Cantabria, Spain
Software engineer based in Cantabria, specialising in backend systems. I build reliable services that are easy to scale and maintain.
About
I started coding at 14 out of pure curiosity and haven't stopped since. I specialise in backend development, with a strong focus on clean architecture, microservices, and the approaches that keep services robust and scalable. I've worked across banking, fintech, consulting, and data-focused companies, on projects ranging from core banking microservices to LLM-based applications. Right now I'm learning Rust, and exploring AI inference: how models actually run in production.
Work Experience
Jul 2025 – Present- Worked on the Settlement Cycles domain: per-marketplace settlements plus internal management of collections and refunds, building and evolving backend services with Java and Spring Boot, and developing services for the Risk department using Python and FastAPI.
- Drove domain boundaries, contracts, and a progressive monolith-to-microservices migration alongside another engineer without disrupting production.
- Introduced CQRS on top of the team's hexagonal architecture where read/write separation earned its keep.
- Refactored legacy monolith code to unblock the extraction of ~5 modules into independently scalable services.
- Built CI/CD from scratch for new services; deployed on AWS (Elastic Beanstalk, EKS) with Kubernetes for horizontal scaling.
Mar 2025 – Aug 2025- Designed distributed scraping pipelines with Scrapy and Playwright across 5–10 web sources, deployed on Kubernetes.
- Automated processing through asynchronous AWS SQS queues, handling large volumes of concurrent tasks.
- Built extraction, cleaning, transformation, and normalisation pipelines for structured and semi-structured data.
- Fed the outputs into search engines, recommendation systems, and analytical visualisation tools.
Sep 2024 – Jul 2025- Built and evolved banking microservices across Python (Django) and Java (Spring) stacks.
- Designed a token-vault microservice from scratch on Redis, serving thousands of daily requests across backoffice workflows.
- Used Kafka as the backbone for event-driven architecture and as a structured log pipeline, decoupling producers from consumers.
- Modelled new tables in existing Oracle and DB2 schemas to support new use cases.
- Shipped on OpenShift with GitHub Actions CI/CD; quality gates via SonarQube and Fortify in a regulated environment.
Sep 2023 – Sep 2024- Worked across clients including the Regional Government of Castilla y León, a real estate developer, and an international logistics company.
- Moved to R&D and contributed to the early architecture of an in-house LLM product built with LangChain.
- Designed two proof-of-concept demos that shaped product direction: driver profitability analytics, and a SharePoint knowledge base with event-driven index consistency via content hashing.
- Built ETL pipelines (Pandas, Selenium, Scrapy) feeding analytical and AI workloads.
- Owned the full deployment cycle on Azure App Service with GitLab CI/CD.
Mar 2023 – Sep 2023- Sole backend developer, owning the full backend lifecycle end-to-end as a first professional experience.
- Built authentication, business services, REST endpoints, the PostgreSQL data model, and the test suite from scratch in Java and Spring Boot.
- Set up the deployment pipeline on AWS Elastic Beanstalk with GitHub Actions, leaving the backend near production-ready.
Education

Higher Education in Multiplatform Application Development
IES Augusto González de Linares · Santander, SpainSep 2021 – Jun 2023Certifications
Courses
Apr – Jul 2026Wannme Hydra
Learning Heroes
Projects
Beyond Humane
Brand co-founded with three colleagues to explore AI agent solutions. Built voice-agent MVPs with LangGraph and LiveKit, integrating ElevenLabs for synthesis and Twilio for outbound calls.
- LangGraph
- LiveKit
- ElevenLabs
- Twilio
ytm-player
498 ★ · contributorOpen-source YouTube Music TUI client with terminal playback, playlist management, and a customisable experience.
- Python
- Textual
- mpv
perplexity-webui-scraper
125 ★ · contributorScraper exposing Perplexity AI through an OpenAI-compatible REST API, MCP server, and CLI. Powers the Perplexity engine in tunnel-agent.
- Python
- FastAPI
- Playwright
- MCP
tunnel-agent
27 ★Native Windows desktop app routing local CLI agent traffic through AI provider subscriptions via a local OpenAI-compatible proxy. Supports Claude, Gemini CLI, Copilot, Codex, Perplexity, and custom providers.
- C#
- .NET 10
- Avalonia
Stack
Cloud & platform5
CI/CD & observability5
Latest posts
All postsGet in Touch
Have a technical challenge, a freelance project, or a role worth discussing? Send me a message and I'll get back to you.
