Software Development Engineer - Robotics at Unbox Robotics
Roles & Responsibilities:
-
Collaborate with the team to design, develop and debug software systems.
-
Architect, build and deploy software solutions by working closely with the product development team.
-
Integration of existing/new software into the principal architecture by meeting the performance metrics and satisfying the complexity requirements.
-
Evaluate technical solutions, develop POCs that assess the feasibility of the solutions, provide alternatives and recommendations.
-
Build efficient tools and evaluation pipelines for the Software System Modules.
-
Design, build, and maintain efficient, reusable, and reliable C++ code.
-
Implement performance and quality modules.
-
Identify bottlenecks and bugs, and devise solutions to these problems.
Requirements:
-
Strong software design skills, including debugging, performance analysis.
-
Excellent knowledge of Data Structures and Algorithms along with strong fundamentals in OOPs concepts.
-
Strong C++ fundamentals and proficient in scripting languages like Python, Bash, etc.
-
Experience with Linux Development Environment and Build mechanisms like Cmake, etc.
-
Experience with robotics frameworks such as ROS, ROS2 and simulators such as Gazebo, Stage, Webots, etc.
-
Familiar with SLAM related algorithms such as Gmapping, Google Cartographer, RtabMap, GraphSLAM, etc.
-
Ability to develop motion primitives and path planning algorithms like A*, Dijkstra, RRTs, etc.
-
Strong technical understanding and experience working with communication protocols like TCP, MQTT,DDS, ZMQ, etc. while balancing trade offs with bandwidth, latency, and reliability.
-
Experience with integration of sensors like IMU, LIDAR, etc.
-
Experience and knowledge of version control systems like Git, Bitbucket, Mercurial, etc.
-
First hand experience with Unit Testing frameworks like PyTest, xUnit, etc.
-
Solid mathematical foundation and understanding of the robot kinematics.
Good to Have:
-
Experience in development using Design patterns.
-
Past relevant experience with SMACH, Behavior Trees, Finite State Machines, etc.
-
Experience working with AMRs, AGVs, multi-agent systems, fleet management and robotics logistics solutions.
-
Experience and knowledge of perception algorithms, computer vision etc.
-
Knowledge of Testing Frameworks and experience building CI/CD pipelines.
-
Knowledge of frameworks such as RESTful services and APIs, MySQL, MongoDB.
-
Ability to design modular and service oriented architecture."
Eligible candidates:
-
Desired Qualification: BE/ B. Tech (Computer Science, Electronics, Mechanical, Electrical, Aerospace or relevant engineering domain)
-
Work Experience: 2-5 years
We Value:
-
Constant learner to become a Subject Matter Expert
-
Proven record in start-up environment working with innovations
-
Exposure to a high paced working environment
-
Ability to conduct detailed procedures in a time-constrained environment
Work Location: Pune
Work Mode: In Campus
Salary Range: Competitive Salary