Job Summary
- Be responsible for the design and implementation of software in one or more of the following areas:
- Linux kernel support for new architectures - write software for Linux kernel, device drivers, OpenSBI, u-boot, Yocto/OpenEmbedded.
- Customised Linux distributions (e.g. embedded applications)
- Deploying pre-existing benchmarks developing new ones as per customer needs
- Upstream - Contribute to the wider RISC-V software ecosystem, helping to ensure support for the architecture in various open-source projects
- Use emulators and real hardware to analyse and optimise software, including through the use of RISC-V’s vector instructions
- Code-review complex contributions in any of these areas
- Interact with architecture and hardware design teams to improve our next RISC-V CPU cores – provide inputs, drive architectural decisions based on software needs.
- Help maintain the documentation and reference implementations that our customers rely on
- Release SDK’s and work with customers to enable prototyping of their SoCs for evaluation and software development
Key Responsibilities
- 3 to 5 years of practical experience in embedded Linux development/debug.
- Experience developing architecture-level code or device drivers in C for multiprocessor, multithreaded open-source kernels such as Linux or BSD, with upstream involvement
- Proven experience with upstream development on high-level operating systems such as Linux
- Strong C or C++ programming experience, basic assembly level programming
- Knowledge of basic Operating System concepts (e.g. virtual memory, interrupt handling, privilege levels)
- Experience debugging complex multicore systems, experience with debugging tools (GDB, OpenOCD, Lauterbach)
Skill Requirements
- Experience with git, Makefile, GNU toolchain and shell scripting
- Experience with device drivers, virtualization, IOMMUs, power management or SoC platform security
- Experience working with hardware architecture and engineering teams
Strong communication, co-working, and listening skills