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

Required Skills

software linux robotics