The candidate will be responsible for developing software products for real-time embedded control systems in home automation. Candidate will be integrated in a team responsible to develop Software components for microcontrollers and related peripherals. The activity mainly consists of analyzing requirements, designing, coding, testing and integrating software products in a decoupled development context and for final integration in the electronic products.
The activity will be executed applying processes, guidelines and tools from company standards, to ensure high quality.
The software development environment will be Windows and Linux based and both legacy V-Cycle and newest AGILE methodology will be adopted.
- Support requirements change management and negotiation with control algorithm and hardware engineers;
- Analysis of requirements, design of software architecture, software coding and unit testing using company guidelines and standards;
- Support the integration and troubleshooting of software components in the package for the final electronic product;
- Detailed documentation of the software components implementation;
- Contribute to definition of microcontroller requirements for future applications.
- Master degree in electronics engineering;
- 1-2 years of professional experience in software development for real-time embedded systems, debugging and testing;
- Excellent knowledge of C programming language and related software tool chain
- Base knowledge of microcontrollers and related peripherals;
- Base knowledge of SPI, I2C, HTTP/s and MQTT/s communication and messaging protocol
- Base knowledge of the standard debugging tools;
- Base knowledge of the most common scripting languages like Python, Perl and version-control systems, with preference for Git;
- Base knowledge of real-time Operative System for safety critical embedded controls, FreeRTOS standard and AGILE methodology would be appreciated;
- Minimal experience with fast hardware prototyping with Field Programmable Gate Arrays (FPGA) would be appreciated;
- Fluent English, team working and good communication skills.