Senior Software Engineer

Email:blog AT

I'm a software engineer who has always loved computers.
Daily I speak swift and Objective-C, I’ve embraced in the past C++, and eventually I code a bit in python
As I can't live without sysadmin, I enjoy debian and use it in any server/computer I can (even now that I’ve turned to Apple ecosystem)
Always looking to get and give the best from and for my team mates, creating good mood.
Even now I still considering myself a newcomer developer to iOS and macOS.
I enjoy doing things for endurance and what’s best for the users, otherwise I don't feel confortable.

When I'm not developing I enjoy talking with my friends and family, taking photos, reading, watching series….



Key values:

Professional, arranged, forever-learner, team player, bug hunter, proactive


Apple: iOS, swift, objective-C

Software Design: UML, OOP, MVP, VIPER…

Linux: Embedded Linux, Debian, red hat,

Languages: C, C++, python, swift, haskell, ADA, prolog, html…

Debugging: Xcode, lldb, valgrind, gdb, profiling…

Control version: git, mercurial, subversion, cvs, clearcase

Frameworks: Qt, QML, STL, …


Passion and curiosity for computers have always lead my life.
Since I was 6 years old I have always had a computer close to me, using it for gaming or school homework. At 8 I started programing in BASIC (although not very successfully). It was at 16, when I started to read about linux in magazines, when I realized I needed to know more about computers.
And now I know I can not stop it, all my jobs have been an excuse to play with software. That is why Free software is my natural habitat, it is an unlimited source.


06.2018 - present

Mirada – iOS Team

Participating in IZZI, ATNI, DIGITAL, SKYTEL and MIRADA iOS product development

As a big career move, I’ve needed to study lots of topics to start catching up the rest of the team. I will enumerate the most important, as it could always be a good reference for anyone in the same position:

Features participation:

  • Bugfixing.
  • AirPlay integration for izzigo app and kids app.
  • nPVR (network PVR)
  • Home Screen. Promotion with images and video advertising.

I’ve been taking part in the next roles :

  • Documentation and design. Create UML diagrams for existing features and use cases.
  • Development + Testing. Integrating Airplay requires a good AVFoundation undestanding, some HLS, etc.

This roles involved: bug hunting, performance issues, apple integration, etc.
I’m a senior developer, but still a senior iOS team member, so still need some work to fully understand Apple development world. As always, willing to help team mates and project manager doubts, as I always like to learn all language and topics details.


swift, objective-C, CLEAN, VIPER, Alamofire, Realm, HLS, FairPlay
iOS, Xcode, fastlane, jenkins

Company website: Mirada
Mirada forms the largest independent interactive audio/visual supplier in Europe.

Client info: Televisa – IZZI
IZZI is a tier 1 telecom from Mexico, part of TELEVISA group. A video content provider leader.

Client info: ATN International – One Communications
ATN International is a tier 1 telecom from USA.


08.2017 - 06.2018

Mirada – IZZI / ATNI Set Top Box

Participating in Company projects, such as Youtube certifications or browsers such as Chromium or Cobalt integrations.

Participating in ATNI-One Communications project, for about 6 months, which successfully integrated WIFI and ETHERNET management inside our STB devices stack.
Features participation:

  • WIFI and ETHERNET management and configuration. (WPA2, WPE, Ethernet)

Participating in IZZI project, within Youtube/Netflix integration, for about 3 months.

Features participation:

  • Custom enterprise Toolchain integration for Chromiun browser and Cobalt browser.
  • DIAL protocol bug fixing and integration.


I’ve been taking part in coupled roles :

  • Documentation and design. UML diagrams.
  • Library/OS level: C++/QT/scripting development, integration for wifi support using wpa_supplicant( .

This roles involved: bug hunting, performance issues, 3rd party and OS library problems, etc.
I’m a senior team member, able to resolve specific problems. And as always, willing to help team mates and project manager doubts.

As part of improvement and innovation, I have encouraged participation with Concurrent Integration team.

C++11, cmake, shell-scripts, busybox, QT, QML, mercurial, JIRA, gdb, hardening, python, wifi, wpa_supplicant
Linux Embedded, arm, mips, schroot, cross-compilation, jenkins

Company website: Mirada
Mirada forms the largest independent interactive audio/visual supplier in Europe.

Client info: Televisa – IZZI
IZZI is a tier 1 telecom from Mexico, part of TELEVISA group. A video content provider leader.

Client info: ATN International – One Communications
ATN International is a tier 1 telecom from USA.


2011 - 08.2017

Mirada – Euskaltel Set Top Box

Senior Software Engineer

Participating in Euskaltel project, for about 6 years, which successfully resulted in a HD STB deployment (visit customer product website (spanish) link is down) still in use in north Spain.
Which features :

  • PPV (Pay Per View). Video On Demand (VOD)
  • Network StartOver, Network Timeshift, Network PVR
  • HD – HDMI (High definition TV and smooth graphical interface)
  • Multimedia media center (Video, Music, Pictures)
  • Guide, Grid, Miniguide. All TV info easy to check
  • External USB PVR (future releases), never released.

I’ve been taking part in different roles inside Euskaltel project:

  • Documentation and specification review.
  • Graphical interface level: QML/QT/C++ interface development and bugfixing.
  • Library/OS level: C++/QT/scripting platform stability, integration, chroot toolchain generation, product releases.
  • Development, documentation and design for Nagra CAK6/Nagra Security Certification 1.4. A CAS(Content Access System) certification including system hardening.

This roles involved: bug hunting, memory leaks, performance issues, 3rd party and OS library problems, DVB standards knowledge, technical integration with an international partner, etc.
I’m a team member reference, always trying to help team mates and project manager doubts.

As part of improvement and innovation, I always use python and shell-scripting to ease my regular tasks.

Any new feature or change request is always analysed using UML diagrams or similar.

C++, cmake, shell-scripts, busybox, QT, QML, DVB, mercurial, JIRA, gdb, Nagra CAK 6, hardening, python
Linux Embedded, renesas-SH4, schroot, cross-compilation

Company website: Mirada
Mirada forms the largest independent interactive audio/visual supplier in Europe.

2009 - 2011


Senior Analyst/software engineer

Working on automatic announcement systems (IRIS) product, an audio/visual information system used by underground and overground top companies such as Metro de Madrid, CPTM, Renfe or Metro Mexico.

My main tasks included embedded software design and development in C/C++, combining all software cycle: analysis, design, implementation, improvement, testing and maintenance.
Soon became key software developer on deployment, validation, start up and put in production of developed system (including on site tests).

As part of improvement and innovation, I ported platform applications to x86, and using tools like valgrind solved memleaks and performance problems. I also build a simple automatic tester using python, as well as short programs to ease common tasks.

Technical assistance and support to other departments of the company along start up and put in production.

Linux Embedded, ARM7, C++, C, python, UML,cross-compilation
ATP, CBTC, MVB, OOP, distributed systems, sockets, multicast, ethernet, RS-485, MVB, streaming, subversion, gdb, valgrind, profiling, virtualbox

Company website: Sepsa/Albatros
Company is specialized in design, manufacture, commercialization and maintenance of equipment for the railway industry.

2008 - 2009


Software Engineer

My main task working in HSS (Home Subscriber Server) node for LTE wireless:communication standar.

  •  Software development in Ericsson HSS node. (C++, CORBA).
  •  Unitary testing and support to integration tests (C++, CORBA, TTCN).

I worked as outsource. My employer was Quality Objects.

c++, corba, ttcn, unix, bash, Rational Clearcase

Company website: Ericsson
Telecom world leader provider company

2006 - 2008


Support Engineer

My first company.

I started as an internship working in the first steps of what today is QVD.

After that I started working as technical engineer in out of office hours I was in charged of fixing/workaround down services until main development team could find a proper fix. My main tasks included 2nd and 3rd tier support.

I worked with: Mail and MMS virus/spam filters for Vodafone Spain, micro pay system for Movistar Spain, inhouse company systems.

snmp, monitoring, sendmail, ldap, apache, mysql, sun, linux

Company website: Qindel
Technology consulting and virtualization, based on free software.


2006 - present

Computer Science. EDP.

Developing End of Degree Proyect (PFC)

Developing End of Degree Proyect (PFC)


Kernel linux process monitoring.


The project has been designed (almost entirely) and developed by myself. It’s main task is to monitor internal linux kernel data structures related to each process.

A graphical interface and remote monitoring is included in this design.


UML, C++, C, CORBA, HAL, SSL, D-BUS, kernel linux, GTKmm, DBUSmm, sockets, TCP-IP, autotools, shell-script, unit testing, subversion, trac, VirtualBox, apache.

More info:

All project has been developed as a free software project, following all common guidelines. All infrastructure was chosen and managed by myself. It’s expected that any required patches that will be required in the different used libraries will be submitted upstream.
All this decisions are the reason for the long duration of the project.
You can check current state visiting the project website:


2007 - 2007

LPI 10x Certification

Linux Professional Institute. (LPI ID 000151145)
LPI 102: Pass. 530/500

LPI 101: Failed. 470/500


Personal Projects

2005 - present

Personal Projects

Start up and maintenance of my own web server, mail server, and free software project infrastructure.

Currently I maintain the following websites: My own resume


Currently you can see a part of my development in bitbucket, github, or stackoverflow.


Old websites: Personal website (spanish and english) Natural food in your home (spanish). Incredible cakes, cookies and sweets blog (spanish).

Let's keep in touch