Search

Senior Software Engineer, Communication Libraries

Persimmons
locationSan Jose, CA, USA
PublishedPublished: 6/14/2022
Technology
Full Time

Job Description

Job Description

Who we are:

Persimmons is building the infrastructure that will power the next decade of AI. Founded in 2023 by veteran technologists from the worlds of semiconductors, AI systems, and software innovation, We’re on a mission to enable smarter devices, more sustainable data centers, and entirely new applications the world hasn’t imagined yet.

Why join us:

We’re growing fast and looking for bold thinkers, builders, and curious problem-solvers who want to push the limits of AI hardware and software. If you're ready to join a world-class team and play a critical role in making a global impact - we want to talk to you.

What you’ll do:

As a Sr Software Engineer on our team, you will be responsible for building the communication libraries for our high performance scalable system.

  • Design the communication protocols for device discovery, routing and efficient dataflow for AI workloads running across distributed hardware.
  • Develop scalable communication software architected to efficiently coordinate across thousands of compute nodes in large-scale AI clusters
  • Define and Implement low level communication primitives for inter device data transfer using advanced high speed interconnect protocols.
  • Implement high speed data transfers using DMA and efficient memory management.
  • Collaborate with cross-functional teams to design, test, and optimize our hardware and software solutions.
  • Analyze and improve the efficiency, scalability, and performance of our systems.
  • Stay abreast of industry trends and advancements to ensure our solutions remain competitive and innovative.
  • Provide technical leadership across the software team, mentoring engineers, and help scale the team as the company grows.

Requirements

What You Bring To The Table:

  • 7+ years of software development experience in developing high performance software for HPC systems, distributed systems or hardware accelerators
  • Deep knowledge of collective communication algorithms and primitives (NCCL, ROCm, MPI)
  • Knowledge of hardware architectures and their optimization implications, including memory hierarchies, high speed interconnects, DMA engines, and multi core parallel processing.
  • If you can do the above, you already have strong C/C++ skills.
  • BS/MS/PhD degree in Computer Science, Computer Engineering, or related field (or equivalent experience)
  • Strong interpersonal, verbal and written communications skills
  • Capability to achieve objectives under tight deadlines
  • Experience executing tasks while managing competing priorities
  • Deep understanding of technology and passion for what you do
  • Strong teamwork, specifically a proven ability to effectively guide and influence within a dynamic matrix environment
  • Excellent problem-solving skills and the ability to work in a dynamic, fast-paced environment.

Benefits

  • Competitive salary and benefits package
  • Flexible PTO
  • 401k

Please note: Our organization does not accept unsolicited candidate submissions from external recruiters or agencies. Any such submissions, regardless of form (including but not limited to email, direct messaging, or social media), shall be deemed voluntary and shall not create any express or implied obligation on the part of the organization to pay any fees, commissions, or other compensation. Direct contact of employees, officers, or board members regarding employment opportunities is strictly prohibited and will not receive a response.

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...