Software Engineer III - Robotics Generalist

AeroVironmentPittsburgh, PA
13h

About The Position

As a Software Engineer III - Robotics Generalist, you will work within a fast-moving, collaborative Agile development environment to design, develop, and test software for robotic systems. This role focuses on building and integrating software across perception, control, autonomy, and system infrastructure to support reliable robotic behavior in real-world environments. Engineers in this role work closely with multidisciplinary teams to deliver robust, maintainable robotic software for new products and enhancements.

Requirements

  • Bachelor's degree in Computer Engineering, Computer Science, Electrical Engineering, Math, or Physics is required or equivalent combination of education, training, and experience
  • Minimum 5 - 8 years of relevant experience in Linux application software development.
  • Object Oriented Design experience is required.
  • Significant experience in C++.
  • Able to contribute to core design tradeoffs of why one implementation might be advantageous over another.
  • Experienced writing unit tests and debugging code.
  • Experience with Git or similar source control systems.
  • Works well in a small team.

Nice To Haves

  • Advanced degree is preferred
  • Experience with RTI or other DDS based middlewares.
  • Demonstrated mathematical and analytical skills are required.
  • Experience with version control systems (e.g., Git, SVN) in production environments, including professional practices such as commit hygiene, branch management, and collaborative workflows.
  • Experience working with underwater robotic systems.
  • Experience working across multiple robotics domains such as autonomy, perception, controls, or system integration.
  • Experience standing up CI/CD infrastructure.
  • Experience developing, testing, or deploying software on real robotic hardware is strongly preferred.
  • Experienced with Agile Software Development Process Management.
  • Experienced with formal and structured lifecycle development process.
  • Demonstrates understanding of object-oriented design, data structures, databases, operating systems, and basic networking concepts.
  • Demonstrates good judgment in selecting methods and techniques for solving complex, system-level robotics problems.
  • Demonstrates effective listening, questioning, clarifying, and summarizing skills to communicate effectively in one-on-one and small group settings.
  • Demonstrates understanding of the robotic system being developed and how assigned tasks contribute to overall system behavior.
  • Able to excel in a fast-paced, deadline-driven environment, where small teams share a broad variety of responsibilities.
  • Displays strong initiative and drive to accomplish goals and meet company objectives.
  • Takes ownership and responsibility for current and past work products.
  • Is committed to learning from mistakes and continuously improving individual and team performance.
  • Has effective problem-solving, analytical, interpersonal and communication skills.
  • Focuses on teamwork, collaboration and puts the success of the team above one's own interests.

Responsibilities

  • Works within a defined software life cycle development process.
  • Understands robotic system requirements and participates in software and system design reviews.
  • Creates software design documentation in accordance with software process requirements and guidance from Senior Engineers.
  • Implements robotic software components according to coding standards; writes unit tests and validates software according to the defined process.
  • Contributes to process improvement efforts related to robotic software development, testing, and deployment.
  • Delivers work on time according to agreed completion dates and project schedule & budget.
  • Supports and derives algorithm design from detailed software and system requirements, including control, state estimation, autonomy, or perception-adjacent logic.
  • Works closely with cross-functional teams (software, electrical, mechanical, systems, and test) to integrate software across robotic platforms.
  • Supports reuse of robotic software components across different programs and products.
  • Operates in a continuous learning environment under moderate supervision; provides guidance and mentoring to less experienced engineers.
  • Works on problems of diverse scope where analysis of data requires evaluation of identifiable technical and operational factors.
  • Other duties as assigned.

Benefits

  • AV offers an excellent benefits package including medical, dental vision, 401K with company matching, a 9/80 work schedule and a paid holiday shutdown.
  • For more information about our company benefit offerings please visit: http://www.avinc.com/myavbenefits .
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service