Job Description
Graduate Embedded Systems Engineer
Humanoid Robotics
Location: Falmouth, Cornwall (not a remote working position)
Salary: DOE
Company
Their robots are always built from the ground up, they believe the best experience is achieved by creating robots made up of bespoke parts designed for the job, rather than generic parts adapted that are not quite up to it. This is especially true in the embedded team where bespoke electronics are designed to fit in limited spaces around a robot. Much of the embedded firmware is also written for purpose and must work seamlessly with their robot operating system Tritium.
They are always trying to innovate and push developments of their robots. Researching, testing, and assessing new and exciting electronics components, concepts and firmware is an ongoing task.
Documentation and traceability are key in a fast-moving R&D focused department along with thorough testing and analysing of prototypes, refining code, finding software and hardware bugs.
The team is always hands on with the hardware from the smallest circuit board on the bench to fully featured multi-robot systems.
Main Accountabilites
Embedded Firmware Development:
- Develop new features for embedded systems
- Find issues and bugs in existing code
- Review proposed changes to firmware from other team members
- Participate in planning sessions for future firmware development tasks
Embedded Systems Development:
- Propose, design, and review new and updated circuit boards
- Prototype circuit board assembly using our in-house pick and place machine
- Quality check other team members work
Robot System Development:
- Design, deployment and testing of new firmware on real robots
- Commissioning and testing development robots
Documentation:
- Ensure all work is well documented according to internal documentation standards
- Regular reviews of documentation, conducting ‘Wiki Hygiene’
Position Interactions
- Setting projects, tasks, goals, and objectives
- Reporting progress, problems, and solutions
- Reporting identified issues
- Software Team
- Reporting bugs with existing high-level software
- Requesting new features
- Support Manager and Customers
- Investigating causes of support issues
- Proposing and executing fixes to issues
Challenges
- Managing constantly changing electronics hardware and high-level software
- Keeping up with mechanical design developments, designing new circuit boards and firmware
- Making sure all work will be reliable for a robot which needs minimum down-time
- Being up to date with new electronics offerings from the wider market
- Working to find and fix issues working to tight deadlines
Qualifications, knowledge, key skills & experience
Essential:
- Embedded firmware development in C on 32-bit ARM based MCUs
- Circuit schematic capture and artwork design
Desirable:
- Use of the STM32 MCU ecosystem
- High-speed communication design (USB, Ethernet, EtherCat)
- Analogue systems design
- Python scripting
- Firmware development for Motor control and PID tuning
Useful:
- Use of Ki CAD for schematic capture and artwork design
- Use of version control systems
Candidate Background
- Embedded Systems Engineer
- Embedded Design Engineer