Oversee software development teams and processes, focusing on Air-to-Air applications; work to prioritize and plan software development in scrum or scrum-like iterative cycles; ensure the teamβs work implements and verifies requirements and complies with architectural constraints; inform and shape the software development process; identify roadblocks to software development progress; monitor team progress toward milestones; design and implement software and unit tests and participate in peer reviews of requirements.