Glydways - Software Engineer (Build Infrastructure)
Requirements
• Hands-on experience maintaining Bazel (or a comparable system such as Buck or Pants) in a multi-language monorepo: writing rules and macros, configuring toolchains, and debugging build and cache correctness. • Experience with remote caching and remote execution (for example BuildBuddy, EngFlow, Buildbarn, or NativeLink) is a significant plus. • Strong knowledge of build systems and other tools in the software development cycle, like: git, linting, GitHub, code review, testing frameworks and deployment frameworks. • Working knowledge of C++ build toolchains (compilers, linkers, sysroots, cross-compilation). • Strong knowledge of CI/CD best practices and principles, with bonus points for direct experience with Buildkite. • Experience developing tools and services in Python or Go. • Experience with Linux operating systems in both day-to-day development and operational environments. • Knowledge of AWS or other similar cloud platforms; Terraform experience is a plus. • Knowledge of on-call support processes, incident management and monitoring tooling. • Familiarity with front-end web development (for example HTML, CSS, JavaScript, or a modern framework) sufficient to build and maintain simple internal tools and dashboards is a plus.
Responsibilities
• Own and evolve our Bazel build system, keeping it fast, reliable, hermetic, and easy to use for every engineer. • Design and roll out remote caching and remote build execution (RBE), and tune build and test performance across local and CI environments. • Maintain rules, toolchains, and dependency management for C++, Python, and Go, including cross-compilation for embedded targets. • Maintain and enhance developer workflows, including build, lint, code coverage, and testing support for C++, Python, and Go languages. • Collaborate closely with software engineering teams to identify and implement improvements in the continuous integration (CI) system, utilizing AWS and Buildkite. • Develop, deploy, and support automation tools to streamline common developer workflows, such as change submission, integration testing, and dependency management. • Design and implement basic monitoring services and dashboards to track build health, cache hit rates, and the performance and stability of internal processes and systems. • Participate in the team's support and on-call rotation, responding to issues and keeping shared developer infrastructure healthy.
Apply in one click
Upload My Resume
Drop here or click to browse · Tap to choose · PDF, DOCX, DOC, RTF, TXT