Firmware Engineer
Role details
Job location
Tech stack
Job description
In this role, as a technical expert you will be part of a team of embedded firmware engineers working collaboratively to develop electronics, communication interface and controls software for our range of Load banks and Dynamometers, manufactured in the UK, USA and Mexico. This position will be responsible for requirements analysis, specification, design, coding, debugging and documentation., * Collaborate in the architecture, design, implementation, and maintenance of firmware.
- Develop detailed requirements and specifications based on product and system requirements.
- Works closely with applications, service and product management to implement specified functionality.
- Promotes and embraces the Test-Driven Development (TDD) methodology.
- Programming for embedded systems in C/C++.
- Follow established development guidelines and standards and makes recommendations for improvements.
- Writes test plans and conduct design verification tests. Debugs firmware based on test results and issues identified by testers.
- Maintain current systems and platforms.
- Creation of production and engineering documents, approvals and bills of materials (BOM) including full life cycle software development.
- Keeps abreast and well-informed on new developments and systems through codes and standards, technical conferences, professional societies and communications with suppliers and customers within the industry.
- Ensure all Cybersecurity procedures are followed and requirements are met.
- Work with the engineering team and third-party product certification to ensure product compliance with the regulatory environment to include CE and other agencies.
- Ensure all Statutory and Corporate Health and Safety, Environmental, Quality System and International Trade Compliance procedures are followed, and requirements are met.
- Maintain Company standards, behaving in an ethical and professional manner in all business activities.
Requirements
Do you have experience in Unit testing?, Do you have a Bachelor's degree?, We are looking for a positive, confident, self-motivated, passionate individual with a strong desire to work in a team based collaborative design environment to help us develop next generation technologies. If you are interested in learning about Networking protocols, embedded real-time applications, have strong aspirations for independent and collaborative software development, and are excited about contributing to a world-class product, then this is the position for you., * HNC/HND or Bachelors degree in Electrical/Electronic Engineering, Computer Engineering, or Software Engineering with 3+ years hands-on experience., * Knowledge and experience of embedded microcontroller systems and firmware.
- Experience with digital communication interfaces such as CAN, RS-485, RS232, USB and/or others.
- Experience with wireless communication protocols such as Wifi and Bluetooth.
- Experience with communication protocols such as CANopen and Modbus.
- Software Languages: C, C++.
- Software application revision control and software unit testing.
- Industrial Low Voltage experience would be beneficial.