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.
È pronto/a a candidarsi? Si assicuri di aver compreso tutte le responsabilità e i compiti associati a questo ruolo prima di procedere.
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. xjrgpwk
- Buona conoscenza della lingua inglese tecnica scritta e parlata.