Qualified Technical Services
.NET Software Engineer - VIPER Moon Rover 2D / 3D Rendering
Qualified Technical Services, Mountain View, California, 94039
Work Location: NASA Ames Research Center - Mountain View, CA Minimum Citizenship: U.S. Citizen or Permanent Resident Clearance: US Government Public Trust JOB DESCRIPTION - .NET Software Engineer - VIPER Moon Rover 2D / 3D Rendering NASA is returning to the Moon. The VIPER lunar rover mission (https://www.nasa.gov/feature/new-viper-lunar-rover-to-map-water-ice-on-the-moon) will land a rover at the South Pole of the Moon to map the distribution of water ice in preparation for the first woman and the next man to land on the Moon as part of the Artemis program. VIPER is a challenging mission. Where the rover will land, the terrain is very hilly with craters of all sizes and in all directions. The sun will be just above the horizon, and the hilly terrain will cast long shadows that move slowly as the sun circles the horizon once per month. The rover requires sunlight for power and mission planners on the ground will need to account for the moving shadows as we design the path the rover will take. The Earth will also be near the horizon, and as we plan this path, we must also ensure the radio link for commands and data won't be blocked. We seek an experienced programmer to join our team to enhance the mission planning and scheduling software by developing and maintaining graphical components that will be used to design the rover’s traversal path and to schedule science and engineering activities. You will be working with a multidisciplinary team of software developers, user interface designers and spacecraft design and operations teams. If you love space, that's even better. This role is based at Ames Research Center but may require occasional travel to support users at other NASA centers around the United States. Responsibilities Develop portions of a thick client windows desktop application that supports: 2D rendering of multiple map layers indicating features of the lunar terrain (lighting, temperature, slope and other obstacles) 3D rendering of the same map layers on top of terrain Vector representations of the rover’s path 2D rendering of Gantt chart-based timelines Apply mathematical methods and algorithms within the tool to integrate timeseries analysis and resource modeling. Evaluate and mitigate development risks and trade-offs Collaborate with VIPER Ground Data System personnel to integrate the planning and scheduling software. REQUIREMENTS - .NET Software Engineer - VIPER Moon Rover 2D / 3D Rendering Education : BS in Computer Science Year(s) of Experience : 6 years of .NET Development Experience and 2 years: OpenGL, DirectX, WebGL or equivalent experience Qualifications, Skills and Traits: Demonstrated software skills developing shippable/consumer oriented vs prototyped / research oriented software. Should be able to show prior work or side projects Proven experience designing and developing testable software, unit and integration test harnesses, and test strategies Demonstrate problem-solving and technical innovation Demonstrated skills in: .NET desktop multi-threaded application development using Visual Studio C# or F# programming language Rendering 2D/3D graphics with APIs (OpenGL, DirectX or equivalent) Using HLSL/GLSL shaders or other vendor specific shader language. Algorithm development Effective analytical communication. Desired Skills: Experience with Geographic Information Systems (GIS) end-user systems or components (ArcMap, QGIS, OpenLayers, CesiumJS) Experience with frontend and backend webapp development using React, Electron, Node or similar frameworks Sensitivity to and familiarity with good user experience design techniques Experience in robotics software Strong personal interest in space missions The Equal Employment Opportunity Policy of the QTS is to provide a fair and equal employment opportunity for all employees and job applicants regardless of race, color, religion, national origin, gender, sexual orientation, age, marital status or disability. QTS hires and promotes individuals solely on the basis of their qualifications for the job to be filled. QTS believes that employees should be provided with a working environment which enables them to be productive and to work to the best of his or her ability. We do not condone or tolerate an atmosphere of intimidation or harassment based on race, color, religion, national origin, gender, sexual orientation, age, marital status or disability. We expect and require the cooperation of all employees in maintaining a discrimination and harassment-free atmosphere.