Embedded Software Engineer / Senior Embedded Software Engineer
ArmJob Title
Embedded Software Engineer / Senior Embedded Software Engineer
Role Summary
Join Arm's Software (CE-SW) group to develop and test low-level firmware and software stacks for reference application processors and future Arm platforms. The team works on firmware, bootloaders, device drivers, and test automation across models, development boards and shipping devices.
The role focuses on delivering reliable low-level software, creating and maintaining test code and automation, and upstreaming changes to relevant projects.
Experience Level
Senior β minimum 4+ years of relevant experience.
Responsibilities
The core responsibilities are low-level software development, testing and maintenance for Arm reference platforms.
- Design, implement and test reference application processor firmware.
- Develop and debug low-level software on software models, development boards and shipping products.
- Create software stacks for Arm reference platforms for upcoming devices.
- Develop test code and create automation to reduce manual testing and speed development.
- Analyze industry specifications and roadmap requirements; break down tasks and support project planning.
- Upstream and maintain software components in relevant repositories.
Requirements
Must-have technical skills and experience for successful execution of the role.
- Minimum 4+ years of relevant embedded software experience.
- Excellent C/C++ programming skills with ability to add significant functionality and fix complex defects.
- Demonstrated experience in software development and software testing.
- Strong understanding of low-level systems and system architecture (preferably ARM): OS fundamentals, bootloaders, and device drivers.
- Good understanding of test methodologies, continuous integration (CI) and test automation.
- Strong interpersonal and communication skills in English.
Nice-to-have:
- Experience with Python and shell scripting.
- Some knowledge of assembly language and advanced debugging techniques.
- Familiarity with Linux kernel internals, device drivers, Android internals and driver development on Linux/Windows.
- Experience with open-source contribution processes, software profiling, instrumentation and optimization.
- Experience in firmware verification/validation, Security Development Lifecycle (SDL) practices and Agile development methods.
Education Requirements
Not specified.
About the Company
Company: Arm
Headquarters: Cambridge, United Kingdom
ARM is a global leader in semiconductor and software design, driving innovation in computing technology. The company specializes in designing processors and systems that provide the essential building blocks for electronic devices. ARM's architecture is widely used in smartphones, servers, and IoT devices, and its collaborative culture fosters bold thinking, diversity, and high-impact benefits for its talented workforce.
