Senior Embedded Software Engineer

Arm Limited
Published
October 7, 2020
Location
110 Fulbourn Road, Cambridge, United Kingdom
Category
Job Type

Description

We are looking for hardworking software engineers to help build the next-generation embedded operating systems for Arm’s Cortex M microcontrollers and IoT platforms that will be used to deploy billions of IoT devices.

This role is available in our Cambridge site, to work alongside developers contributing to the future of our products.

What you'll do

You will be developing the core of the embedded operating system, device drivers, connectivity stacks and associated testing infrastructure. You will work in a mixture of a collaborative and open source environment, blended with silicon partners working on confidential next-generation products.

You will use your experience and insights to craft our technology and the way we work. You will collaborate with the rest of the teams, our silicon partners, customers and the wider communities.

This is a great opportunity to work on exciting new technologies and challenges to address relevant issues such as optimizing power consumption or ensuring interoperability of microcontrollers!

About you

You have a passion for technology and an interest in the embedded systems, you love working collaboratively and you have strong interpersonal skills. You design solutions that are as simple as possible while keeping a high-level view on objectives. You take pride in helping improving quality of products by designing and creating tests that can help identify issues and improve performance metrics. You can collaborate with other specialists to fix problems. You take nothing for granted and take ownership of your work. You choose the right tool for the job. You design APIs that others find intuitive to use. You write documentation and code that others can understand, set high standards and deliver on time.

You will have the following technical skills:

  • Significant experience in embedded software development.
  • C and C++ development skills
  • Proficiency in Compilation process and tools, C libraries and microcontroller startup
  • Knowledge of Python or strong scripting skills.
  • Experience working directly with customers on capturing and analysing requirements while supporting them on the development process (this is a customer / partner interaction role)
  • Knowledge of RTOS and system concepts.
  • Experience with version control, preferably Git.
  • Experience with Agile development.
  • A methodical approach to solving problems and delivering solutions

Optionally you will also have some of the following:

  • Experience with modern C++ standards (C++11 and newer).
  • Experience developing on Arm Cortex-M microcontrollers, peripherals and using CMSIS standards
  • Experience working on a large open source project.
  • Experience developing tests and using continuous integration frameworks, such as Jenkins, Travis or CircleCI.
  • Experience with connectivity stacks such as Bluetooth, WiFi, Ethernet.
  • Experience with storage solutions, block device drivers and file-systems.

Related Jobs

Image Processing Software Developer   Fort Meade, Maryland
June 17, 2019
Software Developer Level 2   New Windsor, Maryland
June 4, 2019
Desktop page
~