Firmware Engineer Intern

Agility Robotics Agility Robotics · Robotics · Salem · Hardware

Seeking a Firmware Engineer Intern to develop robust and reliable firmware for Agility Robotics' humanoid robots, focusing on low-level sensor networks, controls, power management, and communication layers. The role involves C++ development, hardware testing, and collaboration with cross-disciplinary teams.

What you'd actually do

  1. Contribute to the C++ firmware architecture that drives our robot’s low-level sensor network, controls, and power management systems
  2. Develop the firmware communication layer utilizing EtherCAT and CAN
  3. Write firmware for the hardware abstraction layer, peripheral drivers, and applications
  4. Perform real-time hardware testing and debugging using benchtop test equipment such as logic analyzers and oscilloscopes.
  5. Work with cross-disciplinary teams to solve complex problems dealing with the integration of software and hardware

Skills

Required

  • modern C++ (17, 20)
  • FreeRTOS or similar
  • Linux-based development environment
  • read schematics, PCB layouts, and component datasheets
  • verbally communicate technical information effectively

Nice to have

  • implementation of automation fieldbuses such as EtherCAT, CAN, etc.
  • embedded C++ for ARM systems
  • developing real-time or low-latency systems
  • unit testing such as with GTest and coverage analysis
  • Python (3.6+)
  • standard agile and software development processes (issue tracking tools (Jira), feature branching, version control (Git), continuous integration and deployment)
  • using AI in coding