Job board View more San Jose, CA Sr. Perception Software Engineer Description Neato Robotics is developing technology at the forefront of robotics & artificial intelligence. Our products are designed to free people from household chores and will change how we all look at housekeeping tasks. Our products, the award-winning Neato family of autonomous robotic vacuums, have set new standards for intelligence, ease of use and cleaning effectiveness. The products have been available in retail and online in the U.S. since 2010, and more recently in Europe and Asia. And they are only the first few of many new products to come. Our team consists of roboticists, mechanical, electrical and software engineers and product professionals who have launched brands that are now familiar names in consumer electronics. Our management team is seasoned in leading startups from early stage to successful multinational enterprises We are wholly owned subsidiary of Vorwerk International and headquartered in San Jose, CA. Responsibilities As part of the Robotics Algorithm Development team, you will be responsible for developing Neato's next generation of intelligent connected robots and maintaining existing software code-base. For the existing code-base, the Sr. Perception Software Engineer will be responsible for contributing by addressing software issues from the field and raised by the software quality assurance (SQA) team. The candidate will be also responsible for working closely with the product team to develop and design new customer facing features. The candidate will also collaborate with the cloud services team and embedded system software team to develop mechanical and electrical robot requirements as well as protocol implementation levied by the cloud services team. Requirements BS/MS in Computer Engineering, Computer Science and Electrical and Mechanical Engineering with emphasis on Computer Science, Robotics and/or Mechatronics. The candidate must have a sound understanding of mechanical, electrical and software components required to operate ground mobile robots. This includes but is not limited to: (a) understanding of mechanical constraints in differential drive robots, (b) basic comprehension of electrical schematics and circuits (c) capability to effectively read sensor and actuator datasheets and (d) understanding of software state-machine architecture and design, real-time scheduler, multi-threaded and object oriented programming. 1 to 2 years of experience developing software code for robotics system in C/C++. Internship and class project can count towards this requirement. Working experience with two or more of the following areas: SLAM, localization, mapping, probabilistic estimation filters (e.g., Kalman and Bayesian), path planning algorithms (e.g., A*, Dijkstra, RRT, graph-search), sensor fusion (LiDAR, IMU, visual, odometry), holonomic and nonholonomic motion planning in configuration space. Strong communication skills (written and oral) Other Requirements Experience with Deep Learning frameworks, e.g., Tensor Flow, Caffe. GPU-acceleration frameworks, e.g., CUDA and OpenCL. Linux programming RTOS experience, e.g., FreeRTOS, uCOS, QNX. Network programming Python programming ROS programming Git workflow Continuous integration and testing frameworks, e.g., Jenkins, Travis, Gtest and Catch First Name * Last Name * Email * Phone * Location (City) * Resume * Cover Letter Allowed file types: pdf, doc, docx, rtf LinkedIn Profile School * Select a school Degree * Discipline * Start Date (Year*) End Date (Year*) + Add Another Education Neato Robotics has my consent to collect, store, and process my data for the purpose of considering me for employment.