Apptronik is building robots for the real world to improve human quality of life and to help solve the ever-increasing labor shortage problem. The company needs to ensure its developers can build, test, and deploy complex robotics software with maximum velocity and reliability.
Requirements
- Expertise in scripting and automation using modern languages like Python or Bash.
- A strong command of the Linux operating system, including networking, file systems, permissions, resource management, and shell environments.
- Experience with C++ and a strong command of its build ecosystem, particularly CMake.
- Proven ability to design, build, and manage complex, automated CI/CD pipelines (e.g., Bitbucket pipelines, GitLab CI, GitHub Actions).
- Proficiency with containerization technologies
- A solid understanding of core networking fundamentals (TCP/IP, DNS, HTTP).
- Experience with C++ package managers like Conan.
Responsibilities
- Design, build, and maintain scalable and resilient CI/CD pipelines tailored for a large-scale C++ and Python codebase.
- Take ownership of the underlying infrastructure for our CI/CD system, including managing container orchestration (Kubernetes) for build agents and services.
- Proactively identify and resolve bottlenecks in the build and test process, applying optimizations such as advanced caching, parallelization, and build system improvements (CMake).
- Manage artifact and container registries, ensuring secure, reliable, and fast access to software dependencies and build outputs.
- Develop and maintain essential tooling and automation that simplifies and accelerates the entire development workflow, from local development to hardware-in-the-loop (HIL) testing.
- Manage the C++ dependency ecosystem using tools like Conan, balancing developer flexibility with build reproducibility and stability.
- Automate the provisioning and configuration of development and testing resources using Infrastructure as Code (IaC) principles with tools like Terraform and Ansible.
Other
- You will join a team developing state-of-the-art general-purpose robots designed to operate in human spaces and with human tools.
- This role requires a generalist mindset, blending hands-on infrastructure management with understanding of the C++ build ecosystem.
- The ideal candidate is a pragmatic problem-solver, working through problems not seen before, managing a Kubernetes cluster one day and optimizing a CMake script the next.
- Work directly with robotics engineers to understand their challenges and collaboratively develop effective, pragmatic solutions.
- Bachelor's degree in Computer Science, Computer Engineering, or a related field, or equivalent practical experience.