Sviluppatore di Embedded Software e App – Piattaforme Android / iOS / altre

Siamo alla ricerca di uno sviluppatore per applicazioni “embedded” in sistemi on-board per veicoli ed in librerie per utilizzo in piattaforme Android e iOS, e per app per utente, come evoluzione di sistemi già esistenti. Lo sviluppatore lavorerà in team nell’ambito dei trasporti e mobilità. Lo sviluppatore sarà chiamato a proporre architetture, compreso sistemi operativi e linguaggi, ed implementare soluzioni appropriate per la raccolta dati ad alta e media frequenza da sensori, compreso GPS e dati veicolari (CANbus), controllo di attuatori locali, parziale elaborazione locale e colloquio con sistemi di back-end (compreso sistemi di AI), visualizzazione di mappe ed interazione con un utente, su piattaforme hardware di mercato. Sarà inoltre necessario sviluppare librerie ed app complete per smartphone, orientate all’utente casuale. Stipendio e modalità di lavoro saranno negoziate in base alla seniority del candidato; esperienza nel campo dei sistemi embedded e di sviluppo di app per smartphone sono apprezzate, ma incoraggiamo la candidatura di persone anche junior purchè con un adeguato background informatico e motivate ad entrare nel campo.

Abilità richieste:

Essenziali

  • Ottima conoscenza della OOP (object oriented programming – programmazione orientata agli oggetti)
  • Conoscenza di almeno uno dei seguenti linguaggi di programmazione: Java, C#, C++, C.
  • Essere in grado di lavorare in autonomia e di assumersi responsabilità su determinati progetti
  • Ottima conoscenza dell’inglese

Preferenziali

  • Esperienza con raccolta di dati da sensori in tempo reale in ambito Android o in sistemi embedded (es. Arduino)
  • Concetti ed esperienza di analisi dati, compressione, modelli probabilistici, AI (incluso reti neurali)
  • Esperienza con protocolli IoT (in particolare MQTT)
  • Esperienza con sistemi di store-and-forward (message queues, pub/sub e simili)
  • Utilizzo di unit test, adozione di code review ed altre pratiche orientate alla qualità (in stile Agile / Scrum)
  • Esperienza nello sviluppo di app con mappe / interfacce GIS
  • Buona comprensione degli elementi UI e dei concetti UX

Conoscenze richieste:

Essenziali

  • Un linguaggio di programmazione OO per ambiente Android e Linux (possibilmente Java)
  • GIT

Titoli:

  • Preferenziale: Laurea in scienze informatiche o simili (corso di studio in alta formazione in ambito informatico)
  • Candidati con altra forma di preparazione in ambito elettronico o informatico e appropriata esperienza saranno comunque considerati