Embedded C++ Software Engineer

18 ore fa

Rome, Lazio, Italia Accenture Italia Tempo pieno 30.814 € - 50.500 € Contratto
Entrando in Accenture Supply Chain & Engineering lavorerai al cuore della value chain
- dal sourcing e procurement, all'engineering e R&D, dalla manifattura e operations, ai capital projects
- per aiutare le aziende a reinventare l'intera catena del valore, alimentata da dati, AI e tecnologie di nuova generazione. Nel ruolo di Embedded C++ Software Engineer, contribuirai alla progettazione e allo sviluppo di software applicativo in C++ per centraline elettroniche (ECU) e sistemi di controllo in ambito automotive e industriale. Lavorerai sull’intero ciclo di sviluppo del software: dalla definizione dell’architettura e dei requisiti tecnici fino all’implementazione, integrazione, test e ottimizzazione del codice C++. Collaborerai con team multidisciplinari e contribuirai alle principali decisioni tecniche e progettuali, affrontando problematiche che spaziano dal design del software alla comunicazione tra centraline, dalle prestazioni alla qualità e affidabilità del prodotto. Per i profili con maggiore esperienza, il ruolo prevede inoltre l’opportunità di diventare un riferimento tecnico per il team, supportando i colleghi nelle scelte implementative, nella risoluzione delle problematiche più complesse e nell’adozione di buone pratiche di sviluppo. Il tuo ruolo e le tue prospettive
• Progettare, sviluppare e manutenere software applicativo in C++ moderno per centraline elettroniche (ECU) e sistemi di controllo, garantendo qualità, robustezza e manutenibilità del codice.
• Definire architetture software modulari e orientate agli oggetti, applicando design pattern, principi SOLID e buone pratiche di programmazione
• Sviluppare e integrare protocolli di comunicazione tra centraline e verso sistemi esterni, quali CAN/CAN FD, LIN, Automotive Ethernet (SOME/IP, DoIP), diagnostica UDS e protocolli di rete basati su TCP/IP
• Sviluppare applicazioni multithread e concorrenti su sistemi operativi real-time o embedded Linux, gestendo sincronizzazione, comunicazione tra processi e vincoli temporali
• Analizzare e risolvere problematiche complesse attraverso attività di debugging, profiling e root-cause analysis, ottimizzando prestazioni, utilizzo della memoria e tempi di esecuzione del codice
• Collaborare con team cross-funzionali di software, system engineering e testing durante le diverse fasi del ciclo di sviluppo
• Contribuire alle decisioni architetturali e alla selezione di strumenti e tecnologie
• Supportare i colleghi attraverso code review, condivisione delle competenze e definizione di buone pratiche di sviluppo
• Utilizzare Python per scripting e automazione delle attività di sviluppo, test e validazione La retribuzione prevista in Accenture viene definita sulla base di molteplici elementi di valutazione, tra cui – ad esempio
- il ruolo ricoperto, il livello di seniority, il grado di responsabilità, le competenze professionali e l’esperienza maturata. Per la presente posizione, è prevista l’applicazione del CCNL Metalmeccanico, con uno tra i seguenti livelli di inquadramento e corrispondente fascia di retribuzione annua lorda: B1 30.814,29 € e 40.800 € B2 33.058,74€ e 50.500€ Le tue caratteristiche
• Ottima conoscenza del linguaggio C++ moderno (C++11/14/17 e successivi), inclusi programmazione orientata agli oggetti, template, STL, smart pointer e gestione della memoria
• Conoscenza di Python, in particolare per scripting, test o automazione.
• Laurea in discipline STEM o esperienza equivalente in ambito software engineering
• Esperienza nello sviluppo software in C++, preferibilmente di almeno 3 anni, maturata in contesti automotive, industriali o product-oriented
• Esperienza nello sviluppo di applicazioni per centraline elettroniche (ECU), unità di controllo o sistemi embedded di alto livello in ambito automotive, industriale o similare
• Conoscenza dei protocolli di comunicazione tra centraline e di rete, quali CAN/CAN FD, LIN, Ethernet, SOME/IP, UDS, Modbus o equivalenti.
• Familiarità con design pattern, principi SOLID, programmazione multithread e concorrente
• Capacità di analizzare problematiche tecniche complesse e individuare soluzioni efficaci Nice to have
• Esperienza con AUTOSAR (Classic e/o Adaptive) e con standard di codifica e sicurezza quali MISRA C++, AUTOSAR C++14, ISO 26262
• Conoscenza di embedded Linux o QNX e di middleware di comunicazione quali DDS, MQTT, OPC UA
• Familiarità con strumenti di analisi e simulazione delle reti di bordo, ad esempio Vector CANoe/CANalyzer
• Esperienza con Git, CI/CD, static analysis, unit test e automated testing in progetti C++