Siamo alla ricerca di una figura di Embedded Software Developer da inserire in un contesto dinamico, innovativo e altamente collaborativo. La risorsa sarà coinvolta nell’intero ciclo di vita dei progetti, dall’analisi dei requisiti tecnici e funzionali, allo sviluppo e test, fino alla messa in produzione delle soluzioni embedded.
Responsabilità principali
Analizzare i requisiti tecnici e funzionali.
Progettare, sviluppare e mantenere firmware per sistemi a microcontrollore.
Gestire attività di test, debug e ottimizzazione del codice, anche in prossimità dell’hardware.
Interagire con periferiche hardware e strumenti di laboratorio per la verifica e l’ottimizzazione delle prestazioni.
Collaborare alla redazione e al mantenimento della documentazione tecnica dei progetti.
Partecipare all’evoluzione continua delle soluzioni embedded attraverso l’adozione di nuove tecnologie e metodologie di sviluppo.
Competenze tecniche richieste
Fondamenti di Programmazione Embedded
Conoscenza di programmazione in C/C++ per sistemi a microcontrollore.
Esperienza, anche universitaria o personale, con schede di sviluppo (es. STM32, Microchip, AVR).
Familiarità con registri, periferiche, concetti di driver hardware.
Interfacce di Comunicazione
Conoscenza teorica e/o pratica di protocolli di comunicazione come UART, SPI, I2C.
Capacità di lettura e comprensione dei datasheet per l’integrazione di periferiche.
Sistemi Operativi Real-Time (RTOS)
Conoscenze base di real-time scheduling, gestione di task/thread, sincronizzazione (es. semafori, mutex).
Esperienza con FreeRTOS, VxWorks o altri RTOS, anche in ambito accademico (preferenziale).
Solida esperienza nello sviluppo e manutenzione di software con vincoli temporali stringenti.
Interazione con l’hardware
Capacità di lavorare vicino all’hardware per debug, ottimizzazione delle prestazioni e gestione di periferiche.
Familiarità con strumentazione di laboratorio (oscilloscopi, analizzatori logici, multimetri, etc.).
Strumenti di Sviluppo
Esperienza con ambienti di sviluppo integrati (IDE) come STM32CubeIDE, Keil, MPLAB X.
Utilizzo di strumenti di debug: step-by-step, breakpoint, printf debugging.
Controllo Versione
Conoscenza e utilizzo base di Git per la gestione del codice sorgente e la collaborazione in team.
Metodologie
Familiarità con pratiche Agile e DevOps.
Esperienza in processi di Continuous Integration/Continuous Deployment (CI/CD) per ambienti embedded.
Competenze trasversali
Passione per l’elettronica e per lo sviluppo embedded.
Buone capacità analitiche e di problem solving.
Predisposizione al lavoro in team e alla documentazione tecnica.
Disponibilità all’apprendimento continuo e alla sperimentazione di tecnologie sia RTOS che bare-metal.
Formazione
Laurea triennale o magistrale in Ingegneria Elettronica, Informatica, dell’Automazione, delle Telecomunicazioni o discipline affini.
Cosa offriamo
Percorsi di carriera personalizzati in un’azienda in forte espansione e costantemente orientata all’innovazione.
Formazione continua, sia trasversale che specialistica, costruita in base a capacità, attitudini e interessi individuali.
Corporate Benefits: assicurazione sanitaria, piano welfare, Ticket Restaurant e convenzioni aziendali.
Attività di team building per promuovere un ambiente di lavoro positivo, coeso e collaborativo.
Posizione aperta a candidati senza distinzione di genere, ai sensi del D.Lgs. 198/2006. L'azienda promuove le pari opportunità e valorizza la diversità in tutte le sue forme.
How strong is your resume?
Upload your resume and get feedback from our expert to help land this job
How strong is your resume?
Upload your resume and get feedback from our expert to help land this job