Senior Principal Engineer with 20+ years of experience in software development, cloud architecture, and IoT systems. Expert in AWS serverless technologies, team leadership, and transforming monolithic systems into scalable microservices. Proven track record of driving technical vision and delivering business-critical solutions.
Experience
2022 - Present • Senior Principal Engineer at Fresco
Principal Engineer of the KitchenOS, a platform for the connected kitchen. I’m responsible for the technical direction of the KitchenOS platform, cloud and IoT (including firmware), helping to define the 3-year vision and understanding business needs.
Main achievements
- Re-architected the entire KitchenOS system, moving from a monolithic architecture to an event-driven architecture composed of serverless microservices based on AWS foundational building blocks.
- Responsible for the technical evaluation, definition and design of new features, working with people from different areas such as product, design, web and mobile leads.
- Leading the IoT and Platform areas of KitchenOS, providing guidance and collaboration on critical code paths, analysing and fixing bugs.
- Business leadership defining processes, meetings and ceremonies that affect not only engineering, but also product, sales and delivery.
- Team leadership, defining best practices and delivery processes, team operational excellence. Mentoring and helping other developers grow.
- Delivery-orientated mindset to help the business close key deals, develop and lead PoCs, make decisions and accept trade-offs.
2018 - 2022 • Senior Backend Engineer at Fresco
Senior Backend Engineer on a platform for the connected kitchen composed by a REST API for Web and Mobile clients, and an Event-Driven system for appliances communication using a company custom firmware and integrating with third party manufacturers cloud. Evolved from backend developer to team lead and now Head of platform and IoT.
Main achievements
- Implemented several features for the REST API stack developed with Python (Flask) using Redis, ElasticSearch and PostgreSQL. And also participated in the re-implementation of the events subsystem based on Python (asyncio, FastAPI) using Redis, Postgresql, RabbitMQ and VerneMQ (MQTT).
- Involved on DevOps tasks using Terraform and Ansible to deploy on AWS EC2 machines and using RDS, ElasticCache, ECS, Fargate… maintaining different environments and meeting production SLOs.
- Leading several important code refactoring and actually redesigning the complete platform migrating from a monolithic architecture to microservices based on serverless stack (API Gateway, AWS Lambda, DynamoDB…)
- Designed and implemented a performance tests framework based on locust.io and AWS Fargate.
- Proactive on fixing and analyzing complex problems and bugs.
- Team leadership integrating best practices, deployment processes, team ceremonies, etc.. to get ready to scale as a team.
2016 - 2018 • Senior Firmware Engineer at By Tech
Senior firmware engineer for a custom access control embedded system, managing real time video and SIP calls through a web user interface. The communication between the devices and a centralized server were done using WebSockets and a request/response protocol relying on Protocol Buffers for its definition. Integrating the whole system with different custom hardware products based on ARM boards, tailoring a Linux embedded system using Buildroot.
Main achievements
- Product development since its inception using C++11 and Qt5 over embedded ARM boards implementing a custom request/response protocol using Protocol Buffers.
- Design and implementation of a web user interface based on AngularJS running on a Linux embedded device running a QtWebKit browser.
- Integrated on a custom Linux embedded system using Buildroot, applying custom Linux kernel driver patches and working side by side with the hardware team.
- Designed and implemented a high availability solution for an internal webclient/server application based on keepalived and haproxy for in-house servers
- Agile development using Google test and google mock frameworks, and functional testing using Jasmine over an internal CI system (Jenkins).
- Involved in software analysis, design and estimation tasks.
2012 - 2016 • Senior Software Engineer at Teltronic
Project leader of an in-vehicle computer solution for the public safety sector. Involved in all product development processes: software design and implementation, project management, hardware certification and regulations fulfillment, and collaborating with the manufacturing line and the QA department.
Main achievements
- System integration to a custom LTE infrastructure (Networking design, Python and C++11).
- Implementation of a UART protocol to communicate with TETRA radio devices (C++11, STL, Boost) over carrier grade VoIP solutions fulfilling public safety regulations.
- Build a custom Ubuntu based Linux distribution for commercial in-vehicle hardware.
- Design and implementation of a high availability solution to store custom data from geolocalized vehicles and fleet management (in-house infrastructure deployment)
- Team leadership and Software project management: Planning, monitoring and control, configuration management, risk management, quality assurance, measurement and analysis following the company standardized process.
- Involved on several company task groups for continuous improvement and growth
2004 - 2012 • Founder and Software Engineer at Warp Networks
Involved in all system development life cycle activities on several projects. I participated on projects with heterogeneous technologies, meeting customer expectations with agile practices. I also helped to implement a standardized set of development quality processes.
Main achievements
- Implementation of custom UART and TCP/IP communication protocols for different applications.
- Radio interface layer implementation (UMTS and CDMA) on Android and Windows Mobile.
- Implementation of new features for different Web and Desktop applications using MySQL, Ruby (RoR), Perl and C++ (Qt)
- Open source contributor on https://github.com/Zentyal/zentyal
- Gather customer requirements, software analysis, design and estimation.
- Company founder
2001 - 2004 • Intern at EUPLA, Universidad de Zaragoza
Assignments mentoring and teaching on several courses: Concurrency and Real Time, AI, Robotics and Electrical machines regulation. Common laboratory maintenance tasks
Education
- 2003 Summer course on Engineering Applications of Artificial Intelligence (Universidad Carlos III de Madrid)
- 2003 Summer course on Real time on embedded systems. Presence in aerospace sector and consumer electronics (Universidad Carlos III de Madrid)
- 2001 - 2004 Bachelor Degree of Computer Science (Universidad de Zaragoza, EUPLA)
Skills
Hard
- Programming languages: Python, Go, Rust, modern C++ and their ecosystems and frameworks.
- Background on AWS: AWS Lambda, API Gateway, SNS/SQS, EventBridge, EC2, RDS, ElasticCache, ECR/ECS, Fargate…
- IaaC: Experience with Terraform, Ansible and AWS CDK.
- DevEx: Care about CI/CD, documentation and good practices and processes, Linux system, hardware/software integration and scripting for tooling
Soft
- Leadership
- Teamwork
- Adaptability
- Willingness to learn
- Critical thinking
- Effective communicator
Interests
- Technology
- Open Source
- Cooking
- Maths
- Art