SAIC is seeking a Robot Software Engineer on the OMES II contract in support of the Restore-L program in NASA's Exploration and In-Space Services Projects Division (formerly Satellite Servicing Projects Division) at Goddard Space Flight Center. This position is located in Greenbelt, MD.
The Restore-L mission is a Goddard Space Flight Center (GSFC) Exploration and In-Space Services Projects Division (NExIS) managed mission. Restore-L is a robotic servicing mission designed to refuel a Low Earth Orbit (LEO) satellite. It contains 3 elements: the Flight Element comprised of the Restore-L Servicing Vehicle (RSV) and development testbeds, the Ground Element comprised of the systems required to conduct RSV operations and the supporting networks and facilities, and the Launch Element comprised of the Launch Vehicle and supporting facilities and services. NExIS is responsible for the design, engineering, development, test and operations of the Restore-L Mission through an integrated team at GSFC. The Servicing Payload design, development and RSV integration will be conducted at GSFC.
The engineer will provide software support for the Restore-L Robot Subsystem to develop next generation robotic software systems. The Restore-L Robot Subsystem is responsible for developing the robotic technology for the Restore-L servicing vehicle and operating the two robotic arms during the Landsat-7 servicing operations.
Job duties include:
- Provide technical direction for the design and development of robotic systems and associated technologies.
- Define software architectures, requirements, solutions, and development environments for terrestrial and space robotic systems.
- Develop software components and algorithms for spacecraft servicing robotic systems.
- Work with other engineers and scientists to design, develop, integrate, and test related systems and software components.
- Create and deliver technical presentations to support the design and development of robot systems, including requirement and design reviews.
- Oversee the day-to-day software development flow and integration process.
REQUIRED EDUCATION AND EXPERIENCE:
- BS or higher in Computer Science, Electrical Engineering, Robotics, or Computer and 9 years of directly applicable experience
- Must be able to pass a Government background investigation
- Strong hands-on experience with robotics software development in C++, development for robotic arms and/or robotic manipulators strongly preferred
- Experience with standard best practice software development lifecycle
- Excellent programming knowledge of object-oriented programming in C++.
- Experience with kinematics, motion control, and motion planning.
- Experience working with embedded systems and real time operating systems (RTOS).
- Experience with Open Robot Control Software (Orocos).
- Experience developing software in multi-threaded environments.
- Experience with product version control and release management.
- Experience with communication protocols and their implementation (TCP, UDP, serial, EtherCAT).
- Working understanding of the Agile software development lifecycle.
- Experience in all phases of the software development lifecycle - gathering requirements, design, implementation, testing, debugging, and deployment to the end user
- Ability to assess new APIs and tools for software development.
- Excellent communication and teamwork skills.
- Multi-platform programming experience (OS X, Linux)
- User interfaces
- C++ libraries: Boost, Qt.
- Experience with software development for real-time systems
- Experience with Robot Operating System (ROS)
- Experience with spaceflight robotic systems
- Experience with NASA mission lifecycle and review cycle (design reviews, requirements reviews, integration reviews, trade studies, etc.)
My SAIC Benefits.