This site uses cookies. To find out more, see our Cookies Policy

Software Engineer I-II in Mountain View, CA at Universities Space Research Association

Date Posted: 3/26/2018

Job Snapshot

Job Description

USRA is the prime contractor for the NASA Academic Mission Services (NAMS) contract at NASA Ames Research Center. The NAMS mission is to perform strategic multi-disciplinary, integrative research and development that supports NASA’s and the U.S. Army Aviation Development Directorate’s (ADD) long-term mission requirements across aeronautics, space and earth sciences, and advanced information technologies.

The U.S. Army ADD’s Vehicle Management & Control Technical Area, in conjunction with USRA, have jointly developed an integrated suite of software applications for the design, simulation, and testing of flight control systems on-site at NASA Ames. These applications are used extensively in-house to support ADD’s on-going flight dynamics and control research missions for both manned and unmanned aircraft. Additionally, these tools are also deployed and made available to the external domestic and international user communities. More information on the integrated tool suite can be found at:

Position Summary:

The candidate will serve as a key member of the software development team to develop and maintain CONDUIT, a flight control system design and optimization application for rotorcraft, fixed-wing aircraft, and unmanned aerial vehicles (UAVs). The candidate will work directly with the USRA software lead and Army researchers to develop and maintain engineering tools and capabilities in CONDUIT that meet requirements established by the researchers. As part of the software team, the candidate will participate in maintenance/upgrade of current software, development of new software capabilities, software release and deployment, technical consulting, and documentation. The candidate will also participate as a member of research investigator teams to use CONDUIT in support of internal and external program activities.

Essential Duties/Responsibilities:

Participate in the development, maintenance, and release of the CONDUIT software:

  • Develop, analyze, test, and deploy software bug fixes and enhancements to support on-going research.
  • Collaborate with the software lead and Army researchers to design and implement new engineering tools and features based on research needs and user feedback.
  • Maintain User's Manual and related documentations to document newly developed tools and software feature changes.
  • Participate in planning and tracking of software release schedule.
  • Participate in unit testing and integrated testing in advance of software release and deployment.
  • Follow established software configuration management and bug tracking processes.
  • Provide technical support to internal and external user communities.
  • Participate in support of internal and external program activities.

Required Qualifications:



  • B.S. in Aerospace Engineering, Mechanical Engineering, or other related Engineering field, or equivalent work experience.





  • 0 to 3 years of software development experience.
  • Proficiency in MATLAB programming and scripting.
  • Experience and good understanding of GUI design/implementation.
  • Experience with programming in C/C++, Java.
  • Hands-on programming experience on Windows platform.
  • Experience working in multiple OS environments: Windows, UNIX/Linux and macOS.
  • Demonstrate hands-on experience in at least one of the following scripting languages: Perl, Python, UNIX/Linux shell (Bash/Korn/C), Windows Powershell.


Licenses, Certifications:



Knowledge, Skills & Abilities:  

  • Knowledge in full software development lifecycle, object-oriented software design and development, and software source control.
  • Course(s) in classical feedback control (Bode plots, root locus, transfer function, etc.).
  • Ability to translate user provided requirements into effective and efficient software solutions.
  • Ability to write high quality and maintainable code.
  • Excellent verbal and written communication skills along with strong organizational, analytical, and interpersonal skills.
  • Demonstrate ability to interact effectively in an interdisciplinary team of scientists as well as independently.
  • Ability to think independently and strategically and assess solutions for short and long term goals.



  • MATLAB programming (M-scripting and MEX APIs), Simulink, C/C++, Control System Toolbox, Visual Studio, gcc, Python, shell scripting, ClearCase, ClearQuest, Git, Microsoft Office.



Preferred Qualifications:

  • Master’s degree in Aerospace Engineering, Mechanical Engineering or related field is a plus.
  • Engineering knowledge and understanding of aerospace flight dynamics and control is a plus.
  • Hands-on software development experience on Linux and macOS platforms.
  • Experience with parallel and distributed computing technologies.
  • Working knowledge of ClearCase, ClearQuest, or other similar software version control and bug tracking system.
  • Inter-process and network communication, client/server application, and internet protocols such as UDP and TCP/IP.

Working Conditions:

This job operates in a professional office environment. This role routinely uses standard office equipment such as computers, phones, photocopiers, etc. Extensive online usage. This is largely a sedentary role.



Minimal travel.

Applicants should apply to the posting at and include a letter of interest, resume, or curriculum vita.  Review of candidates will begin immediately.  Additional information on USRA can be found at

USRA is an Equal Opportunity Employer Minorities/Females/Protected Veterans/Disabled/Sexual Orientation/Gender Identity


  1. Software Engineer Jobs
  2. Project Engineer Jobs