Opportunities for permanent roles in a range of business sectors

C++ Software Engineers

Due to our continued growth we are looking for a number of C++ Software Engineers who are either already well versed in writing embedded software or have some experience and wish to expand their knowledge and experience in this area of development. As a company we believe strongly in training, mentoring and coaching which allows us to effectively support new colleagues who are keen to progress their careers and grow.

Due to our continued growth we are looking for a number of C++ Software Engineers who are either already well versed in writing embedded software or have some experience and wish to expand their knowledge and experience in this area of development. As a company we believe strongly in training, mentoring and coaching which allows us to effectively support new colleagues who are keen to progress their careers and grow.

In addition as we program in embedded C++ we will support embedded C candidates who have a good level of C++ experience in developing software at different software stack levels and assist them in the specifics of programming in C++ in such a resource constrained environment.

After training Platform Firmware Developers will be using their systems knowledge and experience to develop Firmware that would be run on the SoC (System on Chip) in development to aid in making sure it meets the requirements. This may involve video and audio processing at high pixel rates, displays systems (HDMIDisplayPort), high speed data handling (USB, ETH, DDR), and Security (HDCP). They will be expected to collaborate with IC DesignersIC Verification Engineers and other Firmware Developers across multiple sub-teams.

The Firmware is written in Embedded C++ and executes at the top-level IC simulator, FPGA and ASIC. The Firmware evolves towards a production code that involves object oriented design and unit testing.

You will gain a good understanding of how to adapt existing production Embedded C++ code to the test setup, which uses a Linux-based GCC development environment and CMake. Some knowledge of embedded CPUs is assumed, along with an understanding of common RTOS behaviours. Previous experience of JTAG source-level debuggers would be an advantage, as would any experience in an Agile development environment.