SiFive

Sr. Staff AI System Software Engineer

Taiwan · Work style not stated · Full time

Apply on the employer’s site ↗See how well you match this job

You apply directly with the employer. ROLIVA does not submit applications from this page and is not the employer.

About the role

Description from the employer’s posting. Check the employer’s page for the current version.

  • EmployerSiFive
  • LocationTaiwan
  • Work styleWork style not stated
  • Employment typeFull time
  • Employer posted

About SiFive

As the pioneers who introduced RISC-V to the world, SiFive is transforming the future of compute by bringing the limitless potential of RISC-V to the highest performance and most data-intensive applications in the world. SiFive’s unrivaled compute platforms are continuing to enable leading technology companies around the world to innovate, optimize and deliver the most advanced solutions of tomorrow across every market segment of chip design, including artificial intelligence, machine learning, automotive, data center, mobile, and consumer. With SiFive, the future of RISC-V has no limits.

At SiFive, we are always excited to connect with talented individuals, who are just as passionate about driving innovation and changing the world as we are.

Our constant innovation and ongoing success is down to our amazing teams of incredibly talented people, who collaborate and support each other to come up with truly groundbreaking ideas and solutions. Solutions that will have a huge impact on people's lives; making the world a better place, one processor at a time.

Show full description

Are you ready?

To learn more about SiFive’s phenomenal success and to see why we have won theGSA’s prestigious Most Respected Private Company Award(for the fourth time!), check out ourwebsiteandGlassdoorpages.

Job Description:

The Role

As an AI Systems Software Engineer, you will work with system architecture, hardware engineering, compiler, and software engineering teams to design and evaluate systems that combine RISC-V CPUs, RISC-V AI accelerators, memory subsystems, and high-speed interconnects. You will help design software implementations that take advantage of accelerator hardware features and integrate cleanly with existing operating systems and machine-learning software stacks.

You will develop system software across the Linux stack including but not limited to device drivers, heterogeneous memory management, accelerator runtimes, and hardware abstraction layers. Your work will enable efficient communication and memory sharing between RISC-V host processors and AI accelerators

You will be a part of the team creating a complete, open, and programmable AI computing platform based on the RISC-V instruction set architecture that will empower the next generation of generative AI and edge computing applications.

Responsibilities

  • Design and develop system software for RISC-V AI accelerator platforms, including Linux kernel components, device drivers, DMA engines, and memory-management subsystems.
  • Develop and optimize device-side low-level runtime to maximize RISC-V AI accelerator throughput and latency hiding.
  • Develop and integrate software for heterogeneous memory systems, including memory migration, page-fault handling, and Linux HMM-related mechanisms.
  • Develop and optimize software for interfaces such as PCIe, CXL, IOMMU, ATS, PRI, PASID, and other host-to-accelerator communication mechanisms.
  • Work with machine-learning framework teams to integrate accelerator runtimes with platforms such as PyTorch, TVM, MLIR, or related software stacks.
  • Engage with system architecture, hardware engineering, firmware, compiler, and other software engineering teams to review and refine hardware and software features.
  • Analyze and optimize system performance, including memory bandwidth, data-transfer overhead, address-translation latency, cache coherency, synchronization, and accelerator utilization.
  • Develop benchmarks, profiling tools, tracing infrastructure, and performance regression tests for AI workloads.
  • Debug complex issues across user space, the Linux kernel, firmware, FPGA prototypes, and accelerator hardware.

Requirements

  • This position involves development of software for AI accelerators, heterogeneous memory systems, and interfaces such as PCIe, CXL, and IOMMU. Strong knowledge of computer architecture, virtual memory, and DMA is required.
  • 8+ years of experience developing architecture-level code, operating-system components, or device drivers in C or C++ for multiprocessor and multithreaded systems such as Linux or BSD.
  • Experience with device drivers, memory management, DMA, interrupts, synchronization, virtualization, or IOMMUs.
  • Experience debugging complex multicore or heterogeneous systems.
  • Experience debugging with tools such as GDB, JTAG, OpenOCD, perf, ftrace, or equivalent tools.
  • Experience with Git, Makefiles, the GNU toolchain, and shell scripting.
  • Experience working with hardware architecture and engineering teams.
  • Strong understanding of computer architecture, including virtual memory, cache coherency, address translation, and interrupt handling.
  • Strong communication, collaboration, and listening skills.
  • B.Sc. or M.Sc. in Computer Science, Computer Engineering, Electrical Engineering, or a related discipline, or equivalent practical experience.

Preferred Qualifications

  • Experience developing firmware and software for GPUs, NPUs, TPUs, or other AI accelerators.
  • Experience with PCIe, CXL, ATS, PRI, PASID, cache-coherent interconnects, or accelerator memory systems.
  • Familiarity with CUDA Unified Virtual Addressing, CUDA Unified Memory, AMD ROCm, HMM, OpenCL Shared Virtual Memory, or similar heterogeneous memory systems.
  • Experience integrating custom hardware or accelerator runtimes with PyTorch, TVM, MLIR, or other machine-learning frameworks.
  • Experience implementing or modifying Linux Heterogeneous Memory Management, mmu_notifier, mmu_interval_notifier, or related Linux memory-management components.
  • Experience with RISC-V architecture, including paging, privilege levels, interrupts, exceptions, SBI, or platform firmware.
  • Experience with performance analysis using hardware performance counters and system-level profiling tools.

Additional Information:

This position requires a successful background and reference checks and satisfactory proof of your right to work in:

Taiwan

Any offer of employment for this position is also contingent on the Company verifying that you are a authorized for access to export-controlled technology under applicable export control laws or, if you are not already authorized, our ability to successfully obtain any necessary export license(s) or other approvals.

SiFive is an equal opportunity employer. We celebrate diversity and are committed to creating an inclusive environment for all employees.

Staying safe while you apply

  • Never pay to apply, interview or accept an offer. ROLIVA never asks you for payment to apply to a job.
  • Apply only through the official “Apply on the employer’s site” button, on the employer’s own site, and check that a recruiter’s email uses that employer’s own domain rather than a free email address.
  • Be cautious of an offer made with no real interview, or pressure to decide quickly or share financial details early.

Does something look wrong with this listing? Use “Report broken link” in the role details, or read ROLIVA’s full job-safety guidance ↗.

Preparing for this role with ROLIVA

  • Check the fit.

    Compare the requirements with the experience you have confirmed, including gaps.

  • Prepare honestly.

    Build interview stories and application drafts from your own evidence.

  • Keep track.

    Save the role and record your own application status and follow-ups.

Create a free workspace or log in.

Software engineer jobs in Taiwan

ROLIVA currently lists 140 open roles like this in Taiwan.

Employers hiring for this

  • Trendmicro43 open roles
  • Cadence18 open roles
  • SiFive9 open roles
  • Airproducts6 open roles
  • Marvell6 open roles

Top skills asked for

Listings whose description mentions each term. A mention is not a requirement.

At a glance

  • Employment typeFull time
  • SeniorityLead / Principal
  • Employer posted
  • Added to ROLIVA
  • Last checked

Skills in this posting

Skills ROLIVA found in the employer’s own description above. A mention is not a requirement.

Machine learning PyTorch

Explore similar roles

Similar jobs