ARM
Senior Embedded Software Engineer
ARM, Austin, TX
Arm’s Software Engineering group is responsible for creating and improving the software eco-system around Arm's next generation of applications processors. We help our partners build creative Arm-powered products, for various segments Mobile, Server, IoT connected devices, Augmented & Virtual Reality offerings, Autonomous Driving Solutions etc. and in this process, we work on range of development platforms: software-models, FPGAs, emulator, silicon. You will join a team of passionate Software Engineers who all want to mark their stamp on the future of ARM-powered computing, wherever it may lead.Job Overview:As a member of the Software Group you will have the opportunity to build upon your existing background, knowledge and expertise and contribute to Open Source projects, e.g. EDK II, Linux Kernel, Trusted Firmware, SCP firmware etc. providing reference implementations and optimizations to key software system components. This contribution helps drive the development of world-class System Software, for architected hardware and software platforms catering Server Segment, and becomes reference designs for futuristic ARM based servers. We seek individuals with exposure and knowledge of every level of the System software stack ranging from BareMetal firmware, bootloaders, Kernel and Distros. Passionate about innovative technologies? - We want to hear from you!Responsibilities:Contribution to the design and development of Reference systems and Platform software for Arm application processors and MCUs.Supporting key partners, upstreaming and maintaining open source software componentsBe part of an extended development team and you can expect to be working face to face with some of the greatest household names in our industry.Helping to develop, optimize and deliver the software needed to support Arm's ground-breaking IP, as well as helpingArm grow its role in new embedded and enterprise market segments.Prepare test specification, test plans based on design documents of software and hardware modules.Develop unit test module/scripts for validating the software/hardware functionalities.Required Skills and Experience :Experience in firmware or Linux kernel development, command over concepts such as, bootloaders, device drivers.Experience in developing complex software stack written preferably in C.Expertise in debugging and optimizing complex software systems.Knowledge of any SCM preferably GitShow a strong interpersonal and communication skills that are essential for success; we are looking for excellent written and spoken English.We expect a professional, enthusiastic and flexible approach to work with a flair for creative lateral thinking and problem solving with a commitment to extend the breadth and depth of your knowledge.“Nice To Have” Skills and Experience :Experience with working in the open-source community. We value understanding of open-source project development cycles and contribution processes.Familiarity with ARM-A or ARM-M architectures.Familiarity with open source projects such as TF-A and EDK II.Good understanding on ARM- v8-A and ARM- v8-M architectures, SMMU or IO-MMUs.Familiarity with technologies such as RAS, hypervisors, CXL, power management and security.Familiarity with industry standards such as ACPI and UEFI.Familiarity with open-source test tools.An awareness about the value of CI and automated test system.Experience with customer interactions, diagnose and resolve reported issues.In Return:Our US offices are amazing places to collaborate. We also have some scope to adapt the job role and title for the right person - if you are interested but unsure whether you tick all the boxes, we still would love you to reach out! We are keen to welcome versatile people into Arm!#LI-LB1Salary Range:$149,047-$201,652 per yearWe value people as individuals and our dedication is to reward people competitively and equitably for the work they do and the skills and experience they bring to Arm. Salary is only one component of Arm's offering. The total reward package will be shared with candidates during the recruitment and selection process.Accommodations at ArmAt Arm, we want our people to Do Great Things. If you need support or an accommodation to Be Your Brilliant Self 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 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 ArmArm’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 ArmArm 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.