Senior Software Engineer

Tech Partners

  • Tulsa, Oklahoma
  • 7 days ago

    Highlights

    We are seeking a Senior Software Engineer with strong C/C++ development experience who enjoys solving complex technical challenges, designing software architectures, and working on sophisticated real-time simulation platforms. The ideal candidate has experience developing software for simulation systems, training devices, embedded systems, aerospace applications, defense programs, or other real-time deterministic environments .

    Numbers & Facts

    LocationTulsa, Oklahoma

    Description

    Senior Software Engineer 

    Full-Time | Tulsa, OK (Onsite)U.S. Citizenship Required

    Opportunity Overview

    We're partnering with an established engineering and simulation technology company developing advanced training and simulation systems used in aerospace, defense, and mission-critical environments.

    We are seeking a Senior Software Engineer with strong C/C++ development experience who enjoys solving complex technical challenges, designing software architectures, and working on sophisticated real-time simulation platforms. This role combines hands-on software development, system integration, and technical leadership within a highly collaborative engineering environment.

    The ideal candidate has experience developing software for simulation systems, training devices, embedded systems, aerospace applications, defense programs, or other real-time deterministic environments. Candidates with Linux experience and exposure to legacy simulation architectures written in C, C++, Ada, or Fortran will be especially attractive.

    What You'll Do

    • Lead software development efforts for advanced simulation and training systems.
    • Design, develop, test, and maintain software applications primarily using C and C++.
    • Analyze system requirements and translate them into robust software architectures and technical designs.
    • Develop software solutions that support real-time, deterministic, and high-performance simulation environments.
    • Define and support hardware/software integration requirements.
    • Conduct technical trade studies and evaluate alternative implementation approaches.
    • Collaborate closely with systems, hardware, networking, and manufacturing teams.
    • Troubleshoot and resolve complex software, integration, and performance issues.
    • Participate in software verification, validation, and acceptance testing activities.
    • Support deployment, installation, and customer acceptance events.
    • Produce technical documentation including software designs, interface specifications, test procedures, and status reports.
    • Contribute to proposal efforts and future technology initiatives.

    Technical Leadership Responsibilities

    While this role does not include direct personnel management, it carries significant technical leadership responsibilities, including:

    • Mentoring junior and mid-level engineers.
    • Conducting code reviews and technical peer reviews.
    • Promoting software engineering best practices.
    • Supporting onboarding and knowledge transfer efforts.
    • Driving process improvements and technical excellence.
    • Assisting project leadership with technical planning and risk assessment.
    • Facilitating collaboration across multidisciplinary engineering teams.

    Required Qualifications

    • Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, Physics, Mathematics, or a related technical discipline.
    • 4+ years of software engineering experience.
    • Strong development experience using C and/or C++.
    • Experience developing software in Linux environments.
    • Understanding of software architecture and object-oriented design principles.
    • Experience with software integration, debugging, and testing.
    • Experience using Git, Subversion, or similar version control systems.
    • Knowledge of networking concepts and computer architectures.
    • Strong troubleshooting and analytical skills.
    • Excellent communication and technical documentation abilities.

    Highly Desired Experience

    Candidates with experience in the following environments should be prioritized:

    • Simulation and training systems
    • Flight simulators
    • Aerospace software
    • Defense systems
    • Mission systems
    • Embedded systems
    • Real-time systems
    • Distributed systems
    • Hardware-in-the-loop (HIL)
    • Software-in-the-loop (SIL)
    • Deterministic computing environments

    Preferred Technical Experience

    Programming Languages

    • C
    • C++
    • Ada
    • Fortran
    • Python
    • C#

    Operating Systems

    • Linux
    • RHEL
    • Ubuntu
    • CentOS
    • Unix

    Technical Areas

    • Real-time software development
    • Deterministic software execution
    • Simulator architecture
    • Software/hardware integration
    • Networked simulation systems
    • Performance optimization
    • Multi-threaded applications
    • Distributed computing systems

    What Makes Someone Stand Out

    The best candidates often come from environments where software must perform predictably and consistently under real-world conditions.

    Examples include:

    • Flight training simulators
    • Military simulation programs
    • Embedded aerospace systems
    • Avionics software
    • Defense platforms
    • Mission planning systems
    • Industrial control systems
    • Real-time visualization systems

    Experience with older simulator architectures that incorporate C++, Ada, Fortran, and Linux is particularly valuable.

    Interested candidates can apply directly or email doug.halve@techpartnersllc.com for more information. 

    Similar Jobs

    See more jobs