Embedded Software Engineer

Permanent @Garniche Jobs UK in IT
  • Share:

Job Detail

  • Job ID 307004

Job Description

Our client is the world leader in high-performance software and hardware products and is now seeking an Embedded Software Engineer.

The role will be to design and manage embedded software development for hardware. You’ll need to interface with the hardware and PC application components of the product.

Responsibilities

• Design and implement embedded software for Hardware, from requirements to production and commercial deployment

• Interface with hardware designers and application developers, ensuring seamless integration to make the ultimate user experience.

• Maintain and expand functionality on our existing products

• Integrate and validate new product designs from conception

• Design, develop, test, review and debug system software

• Analyse and ensure efficiency, security, stability, and scalability of system resources

• Design manufacturing test protocols to automatically test hardware during a large scale manufacturing process

• Provide post-production support

Experience

Key Requirements:

• Degree(s) in Computer Science, Embedded Systems, Robotic Engineering or a related technical field.

• Embedded software specialist – proficiency in writing software in C and C++ as appropriate for performing the essential functions of this job description

• Extensive experience in FreeRTOS or other RTOS including interrupt handling code and device drivers.

• Interfacing and programming using ARM-based MCUs and/or MPUs – ARM Cortex M Series (32-bit ARM Cortex-M4F Processor) preferred

• Proven track record of working with and delivering embedded system designs to market

• Ability to utilise oscilloscopes, logic analysers, multimeters, soldering irons, etc. to design, test and validate embedded systems

Proven experience in the following:

• Low-level connectivity – UART, SPI, I2C, USB, and SDRAM, JTAG communication protocols

• Reading circuit diagrams and data sheets, creating specifications

• Software engineering, SDLC, and TDD and unit testing

• The manufacturing process

• Hands-on development and troubleshooting on embedded targets

• Strong communication and documentation skills

Knowledge of the following will be advantageous:

• Image processing

• Analog/Digital signal processing

• Python

• Git