General Dynamics Land Systems Robotics Planning Software Engineer in Sterling Heights, Michigan

Job Title Robotics Planning Software EngineerLocation Sterling Heights (Main), MIRelocation NoPotential for Deployment NoRequisition Number SHC-LF-17-19721Job Function Engineering - Software Required Education Bachelor of Science Required Major Computer Engineering Computer Science Computer Science Engineering Engineering Software EngineeringJob Description Innovation is in Our DNAGeneral Dynamics Land Systems is a global leader in the design, development, production, support and enhancement of tracked and wheeled military vehicles around the world. Our primary focus is partnering with those who protect our freedom to ensure their readiness for tomorrow.General Dynamics Land Systems' innovation has resulted in increased survivability, greater fire power, unmatched mobility and enhanced battlefield effectiveness made possible by capabilities and products prepared and ready for whatever threat the military faces.We have a strong foundation of delivering innovative engineering and production capabilities to our clients across the military vehicle spectrum. Our team is focused on continuous process and productivity improvements that provide our clients with solutions, while reducing costs and speeding up delivery for urgent requirements.The Abrams Main Battle Tank, the Stryker and LAV Family of Vehicles, Specialty Wheeled Vehicles, and the AJAX armoured fighting vehicles, provide the DNA our customers need to defend freedom around the world.General Dynamics Land Systems is seeking Robotics Planning Software Engineers to develop robotic systems that can reliably perform increasingly complex tasks in dynamic environments. Candidates will help design, integrate, test, deploy, and maintain new machine intelligence functionality, and help solve challenging problems in robotics, sensor processing, motion control, and motion planning on autonomous vehicles. Desired experience includes deliberative and reactive optimization-based path planning in obstacle-filled environments, 3D SLAM on mobile platforms, and visualization and processing large 3D point clouds. We focus on technology transfer applications, leveraging our academic ties and strong software engineering fundamentals. We are seeking people who quickly solve problems, generate big ideas, work in new technology areas, drive concepts into prototypes, and envision how prototypes transition to end user products.Job Requirements BS,MS,or PhD in Engineering or Computer Science degree with strong experience in computer software development. 6 to 9 years of post graduate experience preferred.Engineering or Computer Science degree with strong experience in computer software development.Strong programming experience in C, C++, Object Oriented Software and associated design principles. Additional knowledge of C++ 11, C++ Templates, Linux and Python.Software development experience in one or more of the following areas: robotic controls, planning, navigation, human-robot interaction, manipulation, machine learning.Strong experience in integrating sensors and control algorithms for robotic vehicles.Working knowledge of various robot algorithms including motion planning, kinematics/inverse kinematics, servo control, dynamics, autonomous or semi-autonomous navigation, and robotic manipulation.Working knowledge of robot perception, machine learning and real-time control is desired.Demonstrated ability to work effectively within a small team environment, strong personal drive, and above average verbal written communications skills is desired.Strong analytical reasoning, organizational, communication, and prioritization skills are desired.Hands-on experience with real-world robotic applications i