Systems Software Engineer

FuriosaAI is a South Korean AI semiconductor company building energy-efficient inference accelerators, servers, and software for enterprise and cloud AI deployments.

Series C0 current maintainers0 active leads
Seoul, South Korea
About FuriosaAI

FuriosaAI develops the RNGD AI inference accelerator and NXT RNGD Server, alongside a software toolchain for compiling, optimizing, and deploying LLM and agentic-AI workloads.

View jobs by FuriosaAI

Skills

Candidate Availability

Required and preferred rules are kept separate and reflect the wording in the original posting.

About the Role

You will develop and maintain boot firmware, early system initialization, and power-management software for AI accelerator SoCs. You will port and debug Arm Trusted Firmware and bootloaders, support FPGA and silicon bring-up, write low-level drivers and test code, investigate firmware-to-hardware issues, and maintain technical documentation.

Requirements

  • BS or higher in Computer Science, Electrical/Electronic Engineering, Computer Engineering, a related field, or equivalent practical experience.
  • Programming skills in C and shell scripting, Python, or Go.
  • Basic understanding of Rust or willingness to learn it.
  • Understanding of computer architecture, including CPU pipelines, memory hierarchy, cache, virtual memory, MMU, and interrupts.
  • Basic understanding of the Linux kernel and device drivers.
  • Familiarity with operating-system concepts and the Linux development environment, including gcc or clang, make, git, and shell.
  • Problem-solving skills and willingness to investigate low-level details.

Responsibilities

  • Develop and maintain boot firmware and early system-initialization code under senior-engineer guidance.
  • Port, build, and debug Arm Trusted Firmware and bootloaders on SoC platforms.
  • Develop power-management firmware for DVFS, clock and power domains, and low-power state transitions.
  • Support SoC bring-up and silicon validation on FPGA prototypes and real silicon.
  • Write and maintain low-level drivers, test code, and technical documentation.
  • Investigate and debug issues across firmware, the Linux kernel, and hardware boundaries.