avatar

Natesh Narain
Senior Software Developer

About

Software developer specializing in autonomous robotics systems with expertise in system software, firmware development, and digital electronics design. Passionate about building embedded systems and creating innovative solutions for complex technical challenges.

Work Experience

OTTO by Rockwell Automation (Clearpath Inc, Post Aquisition)
January 2021 – Present
Senior Software Developer (Vehicle Platform)
Senior member of the Vehicle Platform Software Team focusing on rapidly improving software capabilities to accommodate an expanding portfolio of vehicles. Led multiple team initiatives to enabling integrating the OTTO software stack on third-party OEM vehicles.
Highlights
  • Planned, designed and implemented a configurable system for integrating multiple fieldbus technologies (CAN, CANopen, J1939, Modbus, EtherNet/IP) into autonomous control stack
  • Successfully integrated OEM robots from basic drive-by-wire functionality to full stack autonomous control under tight deadlines
  • Built diagnostic components and tools for debugging and postmortem analysis
  • Identified gaps in the OTTO software stack and prioritized necessary changes to support OEM vehicle integrations
  • Developed solutions with minimal guidance to meet expanding vehicle portfolio requirements
  • Applied a broad knowledge of the OTTO software stack to coordianate cross-team efforts and deliver high-quality solutions
Clearpath Inc (Industrial Robotics Division, OTTO Motors)
September 2017 – January 2021
Software Developer (Vehicle OS)
Designed and implemented software architecture spanning multiple parts of Clearpath's software stack including Fleet Manager and individual robot systems. Maintained key systems for logging, diagnostics, configuration, and robot-to-factory interfacing.
Highlights
  • Developed ROS drivers in C++ and Python for robotic systems
  • Implemented embedded software for ARM processors using FreeRTOS
  • Built embedded ROS (rosserial) integration systems
  • Maintained Fleet Manager REST API, backend web servers (Django), and PostgreSQL databases
  • Designed and implemented PLC gateway system enabling seamless robot-to-factory communication through industrial protocols
  • Built comprehensive diagnostics and ROS bagging pipeline providing advanced system triage and debugging capabilities
  • Developed robot configuration pipeline supporting deployment-specific parameter management and fleet customization

Projects

  • GameboyCore (Gameboy/Gameboy Color Emulator): Comprehensive multi-platform Gameboy emulator library with full system emulation, extensive testing, and multiple language bindings
  • nescore (NES Emulator): Advanced NES emulator library written in Rust with comprehensive system emulation, extensive testing framework, and cross-platform compatibility
  • World (Procedural Terrain Engine): Comprehensive voxel-based procedural world generation system built in Unity with advanced terrain algorithms, biome systems, and infinite chunk management
  • Icarus Flight Controller: Multi-revision custom flight controller designed for drone and robotics applications with comprehensive sensor fusion and wireless control capabilities
  • HCS12 Embedded Robot Controller: Designed, built, and programmed a functional embedded system to control a robot platform from scratch

Contact

Kitchener, Ontario CA
GitHub
LinkedIn

Education

  • 2017

    Conestoga College

    Bachelor of Engineering

    Electronic Systems Engineering

Skills

Programming Languages Advanced
C C++ Rust Python
Web Development Intermediate
HTML JavaScript NodeJS Express
Hardware Design Intermediate
KiCAD Schematic Capture PCB Layout Digital Logic Circuits
Software Tools Advanced
Git CMake Microsoft Visual Studio Eclipse
Frameworks & APIs Intermediate
ROS ROS 2

Interests

Programming
Side Projects Open Source System Software
Electronics
Embedded Systems PCB Design Digital Logic
Robotics
Autonomous Systems Control Systems