Shield AI

Shield AI

San Diego, CA

Senior Software Engineer - C++

Introduction to Shield AI Shield AI’s mission is to protect service members and civilians with artificially intelligent systems.  For our world-class team, no idea is too ambitious, and we never stop working to make possible what looks out of reach today. We are backed by Silicon Valley venture capital firms including Andreessen Horowitz, have been shipping product since 2018, and are growing rapidly. Job Description Are you a passionate and innovative software engineer looking to help develop state of the art AI products? Are you eager to make a positive difference in the world? Do you want to work alongside mission-driven and values-focused teammates? Shield AI is just the place for you! As a Senior Staff Software Engineer focused on the foundations of our AI software stack, you’ll have the opportunity to work on projects that span the full spectrum of software development at Shield AI and play a critical role in our success as a company!

What you'll do:

    • Contribute to the effort to define and enforce modern software design practices
    • Create tools for trusted launching and configuration of components and processes on our robots and in simulation
    • Develop common libraries for consistent creation of components in the software stack
    • Create standard practices for implementing and defining APIs and communication between components
    • Create tools to perform guarantees on the correctness of the software system and build and test
    • Create common libraries for use by specialized components to ensure consistent execution of common actions
    • Contribute to the CI toolchain to verify the correctness of code, scripts, and configuration files

Projects you might work on:

    • Designing a modern approach to managing the launch and configuration of a complex system
    • Design and develop multi-agent communications solutions
    • Support development of middleware for autonomous robotic systems
    • Develop tools to test the correctness of multi-threaded and multi-processed code

People we're looking for have the following required education and experience:

    • 5+ years of professional work experience as a software engineer
    • BS in Computer Science or equivalent degree
    • Experience with contributing to large and complex software projects
    • Experience with multi-threaded C++ programming

Competencies:

    • Modern C++ (14 or later)
    • Algorithms and data structures
    • Software architecture
    • Concurrency
    • Communication protocols
    • Testing (Googletest, Nose, etc.)
    • Debugging (GDB, etc.)
    • Build systems (Bazel, CMake, etc.)
    • Git
    • Agile
    • Excellent communication skills
    • Demonstrated ability to work hard, be a trustworthy teammate, hold yourself and others to high standards, and be kind to others

Preferred skills/experience:

    • Experience with robotics
    • Experience with ROS
    • Experience with middleware or communications
    • Experience with RTOS

If you're interested in being part of an engineering team that works hard, loves to have fun, and is working on some truly meaningful, challenging work; apply now and we can chat further! Shield AI is proud to be an equal opportunity workplace and is an affirmative action employer. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, marital status, disability, gender identity, or Veteran status. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you have a disability or special need that requires accommodation, please let us know. To conform to U.S. Government regulations, applicant must be a U.S. citizen, lawful permanent resident of the U.S., protected individual as defined by 8 U.S.C. 1324b(a)(3), or eligible to obtain the required authorizations from the U.S. Department of State.