Corso di tecniche per lo sviluppo di software con metodologie DevOps per l’integrazione dei sistemi e l’utilizzo dei big data

loghi enti finanziatori corso

Avviso pubblico per la presentazione e selezione di progetti di istruzione e formazione tecnica superiore (ifts) da realizzare nell'a.f. 2026/2027P.R.+ 2021-27 priorità: 2. Istruzione e formazione – es04.6 - azione f.2. Sostegno ai percorsi di istruzione post-secondaria

L’approccio DevOps unisce sviluppo e operatività, automatizzando i processi per renderli più efficienti. Gli specialisti DevOps gestiscono infatti sia il codice che la manutenzione delle applicazioni e, per farlo, servono competenze tecniche, conoscenza dei linguaggi di programmazione e familiarità con pratiche e strumenti Lean, che rendono il lavoro più veloce e collaborativo.

Il corso forma figure tecniche con competenze in coding, ambienti cloud, CI/CD e metodologie Lean, un profilo sempre più richiesto, non solo nel settore IT!

Organizzazione del corso

  • DURATA: 1 anno (1000 ore totali – 600 teoria + 400 stage)
  • IMPEGNO: per la fase d'aula 30 ore a settimana in presenza, dal lunedì al giovedì dalle 9.00 alle 18.00 nella sede IFOA di Milano Bovisa, in Via Durando 38
  • STAGE: presso aziende del comparto IT
APPROFONDISCI

A chi è rivolto

Il corso è rivolto a giovani, residenti o domiciliati in Lombardia, che siano in possesso di uno dei seguenti titoli di studio, secondo quanto indicato all’art. 10 del DPCM del 25 gennaio 2008:

  • diploma di istruzione secondaria superiore;
  • diploma professionale di tecnico di cui al D.Lgs 17/10/2005, n. 226, art. 20, comma 1, lettera c, ovvero attestato di competenza di III livello europeo conseguito nei percorsi di IeFP antecedenti all’anno formativo 2009/2010;
  • in possesso dell’ammissione al quinto anno dei percorsi liceali, ai sensi del D.Lgs 17/10/2005, n. 226, art. 2, comma 5, o non in possesso del Diploma di Istruzione Secondaria Superiore, previo accreditamento delle competenze acquisite in precedenti percorsi di istruzione, formazione e lavoro successivi all'assolvimento dell'obbligo di istruzione di cui al regolamento adottato con Decreto del Ministro della Pubblica Istruzione n. 139 del 22 agosto 2007.

Come funziona

L’ammissione al corso è subordinata al superamento di prove di selezione attitudinali, tecniche e colloquio motivazionale:

  • la prova attitudinale (test scritti) è volta a misurare la capacità di esecuzione e riuscita in differenti aree significative per la figura professionale in uscita;
  • il colloquio individuale ha lo scopo di accertare la motivazione alla partecipazione e l'interesse per il settore specifico del corso, oltre alle capacità organizzative, di comunicazione efficace con gli altri e di lavorare in team.

Cosa imparerai a fare

Al termine del corso avrai acquisito le seguenti competenze: 

  • Individuare gli strumenti di sviluppo del software per creare un prodotto conforme alle specifiche progettuali richieste dal cliente
  • Conoscere e applicare i più diffusi linguaggi di programmazione, le principali regole della programmazione strutturata, le diverse tipologie di applicazioni software
  • Gestire i processi principali di Networking e di Cybersecurity
  • Sviluppare componenti per applicazioni distribuite (Web e Mobile)
  • Pianificare e gestire i flussi operativi di Continuous Integration / Continuous Deployment
  • Gestire l’interazione tra componenti dell’architettura e integrare API (Application Programming Interface)
  • Interagire con i database, sia SQL che NoSQL
  • Effettuare test di funzionamento delle soluzioni in esercizio
  • Gestire la manutenzione delle applicazioni e produrre la relativa documentazione
  • Supportare i processi aziendali di Digital Transformation

Quanto costa e modalità di pagamento

Il corso è completamente gratuito.

Contenuti del corso

Lettura e spiegazione patto e consegna calendario del corso

Sviluppo delle Capacità comunicative

  • Autopresentazione e interviste reciproche
  • L'importanza delle domande, come intervenire in una riunione
  • Comunicare con clienti e colleghi, ascolto attivo, domande e obiezioni
  • Struttura delle mail e sue funzioni, gestione mail di reclamo, reportistica
  • Presa in carico telefonica cliente e gestione telefonate

Problem solving

  • La definizione delle priorità,
  • La fase di semplificazione della situazione
  • (scomposizione di situazione complesse in situazioni più facilmente maneggevoli)
  • La fase di individuazione della causa “vera” (analisi del problema reale)
  • La fase di identificazione della soluzione “ottimale” e di presa della decisione (decision making),
  • La fase di prevenzione dei problemi potenziali (rischi)
  • Processi decisionali, emozioni e comunicazione.

Il sistema Impresa

  • Azienda come sistema efficace ed efficiente
  • Obiettivi e risorse dell’organizzazione: mission, vision, valori e cultura aziendale
  • Il settore di riferimento: caratteristiche delle aziende IT, tipologie di servizi offerti, tipologie di clienti
  • Tipologie di contratti, fonti documentali
  • L’organigramma: poteri e responsabilità
  • Ruolo e flussi di lavoro e di comunicazione
  • Gli stili di leadership e di gestione delle persone in azienda
  • Know-how e comportamenti organizzativi
  • Cenni sul Sistema Qualità, principi e documenti utilizzati
  • Tracciamento delle attività, reportistica in uso

Team working

  • La consapevolezza del proprio ruolo
  • Lavorare per obbiettivi comuni e non individuali
  • La comunicazione assertiva ed efficace
  • Stereotipi e pregiudizi
  • Il concetto di responsabilità diffusa
  • Obiettivi lavorativi individuali e di squadra

Sicurezza generale dei lavoratori

  • Concetto di rischio
  • Concetto di danno
  • Concetto di prevenzione
  • Concetto di protezione
  • Organizzazione della prevenzione aziendale
  • Diritti, doveri e sanzioniper i vari soggetti aziendali
  • Organi di vigilanza, controllo e assistenza

Sicurezza specifica rischio basso

  • Rischi specifici legati all'attività lavorativa
  • DPI
  • Movimentazione manuale dei carichi
  • Utilizzo scale portatili
  • Rischio chimico
  • Tutela delle lavoratrici madri
  • Incidenti stradali
  • Near miss
  • Utilizzo di videoterminali
  • Stress lavoro-correlazione
  • Gestione delle emergenze
  • Elementi di matematica applicata alla statistica.
  • Rilevazione e rappresentazione dati.
  • Curva Gaussiana, Media, Moda, Mediana, Varianza, Deviazione STD
  • Intervalli di confidenza, Indici di dispersione, Probabilità.
  • Utilizzo del foglio elettronico per analisi dati.
  • Formule: Tipologia, inserimento, indirizzi relativi – assoluti - misti
  • Funzioni: Generalità ed uso delle principali Matematiche, Logiche e Riferimento, anche nidificate
  • Analizzare precedenze e dipendenze, Controllo celle
  • Errori di formule e loro valutazione
  • Formattazione condizionale ed avanzata a elenchi
  • Definire e applicare Filtri ed Ordinamento dati anche in modalità avanzata; Tabella; Subtotale
  • Gestione dati: Importare file testo o web in Excel
  • Grafici: Definizione, selezione dati, individuazione tipo, tipologia numerica, editing, tipologia temporale
  • Analisi dati: Raggruppare/Separare le strutture dati; inserimento guidato dati;  Convalida dei dati; Consolida
  • Tabella pivot – Dashboard
  • Ripasso della logica della lingua inglese: i tempi verbali visti come un sistema
  • Programmare attività aziendali: ripasso futuro dei verbi, esprimere obiettivi/programmi
  • Descrivere prodotti/servizi: ordine di aggettivi, forme/materiali, Descrizione di funzione e utilizzo
  • Parlare di idee: passato semplice/continuo, sequenze sostantivo/aggettivo, partecipare/gestire riunioni, esprimere idee/opinioni
  • Innovazione: seguire/fare una presentazione, preposizioni di tempo, verbo al passivo, vocaboli per esprimere
  • Terminologia tecnica di settore nell’ambito dell’ICT.

  • Sistema operativo Windows: funzionalità del sistema operativo, requisiti del cliente, aggiornamenti del S.O.,
  • Installazione di base di Windows, opzioni di installazione personalizzate, sequenza di avvio di Windows
  • Configurazione di Windows. Pannelli di controllo
  • Amministrazione del sistema: Strumenti amministrativi, Utilità di sistema, Gestione del disco,  Installazione e configurazione delle applicazioni
  • Command Line Interface di Windows: comandi CLI del file system, del disco, di sistema e attività
  • Introduzione al mondo Linux: distribuzioni e loro caratteristiche, applicazioni e licenze open source
  • Installazione del sistema operativo,
  • La linea di comando:  shell e i comandi base, filese e cartelle, archiviazione e compressione
  • Configurazioni di base del sistema
  • Scripting: creazione di uno script di comandi
  • Gestione degli utenti: concetti base ed identificazione del tipo di utente
  • Gestione di processi e packaging
  • Accesso ai files: gestione di proprietà e permessi
  • Permessi speciali : cartelle e files speciali, links di accesso ai files
  • Tecniche comuni di manutenzione preventiva per i S.O.:  piano di manutenzione preventiva, backup e ripristino, problemi comuni e soluzioni
  • Introduzione al networking: componenti e tipi di rete, tipi di connessione Internet
  • Protocolli, standard e servizi di rete: Protocolli del livello di trasporto, Numeri di porta dell'applicazione, Protocolli wireless, Servizi di rete
  • Dispositivi di rete , cavi e connettori in rame e in fibra
  • Connessione da dispositivo a rete: indirizzamento di rete, configurare una scheda NIC, configurare una rete cablata e wireless, configurazione di un dispositivo IoT
  • Il processo di risoluzione dei problemi di rete di base
  • Reti Windows: condivisione in rete e mappatura delle unità, condivisione di risorse locali, configurare una connessione di rete cablata, interfaccia di rete wireless, protocolli di accesso remoto, desktop remoto e assistenza
  • Stampanti: caratteristiche e capacità, connessioni stampante, installazione, configurazione e aggiornamenti
  • Condivisione di stampanti: impostazioni per la condivisione, server di stampa
  • Introduzione alla Virtualizzazione
  • Cloud Computing: Applicazioni, Servizi cloud
  • Minacce alla sicurezza: Malware, Prevenzione del malware, Attacchi di rete
  • Procedure di sicurezza: Politica di sicurezza, Protezione di una postazione di lavoro, Protezione e distruzione dei dati
  • Assegnazione del ruolo di administrator, Gestione di utenti e gruppi
  • Autenticazione, Autorizzazione e Accounting (AAA)
  • Liste di controllo degli accessi (ACL)
  • Tecnologie firewall, Firewall con criteri basati su zone
  • Tecnologie Intrusion Prevention System,  Funzionamento e implementazione IPS, Sicurezza degli endpoint
  • Sicurezza di livello 2: Servizi crittografici, Integrità e autenticità di base,  Crittografia a chiave pubblica
  • VPN: implementazione di una  VPN IPsec site-to-site con CLI
  • Test di sicurezza della rete
  • Criminali informatici contro specialisti della sicurezza informatica
  • Le tre dimensioni del Cubo della sicurezza informatica: confidentiality, integrity, and availability
  • Domini di sicurezza informatica
  • Protezione di un dominio di sicurezza informatica: Sistemi e dispositivi di difesa, Rafforzamento del server,  Rafforzamento della rete, Sicurezza fisica e ambientale
  • Comprendere l'etica del lavoro nella sicurezza informatica
  • Architettura cloud: Sicurezza dell'infrastruttura per il cloud, Gestione del rischio, Sicurezza dei dati per il cloud, Sicurezza delle applicazioni e gestione delle identità
  • Problemi e algoritmi
  • Aplicazioni per rappresentazione di algoritmi (es. Flowgorithm)
  • Variabili, assegnazioni, calcoli
  • Algebra booleana, Operatori logici, Sequenze
  • Selezione e cicli
  • Scomposizione e metodi
  • Array e Stringhe
  • Algoritmi notevoli
  • Evoluzione dalla programmazione procedurale alla programmazione ad oggetti
  • Introduzione Programmazione ad Oggetti
  • Introduzione concetti sull'OOP: incapsulamento, ereditarietà, polimorfismo, introspezione
  • Introduzione a Python come linguaggio di programmazione universale: versioni di Python e sviluppo del linguaggio; Strumenti e IDE necessari per iniziare a programmare in Python.
  • Tipi di dati, variabili, operazioni di input-output di base, operatori di base: come scrivere ed eseguire il primissimo programma Python; Operatori ed espressioni; Variabili; Operazioni di I/O di base in Python.
  • Valori booleani, esecuzione condizionale, cicli, elenchi ed elaborazione di elenchi, operazioni logiche e bit a bit: Tipo di dato booleano; Operatori relazionali in Python; Processo decisionale if, if-else, if-elif-else; Cicli whhile e for; -Operazioni bit a bit;
  • Liste in Python: costruzione, indicizzazione, slicing e manipolazione del contenuto; algoritmo di ordinamento a bolle;
  • Funzioni: Strutturazione del codice e concetto di funzioni; Chiamata e restituzione di un risultato da una funzione; Name scopes e variabile shadowing;
  • Tuple, dizionari ed elaborazione dei dati: scopo, costruzione e utilizzo;
  • Moduli, Pacchetti e PIP: Cos'è un modulo; Importazione e utilizzo dei moduli; Alcuni utili moduli Python;, Costruzione e utilizzo di pacchetti;- PIP-il coltellino svizzero per la manutenzione
  • Eccezioni, Stringhe, Metodi String e List: Caratteri, stringhe e standard di codifica; Stringhe vs. liste; Elenco metodi; Metodi stringa; Gestione errori di runtime; Controllo del flusso di errori utilizzando try except; Gerarchia delle eccezioni.
  • Programmazione orientata agli oggetti in Python: - Concetti di base OOP; Classi, oggetti, proprietà e metodi; Ereditarietà e polimorfismo; Eccezione come oggetto.
  • Lavorare con filesystem, alberi di directory e file;
  • Moduli della libreria standard Python selezionati (os, date, datetime, calendar).
  • Introduzione al paradigma OOP, piattaforma Java, versioni ed edizioni
  • Configurazione dell’ambiente di sviluppo (JDK)
  • IDE (a scelta del docente)
  • Primo programma Java
  • Variabili e tipi di dato, Casting
  • Operatori: assegnamento, aritmetici, unari, relazionali, logici, bitwise
  • Istruzioni condizionali
  • Cicli: while, for, do-while
  • Altre tipologie di dati: Enumerazioni, Array, String e Array of string, Multidimensional Array, ArrayList,
  • Classi: dichiarare una classe
  • Metodi: getter e setter
  • Costruttori, uso della parola chiave this
  • Oggetti: Creazione ed utlizzo
  • Ereditarietà: sottoclassi e superclassi
  • Polimorfismo: overloading e overriding
  • Incapsulamento
  • Classe String: uso e gestione delle stringhe, Classi StringBuffer e StringBuilder
  • Gestione della memoria: Garbage Collection
  • Package e visibilità: public, private, protected
  • Documentazione del codice, uso dei commenti Javadoc
  • Autoboxing e unboxing
  • Classe java.util
  • Errori ed eccezioni: tipi e gestione (Runtime e Checked)
  • Sintassi del try with resource di java
  • Leggere, creare e scrivere file
  • Introduzione alle Interfacce
  • Introduzione a JDBC e accesso a DBMS
  • Introduzione alle applicazioni web, panoramica tecnologie più utilizzate
  • Aspetto della pagine web: HTML + CSS
  • Linguaggio di script e sua funzione: Javascript
  • HTML: elementi strutturali della pagina web, editors, inserimento di grafica, animazioni, video e link, inserimento di tabelle, liste e creazione di un menu di navigazione
  • Introduzione a CSS: applicare lo stile alle pagine web
  • CSS: sfondi, colori, posizione nella pagina, margini, padding, round borders, dropdown menù, rasformazioni 2D 3D, animazioni
  • Uso delle Form in HTML5
  • Introduzione a Bootstrap: cosa è e a cosa serve, framework, installazione, grid layout, classi, stili
  • Manipolazione maschere per immagini.
  • Nozioni base HttpRequest, HttpResponse, Http Session
  • Concetto di sito responsive
  • Introduzione a JAVASCRIPT: rendere interattiva la pagina web
  • JAVASCRIPT: tipi di dati, variabili, oggetti, elementi per il controllo di flusso, Document Object Modul, caricamento remoto di una risorsa, URL, URI, ORIGIN, definizione policy cross-origin
  • JAVASCRIPT: oggetti, costruttore, varie metodologie di gestione eventi, librerie Jquery
  • File scambio dati: JavaScript Object Notation
  • Lavorare con il JSON: Get Post e Put
  • Cenni su Android sTudio: editor e impostazione delle variabili di sistema.
  • Panoramica su View, ViewGroup, widget e risorse di un'app
  • Studio, realizzazione e test di una prima, semplice app.
  • Testing di app con emulatori e dispositivi mobili reali.
  • Introduzione al linguaggio Java-Based Kotlin per lo sviluppo di una applicazione mobile mediante uso dell’IDE IntelliJ Idea: Funzioni, Classi, istanze, Extension function ed espressioni lambda,  Stringhe. Array, Clicli ed espressioni condizionali.
  • Introduzione ai dati: concetto di dato, informazione e informazioni strutturate.
  • Database: definizione, utilità e vantaggi
  • DBMS (scelto dal docente): vantaggi svantaggi e tipologie sul mercato elementi dell’interfaccia (sicurezza, database, tabelle, query)
  • Progettazione di base dati: dall’ideazione all’estrazione di informazioni.
  • Modello ER: concetto di entità, relazione, tipologie di relazioni, cardinalità 1:1- 1:N – N:M.
  • Modello logico: regole di derivazione per tradurre da modello ER.
  • Introduzione concetto di Primary Key e Foreign Key  e integrità referenziale
  • Creare le tabelle, PK e FK da interfaccia
  • Introduzione a SQL: sintassi per la creazione/cancellazione/modifica di un database e di una tabella.
  • Query di selezione semplice
  • Forme normali: definizione, concetto di dipendenza funzionale
  • Interrogazioni SQL: query concetto di selezione, proiezione e prodotto cartesiano
  • Funzioni di aggregazione: MIN MAX AVG COUNT
  • Ordinamento: Order by desc e asc
  • Raggruppamento: Group by e having. Differenze having e where
  • Query nidificate, JOIN e differenze inner join, left join, right join e full outer join, self join, Distinct e differenze con group by.
  • Creazione di viste: comando view.
  • Interrogazioni SQL: EXISTS, NOT, ANY, ALL, UNION
  • Modelli di processo, sviluppo e specifica dei requisiti software (IEEE830) introduzione a UML.
  • Modelli a cascata, RUP, Agili.
  • Diagramma delle classi/oggetti, dei package/casi d’uso, di stato/attività/sequenza
  • Metodologia Agile: superamento del modello a cascata, collaborazione tra i team e gli utenti finali,
  •  approccio incrementale (suddivisione del progetto in piccoli moduli per lavorare in parallelo con feedback costanti), monitoraggio dell’avanzamento del progetto durante tutto il ciclo di sviluppo (controllo empirico processi).
  • Scrum framework agile per la gestione del ciclo di sviluppo del software
  • Limiti e svantaggi di Agile: scadenze mancanti, obiettivi di budget, mancato coordinamento tra il team di sviluppo e team operativo, componenti software incompatibili dopo il completamento (nuove funzionalità che interrompono le vecchie funzioni.)
  • Metodologia DevOps: dalla collaborazione tra il team di sviluppo e gli utenti finali alla collaborazione collettiva tra il team di sviluppo e operativo.
  • Obiettivo DevOps: aumentare la capacità di un’organizzazione di fornire servizi e applicazioni a un ritmo relativamente più veloce.
  • Cultura di Agile e DevOps
  • Dimensione del team per Agile eDevOps
  • Automazione in Agile e DevOps
  • Comunicazione per Agile e DevOps
  • Esempi di applicazione
  • Modelli di progettazione del software.
  • Controllo della versione tramite GIT.
  • Nozioni di base sulla codifica Best practice.
  • Revisione e test del codice
  • Comprensione dei formati dei dati
  • Comprensione e utilizzo delle API
  • Stili di progettazione e stili architetturali API
  • Introduzione alle API REST
  • Autenticazione a un'API REST
  • Interazione dell’API utilizzaando la riga di comando, gli strumenti grafici e il codice Python
  • Limiti e risoluzione dei problemi dell'API
  • Comprensione delle scelte di distribuzione con diversi modelli
  • Tecnologia container per distribuire una semplice applicazione.
  • Integrazione continua/distribuzione continua (CI/CD)
  • Reti per lo sviluppo e la sicurezza delle applicazioni in un ambiente cloud.
  • Protezione delle applicazioni
  • Introduzione alla Data Communication and Visualization con Power BI ed Excel:
  • Connettersi ai dati e modificare un'origine dati
  • Ordinare, filtrare e raggruppare i dati
  • Utilizzare l'area di lavoro di Power BI per creare dashboard.
  • Creare report dinamici e condivisi con Power BI.
  • Creare strutture di calcolo di base, inclusi elaborazione di dati tabellati.
  • Creare dashboard interattive per rivelare informazioni dettagliate sui dati.
  • Condivisione e pubblicazione delle dashboard.
  • Studio di funzioni di probabilità lineare per ottimizzazione di modelli IA in sistemi RAG.
  • Introduzione all’utilizzo dell’intelligenza artificiale per l’analisi dei dati: generazione e manipolazione di file Excel con ChatGpt e Claude.
  • Principi di prompt engeneering
  • Sviluppo di skill per Claude e ChatGpt
  • Utilizzo di LM Studio per lo sviluppo di sistemi di IA locali

Certificazioni

  • Certificato di specializzazione tecnica superiore

Estremi finanziamento

Avviso pubblico per la presentazione e selezione di progetti di istruzione e formazione tecnica superiore (ifts) da realizzare nell'a.f. 2026/2027P.R.+ 2021-27 priorità: 2. Istruzione e formazione – es04.6 - azione f.2. Sostegno ai percorsi di istruzione post-secondaria

Note

Durante il processo di iscrizione ti verrà richiesto di caricare i seguenti documenti:

  • copia della Dichiarazione sostitutiva di certificazione compilata (Scaricabile qui)
  • copia della Carta d'identità
  • copia del Codice Fiscale
  • copia del Curriculum Vitae aggiornato
  • foto tessera
  • copia del Permesso di Soggiorno (solo per stranieri)

Chiamaci per saperne di più!

Richiedi info
(ci permette di fornirti un servizio più veloce e preciso)
Informativa Privacy (Reg. UE 2016/679)
L'informativa estesa relativa al trattamento dei suoi dati personali da parte IFOA la trova all'indirizzo https://www.privacylab.it/informativa.php?09395461120
Presta inoltre il suo consenso al trattamento dei dati personali per le finalità facoltative sotto riportate?
Invio di comunicazione su eventi, servizi e prodotti Ifoa
L'informativa estesa relativa al trattamento dei suoi dati personali da parte IFOA la trova all'indirizzo https://www.privacylab.it/informativa.php?09395343333

Chiamaci per saperne di più!

Hai trovato quello che cerchi?

Seguici sui social

Vuoi scoprire in anteprima le ultime novità?

Iscriviti alla newsletter