C++ Software Engineer for Robotics
- Remote, Hybrid
- Toronto, Ontario, Canada
- Xaba
Job description
About Xaba
Xaba is at the forefront of AI-driven robotics automation, pioneering cutting-edge solutions to enhance industrial processes. Headquartered globally, with a team of collaborative scientists, engineers, and designers, Xaba operates in a remote-first and distributed environment. Join us to revolutionize the future of AI applied to robotics.
The role
We’re looking for a C++ Software Engineer specialized in Robotics to join the team. You will be responsible for finding computational solutions to complex technical challenges, spearheading investigation in scalable distributed algorithms and development of our cloud-based systems, whilst providing technical leadership to junior team members.
What you will do
Research, design and implement robust, scalable, high-performance computer algorithms
Investigate state-of-the-art computational methods by reading relevant academic papers and attending appropriate workshops/conferences
Collaborate with a multidisciplinary team including designers and software engineers in multiple locations
Mentor junior staff and interns to reach their best potential
About you
M.Sc./Ph.D. in Computer Science, Computer Engineering, Mathematics, Physics or related disciplines - or equivalent experience
Fluent in C++ and Python
Computational geometry algorithms and methods
Excellent knowledge of linear algebra and calculus and familiarity with mathematical optimization methods: Linear Programming, Mixed Integer Programming, Combinatorial Optimization, Constraint Programming, Dynamic Programming
Expertise in API design, component architectures, principles of service-oriented software
Experience using automated testing and continuous integration frameworks
Exposure to software product development and delivery practices and related tools
Research, design and performance optimization of complex algorithms
Parallel computing methods and frameworks
Familiarity with fundamental Modeling & Simulation principles and methods
Nice to have
These are the things you’re likely to work on, so if you have any experience in the following, great! If you don’t have experience in the following, we still encourage you to apply.
Knowledge of core robotic aspects: inverse and forward kinematics, singularities, trajectory planning"
Additional mathematical optimization methods: gradient estimation, Bayesian Optimization, metaheuristic optimization
Mathematical modeling methods for complex regression tasks, Deep Learning
Interactive 3D graphics and data visualization
Numerical methods for solving partial differential equations problems
Distributed computing
GPU acceleration of numerical algorithms using CUDA/OpenCL
Amazon Web Services APIs
Lightweight virtualization technologies (Docker, etc.)
Our Team and Perks
We are an open, collaborative, and supportive culture including skill shares, design critiques, and a bi-weekly reading group
We believe that employees should be owners, which is why we provide stock option grants for full time employees
We believe in support the health and wellbeing of our team, which is why we offer a competitive health benefits package
We believe in balance and taking time to rest and recharge, which is why we offer 4 weeks vacation to all full-time employees plus an extra week off at the end of December.
As a remote-first team, we believe in the importance of having the right set up, which is why we offer a home office budget
Learning and development is critical to us, which is why we have a self-directed learning budget
Our location
It would be better to live in areas near Milan - ITALY or near Toronto - CANADA, where our offices are located.
Our Hiring Process
Discover: You discover the opportunity and apply to the role
Talk: You take part in a 30-45 minute screening call with the Hiring Manager to chat about the role and the team.
Deep dive: We have a 60 minute call to dive deep into your experience and the role.
Meet your team: You have a video call with a few other Xaba team members.
Offer: You receive an offer to join Xaba!
Accommodations and Accessibility
Inclusion and equity are the cornerstones of how we recruit, hire, and develop talent. We encourage applications from all candidates, especially those who identify as members of the BIPOC community, LGBTQ++ community, women, caregivers, immigrants, and people living with disabilities. We encourage candidates to include any accommodations you require in your application. We look forward to hearing from you.
Job requirements
M.Sc./Ph.D. in Computer Science, Computer Engineering, Mathematics, Physics or related disciplines - or equivalent experience
Fluent in C++ and Python
Computational geometry algorithms and methods
Excellent knowledge of linear algebra and calculus and familiarity with mathematical optimization methods: Linear Programming, Mixed Integer Programming, Combinatorial Optimization, Constraint Programming, Dynamic Programming
Expertise in API design, component architectures, principles of service-oriented software
Experience using automated testing and continuous integration frameworks
Exposure to software product development and delivery practices and related tools
Research, design and performance optimization of complex algorithms
Parallel computing methods and frameworks
Familiarity with fundamental Modeling & Simulation principles and methods
or
All done!
Your application has been successfully submitted!