Job Title: Embedded Software Engineer
Reports to: Group Electronics Manager (Kitchen)
Direct Reports: N/A
Date Created: June 2019
- Design and development of embedded software for new product development projects.
- Verification and validation of embedded software in support of new product development projects.
- Analyse, develop and interpret product requirements in order to develop embedded software requirements.
- Create, develop and implement embedded software.
- Alternatively create, develop and manage the implementation of embedded software by Kenwood suppliers.
- Design and develop comprehensive validation and verification test programmes and ensure requirement-to-test traceability.
- Administer software configuration management (SCM) systems and processes for multiple projects and at multiple sites globally.
- Design the code architecture for the embedded code for Small Domestic Appliances (SDA), incorporating the SCM process.
- Ensure compliance of software development aligned with IEC 60335 and IEC 60730 standards.
- Identify effective and efficient modes(s) for test implementation, prepare script-based automated embedded software testing routines, and create high quality procedures to implement test programmes.
- Implement and test the microcontroller code incorporating best practice continuous integration and design for test principles, and/or manage the development of embedded code produced by Kenwood suppliers.
- Collaborate with R&D Team and / or external suppliers to troubleshoot issues, perform root cause analysis, and validate appropriate corrective action.
- Collaboration with external suppliers and sub-contractors to develop and test embedded software solutions.
- Development of test plans linked to requirements aligned with industry best practices.
- Identify and develop scenario-based tests that cover embedded software requirements as well as interactions between multiple requirements, features and/or modules.
- Implement built-in-test methodologies into the code where appropriate.
- Participate in design reviews.
- Plan and participate in system verification and validation activities, maintaining high quality documentation of results.
- Preparing and presenting test results, data and recommendations.
- Preparing test plans and testing microcontroller code, in both simulators and on target hardware.
- Support scoping activities for new products, features and / or product cost down opportunities.
- Supporting other departments, divisions and DeLonghi companies with embedded software process and testing methodology.
- Using a serial based messaging interface, develop and test code to interface the SDAs to other systems.
- Works closely with the R&D Teams to architect and develop the best technical solution and approach.
Key Interfaces – Internal/External
- Director of Technical Operations
- Electronics Engineers
- Group Electronics Manager (Kitchen)
- Initiatives Managers
- Product Managers
- Quality Owners
- R&D Directors (Group)
- R&D Engineers and Managers
- OEMs and Sub-contractors
- Technical consultants
- Technical Design organisations
- Bachelors or Master’s Degree, applicable Electronics Engineering or Computer Science.
- Completion of accredited apprenticeship or graduate training programme.
- Knowledge and experience in Test Driven Development, Continuous Integration, and Software Configuration Management tools such as GIT and Jenkins.
- Experience in the development of code (C) for Microchip 32 bit microcontrollers
- Experience in the development of WiFi and IOT connectivity.
- Experience in the design, development and integration test of state machines, interrupt driven systems and/or messaging based systems. The use of UML like diagrams to describe, analyse and specify designs, particularly sequence and state diagrams.
- Experience of working with a China supply base is desirable.
- Knowledge and experience in the design of electronic circuits.
- Knowledge and experience of real time code development for sensing, display and motor control systems eg, general purpose IO, ADCs, DACs, timers, interrupts, PWM, LCD displays, I2C, SPI, memory management, FLASH.
- Knowledge and experience of USB, serial, CAN Bus, and wireless protocols and test methodologies.
- Product development, design for manufacture, production test experience.
- Proven experience in working collaboratively across multiple product development and specialist teams.
- Ability to communicate (written and verbal) in English.
- Ability to communicate effectively and professionally in order to convey ideas and opinions to both technical and non-technical colleagues.
- Ability to work under high-pressure across multiple projects despite potential conflicts and changing circumstances.
- Appreciation of relevant product safety standards.
- Collaborate and ability to work effectively with peers of other business areas.
- Programming in C, and Python coding languages.
- Solid knowledge of electronics hardware and the fully software development lifecycle for embedded software.
- Team results oriented.
- Willing to travel globally to visit group subsidiaries, group factories, suppliers and other external providers as necessary.