2331 Software Engineer

Ames Research Center/NASA



We are seeking a senior level software engineer to join a team of software engineers at NASA Ames creating next-generation Mission Control software.   As Senior Software Engineer, you design and develop component-based software in a highly collaborative, fast-paced environment. Based at NASA Ames, you will work closely with the Software engineers, user experience designers, and other software engineers to develop an innovative software product for use by flight controllers for the next generation vehicles that will take us beyond low Earth orbit and other related applications. This position requires extensive object-oriented coding expertise and the ability to work both independently and on a team.  You may be technical lead for one or more subsystems of the software.




The Mission Control Technologies (MCT) Project at NASA Ames Research Center is developing technologies to fundamentally change the way applications for mission control are designed, constructed and deployed. Rather than building software as monolithic applications, MCT enables software to be built from fine-grained end-user composable components and services from which software functionality may be assembled and easily modified. See the MCT web site: https://sites.google.com/site/openmct/




  • Design, develop, test, optimize and document MCT framework services, user interfaces, and subsystems, using your expertise in distributed systems and component-based systems
  • Work with user experience researchers to translate usability and field research findings into design and code requirements and improvements
  • Design workflows and interfaces in collaboration with user experience designers
  • Successfully communicate technical ideas and code design rationale to both technical and non-technical audiences


Interact directly with customers from various projects across NASA centers




Required Skills:


-         Understanding of object-oriented programming and design patterns


-         Proficient in Java and Java Swing


-         Experience with database technologies, such as RDBMS, ORM.


-         Understanding of the MVC programming model


-         Excellent interpersonal and communication skills


-         Experience with agile development process




Desired Skills:


-         Experience with open source software development process, as well as interacting with the open community using forums and other social media


-         Experience with rich client platform, plug-in framework (e.g., Eclipse RCP, Netbeans, etc.)


-         Experience with MySQL, Hibernate, OSGi framework (e.g., Apache Felix)


-         Strong knowledge of SOA, web technologies






BS or MS in Comuter Science