Build System, CI, And Infrastructure Engineer

Recogni
Summary
Join Recogni, a leading AI company, as a mid-level Build System, CI, & Infrastructure Engineer. You will design, implement, and maintain build systems and continuous integration pipelines, collaborating with various teams to optimize workflows and ensure robust product deployment. This role demands strong expertise in build tools, containerization, scripting, and version control. The position requires proven experience in a similar role and proficiency in Linux, Docker, and various scripting languages. Recogni offers competitive compensation, including flexible spending and Bonusly awards, reflecting a commitment to a supportive work environment. We prioritize our employees' well-being and their families, aiming for a healthier, happier life inside and outside work. We value their contributions and offer tailored benefits for health and financial security, catering to different life stages.
Requirements
- Proven experience (3+ years) in a similar Build/CI role
- Linux & Package Management: Proficient with apt, pacman, and manual build flows (./configure && make install)
- Containerization: Hands-on experience with Docker (Dockerfiles, Compose)
- Compilation & Linking: Solid understanding of gcc/clang/ld, stdlib, libc, and different linking strategies (static, shared, header-only)
- Version Control (Git): Ability to use submodules effectively, manage forks, and handle branching strategies
- Build Systems: Strong experience with Makefiles and CMakeโauthoring, troubleshooting, and optimizing
- Scripting (Bash): Advanced knowledge of Bash scripting, environment variables, and pipeline usage
- CI Pipelines: Familiar with setting up and maintaining automated pipelines (e.g., Jenkins, GitLab CI, CircleCI, etc.)
- Python & Ecosystem: Competent in Python scripting, package management with pip, virtual environments, and integrating Python tools
Responsibilities
- Develop, maintain, and optimize build pipelines using Makefiles, CMake, and other relevant build tools
- Integrate various package management systems (apt, pacman, raw source builds) within our development workflow
- Collaborate with cross-functional teams to ensure smooth integration of new features and releases
- Create and manage Docker containers, Dockerfiles, and Docker Compose configurations for development and production environments
- Troubleshoot and resolve container and deployment-related issues quickly and efficiently
- Leverage deep knowledge of compilation and linking processes (gcc/clang/ld), as well as libraries (stdlib, libc)
- Oversee static, shared, and header-only linking strategies to ensure compatibility and performance
- Utilize Git effectively, including submodule management, forking strategies, and branching models
- Maintain repository hygiene and support the development team in version control best practices
- Author and maintain advanced Makefiles to handle complex build scenarios
- Develop Bash scripts to automate repetitive tasks, configure environments, and manage pipelines
- Use Python for scripting, tooling, and integration with external libraries (pip, virtual environments, binding)
- Design and maintain CI/CD pipelines that ensure quick feedback and high-quality releases
- Integrate automated testing, code quality checks, and security scanning into the CI process
- Partner with software and ASIC engineers to gather requirements and refine build and CI workflows
- Participate in code reviews, brainstorming sessions, and technical discussions
Preferred Qualifications
- Familiarity with Conan for C/C++ package management
- Experience with Lua and Luarocks
- Exposure to Rust and its crate ecosystem
- Knowledge of alternative build systems (e.g., Meson, Bazel, Buck2)
- Experience with Node.js and npm for front-end or tooling tasks
- Strong communication and collaboration skills, enabling you to work effectively with cross-functional teams
- Ability to manage priorities in a fast-paced environment
- A passion for continuous learning, improvement, and sharing knowledge with peers
Benefits
Competitive compensation, including flexible spending and Bonusly awards