Logo
Metis Technology Solutions, Inc.

Software Engineer II - NASA DTE System (NDE-DE-VA area)

Metis Technology Solutions, Inc., Richmond, Virginia, United States,


Position SummaryJoin the NASA Wallops Flight Facility team with your software engineering and development skills to support NASA’s Direct to Earth (DTE) that connects scientists and mission controllers to critical spacecraft data. More than 20 tracking sites around the globe provide the communications link that allows more than 40 missions to transfer their data to Earth. Apply your knowledge of software troubleshooting, code refinement, database systems, signal processing, networking, and control systems to this critical NASA system supporting many of NASA’s space missions.Overview Of ResponsibilitiesPerform overall design, development, and configuration management of Direct to Earth (DTE) applications and associated equipment, including interconnected systems that constitute front end servers, web servers, and other applications.Serve as the programmer, system analyzer, and subject matter expert. Create, modify, and test the executables, dynamic link libraries (DLL), and scripts that allow computer applications to run, and linked systems to interface and exchange data.Follow software development lifecycle (SDLC) processes and work from specifications drawn up by software developers or other individuals.Develop, update, and maintain software applications to handle specific jobs such as scheduling equipment use, storing or retrieving data, controlling other equipment, or providing status of equipment to end users.Consult with operational, engineering, and technical users of applications to clarify program intent, identify, define, and work to resolve problems, and suggest changes.Define and update formal requirements for new and existing applications based on feedback from users and high-level mission/customer requirements.Define and adhere to a schedule for development efforts.Collaborate with equipment manufacturers and other programmers to develop interfaces between applications.Use documentation that describes input, output, and logical operations for external systems, and convert them into a series of instructions within an application that will interface with the corresponding equipment.Design and develop new applications or modify existing applications to adapt to or meet customer requirements.Design and develop user interfaces that meet end user and operator needs to ensure efficient operations and presentation of information.Develop and execute test plans to ensure software meets requirements, including trial runs of software applications to produce results that meet customer expectations.Optimize algorithms and computer code to ensure they operate efficiently and are flexible to accommodate new missions and programs.Correct any software errors with development and design changes and retest as needed.Generate documentation for new and existing software, including developer’s guides and any commenting within application source code necessary for other programmers to understand the implementation.Perform configuration management for hardware and software to receive approval for deployment or updating to meet requirements.Deploy new and revised applications to operational systems, including performing testing, ensuring not to impact operational schedules.Ensure that all operational systems are running licensed, release versions of applications that comply with all federal regulations.Ensure that all proper security measures are being followed on operational systems, and work with system administrators to ensure software applications do not violate security policies.Write or contribute to instructions or manuals to guide end users.Participate in and conduct peer reviews of source code and scripts for software applications with other programmers.Correct software errors by making appropriate changes and rechecking the program to ensure that the desired results are produced.Perform systems analysis to maintain resource usage of software applications on computer systems to acceptable levels for real-time operations.Perform troubleshooting activities of hardware and software using system and application logs and debug files to determine the cause of and solution to failures as reported by operations.Compile and write documentation of program development and subsequent revisions, inserting comments in the coded instructions so others can understand the program.Minimum QualificationsEducation:A bachelor’s level (4-year) degree from an accredited college/university in one of the following:Computing/computer science/computer engineeringRequired Skills And KnowledgeFive (5) years (Three years with master’s degree) software development experience in C/C++.Software development and deployment experience in Microsoft Windows environments.Software development experience with Microsoft Foundation Class (MFC) interfaces.Experience working in Visual Studio 2019.Experience working with multi-threaded applications, network protocol communications, inheritance, client/server interfaces, and dynamically linked libraries.Experience with industry standard tools such as: GIT, Wiki, JIRA (or other repository/workflow/documentation systems).Experience with RF, signal processing, hardware/software interface, and control systems.Experience with networking and cybersecurity (Microsoft Windows environments).Experience with engineering documentation processes and standards, change control, and regression testing.Experience working in the aerospace/spaceflight area and/or the NASA/US Government environment.LOCATION SPECIFIC REQUIREMENTS:

On Site at Wallops Flight Facility – Hybrid work schedule may be approved.SECURITY CLEARANCE:

Must have ability to obtain and keep a (minimum) Public Trust clearance.EEOE Including Vets and Disability

#J-18808-Ljbffr