Embedded Software Engineer

2 giorni fa

Varese, Lombardia, Italia Hunters Group Srl Tempo pieno 44.000 € - 64.000 € Contratto

Per cliente multinazionale operante in ambito tecnologico siamo alla ricerca di uno EMBEDDED SOFTWARE ENGINEER (livelloMiddle) da inserire nel team di progettazione software.

La risorsa si occuperà dello sviluppo "low-level" su piattaforme basate su architettura ARM, curando l’intero ciclo di vita del software: dalla fase di accensione del processore (Bootloader) fino alla configurazione dell’ambiente operativo Linux o RTOS e alla messa in sicurezza del sistema.

Responsabilità Tecniche

  • Sviluppo Low-Level: Sviluppo e personalizzazione diFirst Stage BootloaderseU-Boot.
  • Secure Boot & Trust: Implementazione diTrusted Boot Chains, gestione della firma del firmware e integrazione di meccanismi di Root of Trust su architetture ARM.
  • Linux Kernel & BSP: Configurazione, patching e ottimizzazione del Kernel Linux; sviluppo di driver e gestione deiDevice Tree.
  • Build Systems: Creazione e mantenimento di distribuzioni Linux custom tramiteYocto Project.
  • Firmware Security: Implementazione di protocolli di sicurezza e gestione di ambienti di esecuzione isolati.

Requisiti Tecnici per Architettura

Il candidato ideale lavorerà su SoC eterogenei caratterizzati dalle seguenti architetture:

  • ARMv7-A (32-bit): Ottimizzazione del boot e gestione della memoria su core single-core ad alta efficienza.
  • ARMv8-A (64-bit): Gestione di sistemi multi-core complessi e interfacciamento con ilTrusted Firmware-A.
  • ARMv7-M / ARMv8-M: Sviluppo di firmware per i co-processori real-time integrati nei SoC per la gestione di task critici e sicurezza.

Toolkit Tecnologico Previsto

  • Ambiente: Linux e Windows come OS di sviluppo.
  • Debug: JTAG, GDB, analizzatori di protocollo (UART, I2C, SPI).
  • Istruzione: Laurea in Ingegneria Elettronica, Informatica, Telecomunicazioni o equivalente.
  • Esperienza: Almeno 3 anni di esperienza nello sviluppo embedded su Linux o RTOS
  • Linguaggi: Ottima conoscenza del linguaggioC/C++e dei puntatori.
  • Sistemi Operativi: Conoscenza dei concetti base dei sistemi operativi (gestione memoria, scheduling, interrupt).
  • Attitudine: Forte curiosità per l’architettura dei calcolatori e propensione al debug su hardware.
  • Bootloader: Esperienza pratica nella modifica di sequenze di boot e gestione di partizioni ridondate.
  • Yocto: Capacità di creare layer e ricette custom per il supporto di nuove schede (Board Support Package).
  • Sicurezza: Conoscenza di base di crittografia (AES, RSA, hashing) applicata al firmware.

Contratto: Inserimento diretto a tempo indeterminato

Orario lavorativo: Full time lun-ven, in presenza

Il presente annuncio è rivolto ad entrambi i sessi, ai sensi delle leggi 903/77 e 125/91, e a persone di tutte le età e tutte le nazionalità, ai sensi dei decreti legislativi 215/03 e 216/03