Robotics Software Engineer
Job Description
Are you an experienced software engineer capable of building new technology at the intersection of software, systems, sensing, machine learning and physical deployment at scale?
We're looking for an experienced engineer capable of building and delivering functioning robotics systems and software that will be deployed at a global scale. In this role you will implement and optimize core algorithms supporting robotic automation including location and pose estimation, object detection, recognition, and avoidance, and route planning. In addition to classical algorithms, you will support machine learned approaches by providing optimized implementations of on-device inference algorithms as well as training tools for machine learned models.
The ideal candidate will have a deep understanding of machine perception algorithms and the ability to translate mathematics into production-ready code.
Work includes:
· Participate in all phases of new development including concept, design, prototyping, and production
· Influence the full-stack architectural roadmap
· Collaborate with software, hardware, and operations customers
· Performance tuning and maintenance of on-device software
· Performance tuning and maintenance of cloud-based high-performance computing software
· Contribute to software design reviews, architecture reviews, and team best practices
· Mentor junior engineers
We're looking for an experienced engineer capable of building and delivering functioning robotics systems and software that will be deployed at a global scale. In this role you will implement and optimize core algorithms supporting robotic automation including location and pose estimation, object detection, recognition, and avoidance, and route planning. In addition to classical algorithms, you will support machine learned approaches by providing optimized implementations of on-device inference algorithms as well as training tools for machine learned models.
The ideal candidate will have a deep understanding of machine perception algorithms and the ability to translate mathematics into production-ready code.
Work includes:
· Participate in all phases of new development including concept, design, prototyping, and production
· Influence the full-stack architectural roadmap
· Collaborate with software, hardware, and operations customers
· Performance tuning and maintenance of on-device software
· Performance tuning and maintenance of cloud-based high-performance computing software
· Contribute to software design reviews, architecture reviews, and team best practices
· Mentor junior engineers
Basic Qualifications
· BS in Computer Science, Computer Engineering or related fields
· 5+ years’ experience as a software engineer
· Experience working in C, C++, or other Object Oriented languages on a Linux platform
· Subject matter expertise in one of Control and Dynamical Systems, Machine Learning, or Computer Vision.
· Experience writing highly optimized code for low-level algorithms
· Experience with high-performance computing techniques and patterns.
· Experience with multithreading and concurrency
· Proficiency in at least one scripting language: Python, Perl, etc.
· Debugging/trouble-shooting skills of embedded processes and systems
· Knowledge of computer architecture and OS fundamentals
· Experience with designing, building and deploying scalable and highly available systems
· 5+ years’ experience as a software engineer
· Experience working in C, C++, or other Object Oriented languages on a Linux platform
· Subject matter expertise in one of Control and Dynamical Systems, Machine Learning, or Computer Vision.
· Experience writing highly optimized code for low-level algorithms
· Experience with high-performance computing techniques and patterns.
· Experience with multithreading and concurrency
· Proficiency in at least one scripting language: Python, Perl, etc.
· Debugging/trouble-shooting skills of embedded processes and systems
· Knowledge of computer architecture and OS fundamentals
· Experience with designing, building and deploying scalable and highly available systems
Preferred Qualifications
· Master’s/PhD in Computer Science, Electrical Engineering or related field
· Strong math skills particular in optimization, numerical analysis, and computational geometry.
· Experience writing native code for multiple architectures including ARM/x86/GPU
· Track record in delivering polished algorithms for 3rd party use.
· Experience with ROS or equivalent toolkit
· Hands-on expertise in many disparate technologies, typically ranging from front-end user interfaces through to back-end systems and all points in between
· Experience with a Linux development environment (e.g. Makefiles, GDB, Git, Ubuntu)
· Experience with real-time systems, interrupts, and schedulers
· Experience and knowledge in building software for large scale industrial systems
· Knowledge of professional software engineering practices for full software development life cycle, including coding standards, code reviews, source control management, agile development, build processes, and testing
· Experience with formal Integration, Validation and Verification (IV&V) techniques
· Strong math skills particular in optimization, numerical analysis, and computational geometry.
· Experience writing native code for multiple architectures including ARM/x86/GPU
· Track record in delivering polished algorithms for 3rd party use.
· Experience with ROS or equivalent toolkit
· Hands-on expertise in many disparate technologies, typically ranging from front-end user interfaces through to back-end systems and all points in between
· Experience with a Linux development environment (e.g. Makefiles, GDB, Git, Ubuntu)
· Experience with real-time systems, interrupts, and schedulers
· Experience and knowledge in building software for large scale industrial systems
· Knowledge of professional software engineering practices for full software development life cycle, including coding standards, code reviews, source control management, agile development, build processes, and testing
· Experience with formal Integration, Validation and Verification (IV&V) techniques
内推联系信息:
Please register(Free!) to see Job Contact Information
Or contact [email protected] if you want become a member.