Software Developer

3 giorni fa

San Benedetto del Tronto, Marche, Italia Agap2 Italia Tempo pieno 45.000 € - 60.000 €/anno

Posizione: Software Engineer / Embedded Software Engineer

Sede di lavoro: San Benedetto del Tronto (AP)

Settore: Software Development / Embedded Systems / Technology

Modalità: In presenza

Esperienza: 3+ anni

Chi Siamo

Siamo una realtà operante nel settore della consulenza IT e dell’innovazione tecnologica, specializzata nello sviluppo e nell’integrazione di soluzioni software e sistemi tecnologici complessi.

Missione del ruolo

La risorsa sarà coinvolta nelle attività di progettazione, sviluppo, integrazione, testing, manutenzione e ottimizzazione del software a supporto del team di sviluppo.

Il ruolo prevede attività di sviluppo software su sistemi complessi, con particolare attenzione alla programmazione C++, allo sviluppo embedded, alla progettazione algoritmica e all’elaborazione del segnale.

La risorsa contribuirà inoltre allo sviluppo di interfacce grafiche tramite Qt/QML e JavaScript, all’integrazione con backend, API REST e database, nonché alle attività di debugging, profiling, testing e troubleshooting applicativo.

Il ruolo prevede una forte collaborazione con il team di sviluppo nelle diverse fasi del ciclo di vita del software, dalla progettazione alla validazione, fino alla manutenzione e all’ottimizzazione delle soluzioni implementate.

Responsabilità principali

  • Progettazione e sviluppo di applicazioni software in C++;
  • Sviluppo utilizzando i principi della programmazione orientata agli oggetti;
  • Implementazione di applicazioni multithread e gestione dei meccanismi di sincronizzazione;
  • Sviluppo e manutenzione di software embedded in C/C++;
  • Progettazione e implementazione di algoritmi per sistemi embedded e real-time;
  • Sviluppo di algoritmi per l’elaborazione del segnale;
  • Implementazione e ottimizzazione di filtri digitali;
  • Analisi e ottimizzazione delle performance del software;
  • Sviluppo frontend utilizzando framework Qt/QML e JavaScript;
  • Progettazione e implementazione di interfacce utente con attenzione a UI/UX, usabilità e user experience;
  • Integrazione delle interfacce frontend con componenti backend, REST API e database;
  • Sviluppo e manutenzione di componenti software su piattaforme Linux Embedded;
  • Sviluppo e integrazione di software attraverso bus e protocolli di comunicazione quali Modbus, I2C, UART e SPI;
  • Utilizzo di MATLAB/Simulink per lo sviluppo, la simulazione e la validazione di algoritmi;
  • Supporto alle attività di porting degli algoritmi da ambiente di simulazione a sistemi target;
  • Progettazione, sviluppo, gestione e manutenzione di database relazionali e real-time database;
  • Sviluppo e gestione di query e componenti software basati su SQL;
  • Sviluppo di componenti backend e servizi applicativi utilizzando tecnologie quali Python, Java, PHP e Node.js;
  • Integrazione di software e componenti applicativi con sistemi esistenti;
  • Attività di debugging e troubleshooting applicativo;
  • Utilizzo di strumenti di profiling e analisi delle performance;
  • Gestione del codice sorgente e delle modifiche attraverso sistemi di versioning quali Git e/o CVS;
  • Documentazione del codice e delle soluzioni implementate;
  • Gestione strutturata delle modifiche software;
  • Attività di testing, validazione e verifica delle funzionalità sviluppate;
  • Collaborazione con il team di sviluppo nelle attività di integrazione e risoluzione delle problematiche tecniche;
  • Supporto tecnico al team durante le fasi di sviluppo, integrazione e manutenzione;
  • Produzione e aggiornamento della documentazione tecnica relativa alle soluzioni software.

Requisiti richiesti

Formazione

  • Diploma o Laurea in discipline tecniche, informatiche o ingegneristiche;
  • Preferibile formazione in:
    • o Ingegneria Informatica;
    • o Informatica;
    • o Ingegneria Elettronica;
    • o Ingegneria delle Telecomunicazioni;
    • o Automazione;
    • o discipline STEM o tecnologiche equivalenti;
  • Saranno valutati anche profili con formazione differente, purché supportata da un’esperienza professionale coerente con il ruolo.

Esperienza

  • Almeno 3 anni di esperienza professionale nello sviluppo software;
  • Esperienza concreta nello sviluppo in C++;
  • Esperienza nella programmazione orientata agli oggetti;
  • Esperienza nello sviluppo di applicazioni multithread e nella gestione della sincronizzazione;
  • Esperienza nello sviluppo software embedded in C/C++;
  • Esperienza nello sviluppo frontend con Qt/QML e JavaScript;
  • Esperienza nell’integrazione tra frontend, backend, REST API e database;
  • Esperienza con Linux Embedded;
  • Esperie