Robotics Software Engineer
Posted on 04/24/2019
Who We Are
Kaarta easily and accurately transforms the world into actionable 3D digital models. We map complex environments with unprecedented speed, fidelity, and ease. Kaarta’s patent-pending technology, rooted in advanced robotics, accurately transforms the real world into 3D digital models. Doing this streamlines workflow, reducing time, lowering cost, and providing a new level of understanding spaces for humans and autonomous machines alike. Now the spectrum of stakeholders across architecture, engineering, construction, property owner/operators, facility planners/managers, and mobile robot developers can work from the same truth. Kaarta is fueling growth of mobile mapping and localization technology with a recent $6.5M Series A financing round supported by world class investors.
Our Team and Culture
Our culture embodies detailed, thoughtful execution and delivery where technology development is customer and market driven. We create real products people want today with a goal of constantly improving them. We value ownership, accountability and yes, fun! If you like an environment where you can contribute, be challenged, have a life and solve big problems – we are the place for you.
Major Duties & Responsibilities
Who You Are
As a Robotics Software Engineer, you are a robotics expert and software developer who develops and refines software and algorithms. You will have experience in computer vision or point cloud feature extraction and manipulation. You regularly refactor, test, optimize, and refine your software to make it more accurate, robust, and user-friendly. You also have deep experience building on existing code and open source codebases, and have experience writing production quality code in C++ or similar.
- Develop and refine algorithms for laser-based mapping and localization
- Create ftware, including architecture, feature implementation, and bug fixes.
- Design and build complex software components independently or as part of a small team.
- Test and document software. Execute and participate in code reviews.
- Interact with customers and stakeholders to define and refine software requirements.
Minimum Skills & Abilities
What you Bring
- A Masters or PhD in Robotics, Computer Science, or related fields
- Extensive experience in C++, Java, Python or other object-oriented programming languages
- Experience with ROS (Robotics Operating System) and/or other publish and subscribe frameworks.
- An understanding of state-of-art robotics approaches such as SLAM and computer vision.
- Self-motivation with high levels of individual contribution.
- People skills required to work with other developers, contractors, customers, and technical staff.
- Motivation to consistently learn and improve processes and tools.
- Precise attention to detail and appreciation for good documentation.
- Experience customizing and working with Linux operating systems
- Experience working on production-ready software
Bonus Points if you…
- Have hardware-based software development and testing experience
- Are experienced creating and implementing automated testing
- Have working knowledge of embedded software and drivers, sensor calibration, and troubleshooting
- Have previously led a team of software engineers and contractors
- Created and implemented automated software testing previously
APPLY FOR THIS POSITION