Embedded Software

Development Engineer

Madrid / Spain

Job description

If you are a software engineer that loves C++, Linux and low-level programming, this might be the perfect job for you!

Our products are used by leading TV operators and broadcasters worldwide to deliver innovative digital TV services to their customers. In our software development centres, we work with trendy programming languages and technologies, trying to find the most optimal solution in terms of performance and flexibility. We usually choose “native languages”, like C++ for set-top boxes, Android, Kotlin, Objective-C and Swift for devices, and Java in the back-end.

We are looking for new engineers to join our STB development team, mainly to increase the capacity for integrating new platforms.

Our application for STB is developed in C++ with Qt libraries and cross-compiled to run natively in different STB models. Besides, we receive drivers from the STB manufacturers and other 3rd party modules that we need to integrate in our build system.

The STB runs Linux Kernel OS that we customise, looking for optimisations and to fulfil requirements from the CA vendors.

The main tasks for the STB platform integration team are:

  • Creating a build system that allows us to integrate all the software and deploy it in the different STB models in an easy way.
  • Integrating SW drivers and modules from the STB manufacturer, making sure that everything works properly.
  • Dealing with partners that provide SW modules to clarify requirements and issues.
  • Low level C++ development, close to the platform and drivers.
What you will be doing:

– You will be dealing with C++ code most of the time, addressing changes and integrating code from others.

– You will receive drivers and modules from 3rd party and you will integrate them in our solution.

– You also will need to customise the embedded Linux OS.

We love robust solutions and we promote “good programming practices”, looking for excellence in our product development. Starting with the coding style that guarantees an easy-to-read and commented code, the proper usage of code repositories in Git and Mercurial, a good unit testing coverage, continuous integration and continuous deployment, with an important set of (nightly) automatic testing in our lab.

Our solutions and the global ecosystem are really complex. The development, evolution and maintenance of the different applications usually last for several years so everything needs to be properly tracked. We use Confluence and Jira for this purpose.

What we require:
  • Engineering in Audiovisual Systems, Telecommunications, Software Development or similar.
  • High level of C++ with good capacity for understanding and debugging code from others.
  • Experience with build systems like CMAKE, auto-tools and build-root.
  • Good communication skills to deal with people and to help others to understand technical issues.
  • Fundamentals of Linux kernel and shell scripting.
  • Knowledge of television and video solutions (optional).
  • Ability to understand new systems and technologies.
  • Troubleshooting and problem-solving skills.
  • Good English level.
  • Availability to travel.
  • A team player with a positive attitude to life.

What we offer:
  • Fixed salary depending on the experience of the successful candidate
  • Variable pay incentives
  • Ticket RestaurantⓇ
  • Health insurance
  • Short working hours every Friday and throughout July and August
  • English classes
  • Flexibility with taking holidays
  • Fantastic work environment
  • Regular outdoor events and team-building activities
  • In-office perks such as Fruit Friday
  • and much more!
Apply now
Share this offer with a friend
A typical day for a Dev at Mirada
Fernando, Software Developer
  • Arrive at the office around 9:00 by bike
  • Check emails for any problems with latest product deployment
  • Resolve problems and continue with assigned tasks
  • Go for a coffee break with the guys from the team
  • Work on assigned tasks, correct bugs reported by QA
  • Go for lunch with teammates to a nearby Italian place – we get lunch vouchers!
  • Team meeting about a new function of Mirada’s latest UI
  • “Sweets in the office” email alert! It’s María’s 29th birthday. RUN!
  • Work on programming the new UI function
  • Back-end testing with colleagues across set-top boxes and mobile devices
  • Finish work around 18:20 and cycle home
Apply now