Software Engineer III - Autonomy

AeroVironmentPittsburgh, PA
10h

About The Position

As a Software Engineer III - Autonomy you will work within a fast-moving, collaborative Agile development environment focused on developing autonomy-related software capabilities. In this role, you will plan, design, develop, and test software systems that enable autonomous behaviors, decision-making, and mission execution for complex platforms. The position emphasizes algorithm development, system integration, and reliable operation in real-world environments.

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.
  • Expertise in C++, and Matlab or other robotic simulation environments.
  • Experience with Git or similar source control system.
  • Experienced writing unit tests and debugging code.
  • Experience developing or integrating autonomy-related algorithms, such as control logic, state machines, behavior trees, and/or decision management techniques.
  • 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 with underwater robotics, autonomous systems, UAS, or related domains is strongly preferred.
  • Experience with, or use of, AI in autonomous system mission management and execution.
  • Experience in/exposure to underwater perception, or perception in general.
  • Experience with simulation, testing, or validation of autonomous behaviors.
  • Experienced with formal and structured lifecycle development process.
  • Experienced with Agile Software Development Process Management.
  • Demonstrates understanding of object-oriented design, data structures, databases, and operating systems; basic knowledge of networking is preferred.
  • Demonstrates good judgment in selecting methods and techniques for solving autonomy-related software problems.
  • Demonstrates effective listening, questioning, clarifying, and summarizing skills to communicate effectively in one-on-one and small group settings.
  • Demonstrates understanding of the overall system design and how assigned autonomy-related tasks contribute to 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 system-level requirements and autonomy concepts; participates in software and algorithm design reviews
  • Creates software and algorithm design documentation in accordance with software process requirements and guidance from Senior Engineers
  • Implements autonomy-related software components according to coding standards; writes unit tests and validates software according to the defined process
  • Contributes to process improvement efforts related to autonomy software development and testing
  • Delivers work on time according to agreed completion dates and project schedule & budget
  • Supports the development of autonomy algorithms derived from detailed software and system requirements (e.g., control, decision logic, state machines, planning, or perception-adjacent logic)
  • Works closely with cross-functional teams—including systems, controls, perception, and UI engineers—to integrate autonomy software across multiple programs
  • Supports reuse of autonomy-related software components across different platforms 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