Software Developer

20 ore fa

San Benedetto del Tronto, Marche, Italia agap2 Italia Tempo pieno
Posizione: Software Engineer / Embedded Software Engineer

È questo il ruolo che sta cercando? Se sì, continui a leggere per maggiori dettagli e si ricordi di candidarsi oggi stesso.
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;
  • E