Systems Engineer, Automation
CoreWeave is a specialized cloud provider focused on GPU accelerated use cases including VFX, AI/ML, Batch Processing and Real Time Experiences. We support countless AI/ML services in the text to image, NLP and broader AI/ML space, reducing client’s infrastructure management requirements with our Kubernetes based serverless GPU cloud offerings.
Job Description
About the Role:
CoreWeave is seeking a highly skilled and motivated Systems Automation Engineer to join our Kernel HAVOCK Team, reporting to the Manager of Systems Engineering. In this role, you will play a crucial part in the design, development, and optimization of our bare-metal systems from POST through joining a Kubernetes cluster. The team’s primary responsibilities include maintaining a custom Linux kernel, various OS images (Ubuntu-based), the virtualization stack (kubevirt/qemu/vfio), and the container/pod runtime stack (containerd/nydus/kubelet). You will collaborate closely with cross-functional teams, upstack engineering teams, and stakeholders to successfully deliver highly performant and reliable software solutions.
Kernel Hardware - Acceleration - Virtualization - Operating Systems - Containerization - Kubelet
Our Team’s Stack:
- Linux Kernel (custom build)
- Intel/AMD CPUs, Nvidia GPUs, DPUs, Infiniband and Ethernet NICs
- ARM CPUs
- KubeVirt, QEMU, SR-IOV, vfio-pci
- Ubuntu
- Containerd, Kubelet
Responsibilities:
- Develop and maintain tooling to support both stateless and stateful systems
- Automate packaging of critical components (e.g. drivers, microcode, components with out-of-tree patches, etc)
- Build long-lived, well documented tooling for automating various tasks related to the full lifecycle of systems (e.g. hardware/software inventory management, hardware diagnostics, performance benchmarking, etc)
- Build and serve as point of contact for CI/CD pipelines for reproducible software builds, OS images, and kernel/OS-level testing
- Collaborate with cross-functional teams to define Linux and OS requirements, specifications, and system architecture
Requirements:
- 5+ years of professional experience maintaining clusters of Linux servers
- Fluency with a programming language geared toward automation (Python preferred, but others possible)
- Experience adhering to structured release cycles
- Experience building CI/CD pipelines (GitHub or GitLab)
- Experiencing with implementing automation testing
- Ability to effectively prioritize and communicate proposed features and fixes
- Strong passion for automation, with a commitment to automating processes comprehensively
- Excellent documentation skills and attention to detail
- Strong analytical and problem-solving abilities
Nice-to-haves:
- Experience building and/or extending automation frameworks
- Familiarity with Golang
- Opinions about software version control and team collaboration
- Experience writing software tests
Our compensation reflects the cost of labor across several US geographic markets. The base pay for this position ranges from $160,000-$185,000. Pay is based on a number of factors including market location and may vary depending on job-related knowledge, skills, and experience.
About the Role:
CoreWeave is seeking a highly skilled and motivated Systems Automation Engineer to join our Kernel HAVOCK Team, reporting to the Manager of Systems Engineering. In this role, you will play a crucial part in the design, development, and optimization of our bare-metal systems from POST through joining a Kubernetes cluster. The team’s primary responsibilities include maintaining a custom Linux kernel, various OS images (Ubuntu-based), the virtualization stack (kubevirt/qemu/vfio), and the container/pod runtime stack (containerd/nydus/kubelet). You will collaborate closely with cross-functional teams, upstack engineering teams, and stakeholders to successfully deliver highly performant and reliable software solutions.
Kernel Hardware - Acceleration - Virtualization - Operating Systems - Containerization - Kubelet
Our Team’s Stack:
- Linux Kernel (custom build)
- Intel/AMD CPUs, Nvidia GPUs, DPUs, Infiniband and Ethernet NICs
- ARM CPUs
- KubeVirt, QEMU, SR-IOV, vfio-pci
- Ubuntu
- Containerd, Kubelet
Responsibilities:
- Develop and maintain tooling to support both stateless and stateful systems
- Automate packaging of critical components (e.g. drivers, microcode, components with out-of-tree patches, etc)
- Build long-lived, well documented tooling for automating various tasks related to the full lifecycle of systems (e.g. hardware/software inventory management, hardware diagnostics, performance benchmarking, etc)
- Build and serve as point of contact for CI/CD pipelines for reproducible software builds, OS images, and kernel/OS-level testing
- Collaborate with cross-functional teams to define Linux and OS requirements, specifications, and system architecture
Requirements:
- 5+ years of professional experience maintaining clusters of Linux servers
- Fluency with a programming language geared toward automation (Python preferred, but others possible)
- Experience adhering to structured release cycles
- Experience building CI/CD pipelines (GitHub or GitLab)
- Experiencing with implementing automation testing
- Ability to effectively prioritize and communicate proposed features and fixes
- Strong passion for automation, with a commitment to automating processes comprehensively
- Excellent documentation skills and attention to detail
- Strong analytical and problem-solving abilities
Nice-to-haves:
- Experience building and/or extending automation frameworks
- Familiarity with Golang
- Opinions about software version control and team collaboration
- Experience writing software tests
Our compensation reflects the cost of labor across several US geographic markets. The base pay for this position ranges from $160,000-$185,000. Pay is based on a number of factors including market location and may vary depending on job-related knowledge, skills, and experience.