Job description:
A Robotics Software Engineer designs, develops, and implements software applications that control and manage robotic systems, including writing code to define robot movements, perception capabilities, and decision-making processes, often collaborating with hardware engineers to ensure seamless integration and optimal performance within a specific application domain; key responsibilities include designing algorithms for motion control, sensor data processing, and system optimization, while staying updated on the latest advancements in robotics technology to develop innovative solutions.Key responsibilities:
- Software Development:
- Write code to control robot movement, manipulation, and interaction with the environment using programming languages like C++, Python, or ROS (Robot Operating System).
- Develop algorithms for perception (e.g., object detection, obstacle avoidance) using computer vision and sensor data processing techniques.
- Design and implement motion planning algorithms to navigate robots through complex environments.
- Create user interfaces for robot control and monitoring.
- System Integration:
- Collaborate with hardware engineers to integrate software with robotic components like actuators, sensors, and controllers.
- Ensure seamless communication between different parts of the robotic system.
- Debug and troubleshoot software issues in real-world robotic applications.
- Testing and Validation:
- Develop test procedures to evaluate robot performance in simulated and real-world environments.
- Analyze test data to identify areas for improvement and optimize system parameters.
- Conduct performance analysis and identify potential safety concerns.
- Research and Development:
- Stay updated on latest advancements in robotics technologies like machine learning, AI, and sensor fusion.
- Explore new algorithms and techniques to enhance robot capabilities.
- Contribute to research projects on robotics applications in specific industries.
- Required skills:
- Strong programming skills in languages like C++, Python, and relevant robotics frameworks
- Knowledge of robotics concepts like kinematics, dynamics, and control theory
- Experience with sensor fusion and data processing algorithms
- Familiarity with computer vision techniques (object detection, image processing)
- Understanding of machine learning and AI concepts (optional)
- Excellent problem-solving and debugging abilities
- Ability to work effectively in cross-functional teams with hardware engineers and other stakeholders
- Potential industry applications:
- Manufacturing automation, Logistics and warehouse robotics, Medical robotics, Autonomous vehicles, and Aerospace and defense.
Job Type: Full-time
Pay: $115,000.00 - $150,000.00 per year
Benefits:
- 401(k)
- 401(k) matching
- AD&D insurance
- Dental insurance
- Disability insurance
- Employee assistance program
- Green card sponsorship
- Health insurance
- Health savings account
- Housing allowance
- Life insurance
- Paid time off
- Retirement plan
- Tuition reimbursement
- Visa sponsorship
- Vision insurance
Compensation Package:
- Bonus opportunities
- Monthly bonus
- Performance bonus
- Quarterly bonus
- Signing bonus
- Yearly bonus
Schedule:
- 8 hour shift
- Day shift
- Monday to Friday
Application Question(s):
- Years of experience writing algorithms for Perception ?
- Years of experience writing algorithms for Motion planning ?
- Years of experience writing algorithms for Localization ?
- Years of experience writing algorithms for General autonomy ?
- Email
- Work Authorization/Visa Status
- Expected Salary
Education:
Experience:
- Software Engineering: 6 years (Preferred)
- Robotics: 6 years (Preferred)
- C++: 5 years (Preferred)
- Python: 5 years (Preferred)
- Linux OS environment: 5 years (Preferred)
- ROS and/or ROS2 (robotics operating system): 5 years (Preferred)
- Sensor fusion and data processing: 5 years (Preferred)
Work Location: In person