Software Engineer

FlightSafety•Broken Arrow, OK

About The Position

The Software Engineer develops software for simulator systems. Application areas include real-time simulation; simulation of aircraft systems, navigation, and aircraft dynamics; simulator interoperability; integration of simulator software with OEM software; simulator software system design; computer systems; and information security. This is an intermediate, continuing-development-level position that handles varied and difficult work, may require guidance, and applies learning to recommend options for unusual situations. The role develops, supports, and maintains software across the development cycle, including requirements analysis, design and construction, testing and verification, problem resolution, maintenance, troubleshooting, and user support. It involves collaboration with software and hardware engineers and multidisciplinary teams, interpreting schematics and wiring diagrams to model physical systems, developing prototypes and engineering tools, conducting research and development, and supporting computer-system and hardware integration and maintenance. The engineer also prepares documentation and user guides, demonstrates systems to customers, and stays current with technology through technical publications and conferences. The position requires accurate and complete work, regular attendance, accurate time recording, safe and attentive work practices, and professional, cooperative communication with internal and external customers. The employee is accountable for controlled documents and equipment and for protecting company materials, projects, business information, and production methods. Travel, shift work, special work hours, and overtime may be required. The position may require applying for and maintaining a security clearance. Employment is contingent on applicable compliance reviews and eligibility to access export-controlled technology or services.

Requirements

  • Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, Mechanical Engineering, Aerospace Engineering, or another applicable technical field, plus two years of related experience; or an equivalent combination of education and experience.
  • Two or more years of related software-engineering experience is preferred.
  • Experience working in Agile, Waterfall, and Hybrid environments.
  • Solid understanding of software development life-cycle models.
  • Ability to translate requirements into test plans, test cases, and scripts.
  • Knowledge of Microsoft-related testing tools, including Azure DevOps and Visual Studio.
  • Experience using cloud technologies, including Azure DevOps.
  • Ability to participate in the scrum process, including stand-ups and related activities.
  • Ability to build positive partnerships and collaborate with cross-functional business teams.
  • Strong organizational skills, including the ability to multitask and prioritize in a fast-paced environment.
  • Strong interpersonal and communication skills and ability to interact with all levels of the organization.
  • Knowledge of SDLC and test management tools such as Azure DevOps and Git.
  • Strong geometry and mathematics skills, including Euclidean geometry, matrix algebra, vector mathematics, calculus, and differential equations.
  • Experience with bash, PowerShell, Python, Perl, or other scripting languages.
  • Ability to use Microsoft Visual Studio and read and use technical specifications.
  • Knowledge of Lean/Agile software development.
  • Ability to meet the physical requirements of the role, with reasonable accommodations where applicable.
  • Willingness to travel, work shifts or special hours, and work overtime as necessary.
  • May be required to apply for and maintain a security clearance; employment may require eligibility to obtain and maintain a U.S. Government security clearance.
  • Ability to satisfy applicable export-control and sanctions requirements, including qualifying as a U.S. Person or otherwise being eligible for export authorization within business needs.

Responsibilities

  • Develop, support, and maintain software components, interfaces, features, subsystems, and systems throughout the development cycle.
  • Identify and analyze requirements; design and construct software; test and verify software; identify and resolve problems; maintain and troubleshoot systems; and provide user support.
  • Interpret schematics and wiring diagrams to create software models of physical systems.
  • Use disciplined software-development methods, including construction techniques, testing methodologies, configuration management, software tools, and product and process information systems and documentation.
  • Prepare customer test documents and internal and external user guides.
  • Demonstrate system operation to internal and/or external customers.
  • Consult and collaborate with software and hardware engineers and multidisciplinary teams, and communicate across departments.
  • Design prototypes for new technologies, algorithms, structures, and processes; conduct research and development.
  • Support computer-system and hardware requirements, integration, and maintenance.
  • Develop engineering tools.
  • Remain current on technologies through technical papers, periodicals, and conferences.
  • Maintain professional and courteous interactions, contribute to shared problem solving and goals, and communicate ideas and suggestions.
  • Safeguard export-controlled documents and equipment and protect company materials, projects, business information, and production methods.
  • Complete assigned work accurately and fully; maintain regular attendance, accurate time records, and safe, attentive work practices.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service