Strategic context and Value proposition
As a C++ developer, you will participate in the analysis, development and integration of the SW that will be built for a new family of products, delivering the world’s most advanced and intuitive smart alarm product suite.
This new range of products will be built on top of Linux open source stack. Throughout the product development cycle, you will partner with SW engineers, Functional Analysts, Testers and Software Designers to deliver an experience that our users will love.
The ideal candidate will be a developer with at least two years of experience using C++ on Linux systems. Experience with complex development environments using git and embedded toolchains, is a must. Good knowledge of C++17 using state of the art technologies such as Boost is very valuable.
Responsibilities
· Participate in technical decisions discussions and trade off and deliver technical solution design.
· Develop solutions using C++, IPC communications through DBUS interfaces and integrated with different services on the system.
· Integrate with Yocto Linux build system, using CMake and the GNU Toolchain.
· Code to test, using TDD and proven methodologies in an agile environment.
· Bugfixing and correction of issues, following QA plans and release management
Management KPIs
· Product Quality: customer satisfaction with product/product usage, traditional alarm product KPIs (supervision failure), ad-hoc product performance (voice recognition).
· Development/delivery quality: Number of bugs after launch.
· Delivery on time and budget.
Other relevant information
Direct report to R&D Head of Service Enablers in Madrid within one of the different teams that participate in the system development.
This role is based in Madrid, with some European travel required.
Experiences and Qualifications
Must have requirements
· Minimum of 2 years of working experience
· Good knowledge on the following areas:
o C++ development, using modern standards
o Test Driven Development and unit testing frameworks
o Design Patterns, SOLID principles, design before code
o CMake and GNU Toolchain in embedded development
o Modern C++ libraries and frameworks such as Boost
o DBUS and/or other IPC mechanisms
o Experience with git and gitflow paradigm
· Masters or Degree in Engineering, Computer Science or IT related background.
· Fluency in written English. Capable of maintaining work related conversation
Secondary requirements
· Experience developing embedded systems on Linux
· Yocto Linux
· Product oriented profile, enthusiasm and motivation
· Attention to detail, quality and excellence on documentation and fine tuning
Strong fit with our Company DNA
· Passionate in Everything We Do: Our people have a sense of energy that is unmistakable, one that drives us to delight our customers and focus on creating impact quickly
· Committed to Making a Difference: When we say we will do something, we deliver with excellence. We are accountable, focused and operate with discipline
· Always Innovating: We believe that Innovation can be big or small; it’s a continuous state of mind that inspires us to think differently and always make things better. We are risk takers and we learn continuously.
· Winning as a Team: Our people know that by leveraging one another’s strengths, investing in and developing our team’s capability and by collaborating well, we will win.
· With Trust & Responsibility: Operating with integrity is core to our success. We are humble, honest and value deep mastery and expertise. We do the right thing, always.