La figura ricercata, inserita all'interno della direzione di Ricerca e Sviluppo Elettronica, possiede una laurea in ingegneria elettronica/telecomunicazioni o informatica, con esperienza sia nello sviluppo di firmware per microcontrollori che nel software da PC.
Legga la panoramica di questa opportunità per capire quali competenze sono richieste, incluse le soft skill pertinenti e la padronanza di pacchetti software.
La risorsa, che sarà inserita in un gruppo collocato o distribuito, si occuperà della progettazione di dispositivi per sistemi videocitofonici e domotici e del relativo software di configurazione.
In particolare, avrà le seguenti responsabilità:
- Analizzare i requisiti e documentare la specifica implementativa.
- Sviluppare il firmware dei vari prodotti assegnati.
- Sviluppare e manutenere il software di configurazione dei dispositivi (da PC).
- Supportare la fase di verifica e validazione di prodotto e sistema.
Competenze specifiche richieste:
- Buona conoscenza di C, in ambito embedded.
- Buona conoscenza di C++ (almeno v11).
- Buona conoscenza di sviluppo software in C++ su PC con S.O. Windows.
- Sviluppo firmware sia bare metal che con RTOS (es. FreeRTOS, Zephyr, ThreadX).
- Sviluppo di drivers per periferiche (es. SPI, I2C, USB, DAC, ...) su architetture ARM Cortex-M.
Competenze aggiuntive:
- Conoscenza base di Delphi e librerie VCL.
- Conoscenza ambiente di IDE/ambiente di sviluppo/toolchain GCC, ST Cube, IAR, VSCode.
- Conoscenza CI/CD tools: Jenkins, Docker.
- Conoscenza di protocolli di rete IP (su supporto Eth e WiFi) e radiofrequenza (es. Bluetooth, Zigbee, Thread, ...).
- Capacità di lettura e interpretazione di schematici elettronici.
- Dimestichezza con l'uso di strumentazione da laboratorio (es. oscilloscopio, analizzatore di spettro, ...) e di debug (jLink, jTrace, STlink).
- Conoscenza di HW digitale e delle problematiche di interfacciamento analogico.
- Metodologie di gestione della codebase software: SVN, Git, bug tracking system (TRAC).
- Metodologie e tools di code quality assurance: automatizzazione dei test (unit, functional), code coverage.
Soft skills richieste:
- Spiccata capacità di problem solving.
- Ottima capacità di comunicazione.
- Predisposizione al lavoro in team e a trasferte. xrdztoy