The Software (CE-SW) group is responsible for developing and improving the software ecosystem around Arm's next generation architectures and systems. This means working with processors and other hardware technology not yet available to the public. You will join a team of Software Engineers who share a passion for leaving their mark on the future of computing.
We are looking for highly capable engineers to work in the areas of Client/Server/IoT, ready to use their knowledge and experience to ensure we continue to deliver software with the level of quality demanded by our customers.
If you are similarly passionate about innovative technologies, then we would love to hear from you!
Responsibilities:
- Support software release activities, including release preparation, validation, branch/tag creation, artifact generation and release documentation.
- Maintain and improve CI/CD pipelines, including jobs, runners, schedules, artifacts and reporting workflows.
- Develop automation for build, test, validation and release processes to reduce manual effort and improve repeatability.
- Develop and maintain Python-based automation scripts, test cases and reusable components within the team’s automation framework.
- Integrate automated tests with CI/CD pipelines to enable continuous testing across development and release branches.
- Support automated validation across FVP, emulation, FPGA and SoC platforms, including provisioning, flashing, boot validation and log collection.
- Monitor pipeline and test failures, perform initial triage, and collaborate with software, firmware, validation and infrastructure teams to resolve issues.
- Document and continuously improve release, CI/CD and automation processes to improve reliability, execution time and developer productivity.
Required Skills and Experience:
- 3–6 years of relevant experience in software development, validation, test automation, CI/CD, release engineering or similar roles.
- Good programming skills in Python, with working knowledge of C/C++ and shell scripting for automation, debugging and tooling.
- Hands-on experience with CI/CD systems such as GitLab CI, Jenkins or GitHub Actions, including jobs, runners, pipelines, artifacts and scheduled executions.
- Experience in developing and maintaining automated test scripts, test suites and reusable automation utilities for functional, smoke and regression testing.
- Basic understanding of software release processes, including branching, tagging, merge requests, release artifacts, versioning and release validation.
- Good understanding of Linux, system software fundamentals, boot flow, firmware, drivers and basic debugging using logs and test results.
- Good understanding of software testing methodologies, failure triage, test reporting and collaboration with cross-functional engineering teams, with good written and verbal communication skills.
“Nice To Have” Skills and Experience:
- Experience contributing to or maintaining a Python-based test automation framework using tools such as PyTest or similar frameworks.
- Familiarity with automating release activities, CI/CD workflows, artifact generation, test reporting and publishing of validation results.
- Basic understanding of ARM system architecture, Linux kernel, bootloaders, device drivers and embedded software environments.
- Exposure to firmware validation and hardware or virtual platforms such as FVP, emulation, FPGA or SoC-based systems.
- Familiarity with Git-based development workflows, open-source contribution models, code reviews, merge requests and repository management.
- Awareness of software profiling, instrumentation, performance optimization, security development practices and software quality processes.
- Familiarity with Agile development methodologies and an understanding of the value of continuous integration, continuous testing and automated software delivery.
Our 10x mindset guides how we engineer, collaborate, and grow. Understand what it means and how to reflect 10x in your work: https://careers.arm.com/en/10x-mindset
#LI-SA3
Accommodations at Arm
At Arm, we want to build extraordinary teams. If you need an adjustment or an accommodation during the recruitment process, please email accommodations@arm.com. To note, by sending us the requested information, you consent to its use by Arm to arrange for appropriate accommodations. All accommodation or adjustment requests will be treated with confidentiality, and information concerning these requests will only be disclosed as necessary to provide the accommodation. Although this is not an exhaustive list, examples of support include breaks between interviews, having documents read aloud, or office accessibility. Please email us about anything we can do to accommodate you during the recruitment process.
Hybrid Working at Arm
Arm’s approach to hybrid working is designed to create a working environment that supports both high performance and personal wellbeing. We believe in bringing people together face to face to enable us to work at pace, whilst recognizing the value of flexibility. Within that framework, we empower groups/teams to determine their own hybrid working patterns, depending on the work and the team’s needs. Details of what this means for each role will be shared upon application. In some cases, the flexibility we can offer is limited by local legal, regulatory, tax, or other considerations, and where this is the case, we will collaborate with you to find the best solution. Please talk to us to find out more about what this could look like for you.
Equal Opportunities at Arm
Arm is an equal opportunity employer, committed to providing an environment of mutual respect where equal opportunities are available to all applicants and colleagues. We are a diverse organization of dedicated and innovative individuals, and don’t discriminate on the basis of race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or status as a protected veteran.