Software Engineer

AeroVironmentCentreville, VA
$91,000 - $129,150

About The Position

We are looking for a Software Engineer (Apps) to join the Learning & Active Perception (LEAP) team in AV’s MacCready Works business segment. LEAP focuses on the development of innovative image/video processing and computer vision technologies for both user applications (to accelerate and automate tasks, reduce analyst cognitive load) and robotic systems (to provide perception capabilities, enable autonomy and complex behavior, etc.). This role is specifically centered around implementation of video processing and perception pipelines for low-SWaP processors (e.g., Nvidia Xavier/Orin) and integration into unmanned aerial systems (UAS) and maritime surface vessels (USV), including test and evaluation via benchtop testing and operationally relevant field experimentation.

Requirements

  • Bachelor’s degree in Computer Engineering, Computer Science, Electrical Engineering, Math, or Physics is required or equivalent combination of education, training, and experience
  • 5-8 years of relevant experience in software engineering or related field
  • Strong software engineering skills with proficiency in C/C++ (primary), including a sound understanding of common data structures, algorithms, object-oriented programming, and development workflows
  • Experience with CMake and modern C++ build systems
  • Experience with Python for tooling, scripting, and prototyping (secondary)
  • Experience with Ubuntu and/or CentOS Linux operating systems
  • Experience with writing unit tests and debugging code
  • Demonstrated mathematical and analytical skills are required
  • Demonstrated familiarity with source code configuration management tools, such as Git, as well as familiarity with IDEs and debuggers
  • Collaboration with external developers and customers
  • U.S. Citizenship required
  • Must be willing to work on government contracts and be able to obtain a DoD security clearance; an active clearance is a plus
  • Willingness to travel within the continental U.S. (Occasionally / Up to 20%)
  • Willingness to obtain or already have an FAA Part 107 certification to operate small UAS.

Nice To Haves

  • Experience with DDS, gRPC, and Rust is preferred
  • With guidance from senior engineers, be able to contribute in the design, coding, documenting and testing software using the Scrum Framework
  • Demonstrates effective listening, questioning, clarifying and summarizing skills to effectively communicate in one-on-one and small group settings
  • Demonstrates understanding of system design that one is working on and understands the role that assigned tasks play in the system
  • Able to excel in a fast-paced, deadline-driven environment, where small teams share a broad variety of duties
  • Understands or has familiarity with Machine Learning and Computer Vision concepts
  • 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 driven to improve and enhance performance of oneself, others, and the company
  • 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

  • Implements and optimizes computer vision and perception algorithms using C++, including build system configuration with CMake and targeting low-SWaP embedded processors
  • Supports testing and demonstration of components and integrated systems
  • Develops documentation, technical reports, and provides report inputs for presentation to customers and other stakeholders
  • Creates software design documentation according to software process requirements and guidance from Senior Engineers
  • Implements coding according to coding standards. Writes a unique test, and validates software according to the process.
  • Contributes to process improvement efforts.
  • Delivers work on time according to agreed completion dates and project schedule & budget
  • Supports and derives algorithm design from detailed software requirements
  • Works closely with other software developers to design and reuse developed software to support different programs
  • Operates in a continuous learning environment under moderate supervision.
  • Provides guidance and mentoring to less experienced engineers.
  • Works on problems of moderate scope where analysis of situations or data requires a review of a variety of factors
  • Exercises judgment within defined procedures and practices to determine appropriate action.
  • Builds productive internal/external working relationships
  • 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.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service