top of page

Disporre delle adeguate capacità di analisi, affrontare e risolvere problematiche in contesti ampi e interdisciplinari, delineare le corrette strategie di sviluppo per il raggiungimento dell’obiettivo finale.
 

Sviluppare un progetto software di qualità implica il possesso di una solida padronanza di paradigmi, strumenti e linguaggi di programmazione, nonché delle più ampie e necessarie metodologie di ingegneria del software: dalle specifiche algoritmiche di alto livello, alle fasi di sviluppo, dalla validazione funzionale, al rilascio finale dell’applicazione.
 

Il tutto con piena padronanza di strumenti che, oltre all’informatica, riguardano anche i domini tipici della matematica, statistica ed econometria, e competenze interdisciplinari relative ai mondi dell’elettronica, dell’automazione, dell’impiantistica e della security.

  • Linguaggi di sviluppo: C, C++, C#, JAVA, J2EE, .NET, PYTHON, PERL, PHP, IEC-1131 (FDB, ST, LADDER)

  • Linguaggi nativi e ibridi per applicazioni mobile: Ionic, Angular JS, HTML, XML, JSON, Java, Objective C, Swift

  • Sistemi Operativi: Windows, Windows CE, Unix, Linux

  • Metodologie: AGILE, SCRUM

  • Ambienti di sviluppo/configurazione: ClearCase, Subversion, CVS, GIT

  • Comunicazione: DALI, KNX, EIB, Modbus, LON, Profibus, CANopen, Ethernet/IP, BACnet ecc.

  • Connettività: M2M (Machine to machine), IoT (Internet of Things), Cloud (tecnologie e servizi)

  • Hardware: controllori programmabili Siemens, architetture PLC, architetture ARM-based (Cortex-A e Cortex-M), architetture Intel-based (Core ix, Atom, Celeron, Xeon)

  • Reti neurali, Machine learning: modelli di apprendimento automatico, programmazione logica induttiva, algoritmi e reti bayesiani ecc.

bottom of page