Posted in

Senior Software Engineer – Devops – AD/Adas

Senior Software Engineer – Devops – AD/Adas

CompanyWoven
LocationAnn Arbor, MI, USA
Salary$Not Provided – $Not Provided
TypeFull-Time
Degrees
Experience LevelSenior

Requirements

  • Extensive experience with C++ (C++14 onward)
  • Extensive experience with Linux operating systems in general
  • Extensive experience using Git in software projects with many developers
  • Moderate experience using Bazel within large software projects
  • Moderate experience with scripting languages (bash, python, etc.)
  • Some familiarity with Cloud Infrastructure (AWS, GCP, or similar)
  • Some familiarity with standard IaC tools (Terraform or similar)
  • Some experience with Python packaging
  • Some experience developing and maintaining CI/CD solutions

Responsibilities

  • Develop and maintain core software systems required for daily software development:
  • Build/Test (Bazel)
  • Source-code/Dependency Management / Software Deployment
  • Developer build environment (Ubuntu)
  • AWS Infrastructure and IaC (EC2, S3, ECR, IAM, Terraform, etc.)
  • Artifact storage (Artifactory, AWS S3, etc.)
  • Caching (BuildBuddy, in-house solutions)
  • CI/CD (Github Actions, BuildKite)
  • On-prem Hardware-in-the-loop/test benches support
  • Support autonomous driving sub-teams (Perception, Planner, Controls, Data, etc.) in their day-to-day activities:
  • Work with other developers to diagnose build failures in their projects
  • Advise other developers on build/CI best practices
  • Help set up build/CI configurations for new projects
  • Maintain build/CI infrastructure and adapt resource constraints to usage requirements
  • Consolidation and integration of multiple large scale autonomous driving C++ software stacks/projects
  • Deploy, examine and evaluate new software source-code/dependency management systems

Preferred Qualifications

  • Moderate/Extensive experience with modern C++ (C++17 onward)
  • Moderate experience with Software Development Best Practices
  • Experience with compiler toolchain configuration (Clang, GCC, NVCC, etc.)