Software Engineer - Host and Network IO

Cerebras Systems

$135K — $160K *
Information Technology
Less than 5 years of experience
Job Overview by Ladders

Qualifications

  • Master's/PhD in Computer Science or Electrical Engineering + 1 year industry experience, OR 3+ years industry experience.
  • Experience in large software environments.
  • Knowledge of embedded systems and HW/SW co-design.
  • Familiar with network protocols (TCP, RoCE) and tools like Wireshark.
  • Exposure to network switch environments (Arista, Juniper) or openness to learn.
  • Detail-oriented with a willingness to grasp broader concepts and tackle new challenges.

Responsibilities

  • Develop x86 & ARM software for advanced hardware IO in AI/HPC contexts.
  • Govern a generic IO API for multiple internal users.
  • Create control and configuration systems to work with Cerebras hardware.
  • Troubleshoot network performance in extensive AI clusters.
  • Analyze network statistics to identify and resolve bottlenecks.
  • Build tools for enhanced visibility into network and IO pathways.
  • Optimize CPU/memory usage with techniques like kernel bypass and zero-copy.
  • Integrate cutting-edge networking technologies and protocols.
  • Lead cross-functional projects that merge diverse software and hardware components.
  • Facilitate effective communication between teams and stakeholders.

Benefits

  • Collaborative work environment with a multidisciplinary team.
  • Opportunities for professional growth in cutting-edge AI technology.
  • Access to advanced computational resources.
  • Dedicated support for continued learning and development.
Full Job Description
About The Role

The Host and Network IO Team develops the full IO path implementation between a distributed system of server nodes, through the cluster, down to the custom RoCE network stack implemented in Cerebras' system, and over the proprietary IOs onto the WSE. As a software developer on the team, you will interface between AI application-level IO teams, cluster architecture teams, and FPGA/ASIC teams to develop solutions that optimize bandwidth and latency while minimizing congestion, pauses, pause spreading, unfairness, etc. Strong skills in socket programming will enable you to deploy robust management operations, while deftness in RDMA Verbs will enable you to optimize CPU resources and shape network traffic to deliver real world impact on AI performance metrics, as well as developing tools for gaining insight and visibility into network behavior. Meticulous analysis and rigour are key tenants of this role, harnessing that together with a deeply-understood mental model of the server, NIC, protocol, switch, and custom hardware behavior will enable you to lead network debug, optimize traffic patterns, and prescribe architectural changes.

Responsibilities
  • Develop x86 & ARM software to expose next-generation hardware IO capabilities for AI/HPC application teams
  • Govern a generic IO API with multiple internal users.
  • Develop control and configuration subsystems directly interacting with Cerebras hardware
  • Drive network performance debug of large AI clusters
  • Gather and analyze network statistics and packet traces to root cause and alleviate bottlenecks and sub-optimalities.
  • Develop tools/telemetry for increasing visibility into the network and IO datapath.
  • Optimize cpu/mem utilization leveraging kernel bypass and zero-copy techniques
  • Integrate leading edge networking technologies and protocols
  • Lead cross-functional technical projects spanning multiple teams and integrating diverse software and hardware components to deliver an improved network IO solution.
  • Foster clear and effective communication across teams and stakeholders.


Skills & Qualifications
  • Master's/PhD in Computer Science or Electrical Engineering + 1 year industry experience, OR 3+ years industry experience.
  • Experience in large software environments.
  • Embedded systems, HW/SW co-design, and some driver development.
  • Network protocol familiarity (TCP, RoCE) and network debug tools such as Wireshark, or willingness to learn
  • Some network switch environment familiarity or willingness to learn (Arista, Juniper, etc.).
  • Detail-oriented but keen to learn the bigger picture and step out of comfort zone to embrace the unknown.


Similar Jobs

More Jobs at Cerebras Systems

More Information Technology Jobs

Find similar Software Engineer - Host and Network IO jobs: