Vuoi essere un Junior Software Engineer?

Programma del corso Junior Software Engineer, certificazioni e requisiti

PERCORSO CORE

Object-Oriented Programming

40 ore

COMPETENZE
  • Paradigmi di programmazione
  • Programmazione procedurale
  • Tipi primitivi
  • Cicli, strutture di controllo
  • Tipi riferimento, tipi wrapper
  • Array, Stringhe, Uguaglianza
  • Metodi e Overloading
  • Incapsulamento, mod. accesso
  • Eccezioni
  • Ricorsione
  • OOP: classi, enum, classi innestate
  • Pattern Singleton
  • Ereditarietà
  • Polimorfismo
  • Classi astratte
  • Design by contract
  • Interfacce
  • Generics
  • Collections
  • Mappe, comparator e comparable
  • Annotazioni e Reflection
  • Funzionale e Stream
  • Funzionale e Stream/Java11
  • IO/Serialization
  • Logging
  • Design Pattern
PERCORSO CORE

Spring

40 ore

COMPETENZE

Core

  • L’importanza del Container Spring
  • Concetto della Dependency Injection
  • Cos’è un Bean
  • Configurazioni attraverso l’uso delle annotazioni
  • Validazioni, Data Binding e Conversioni di tipo
  • SpEL – Spring Expression Language
  • I18N – Internazionalizzazione

Data Access

  • JDBC (DriverManager, Connection, Statements, ResultSet)
  • Pattern DAO
  • Uso delle transazioni
  • Uso delle annotazioni dedicate alla gestione delle eccezioni e delle transazioni
  • La tecnica ORM
  • JPA – Java Persistence API
  • Uso dei Repository

Spring MVC

  • Origini delle Servlet
  • I componenti JAVAEE – Servlet, Filter e Listener
  • Le pagine JSP e l’uso delle TagLibrary
  • Il Pattern MVC – Model, View, Controller
  • Sviluppo di un controller Spring con costruzione del risultato in formato HTML
  • Concetti dei web services RESTFul
  • Sviluppo di una REST API con costruzione del risultato in formato JSON

Spring Security

  • Configurazione del processo di autenticazione
  • Configurazione del processo di autorizzazione
SPECIALIZZAZIONE

Angular

40 ore

COMPETENZE
  • L’ambiente di front-end: Node e NPM
  • Typescript: installazione, sintassi
  • Struttura applicazione Angular e Angular CLI
  • Tag personalizzati: i componenti
  • Debug Angular con Chrome Dev Tool e Angular CLI
  • I template: ngFor, ngIf, ngClass, NgStyle
  • Two way data binding
  • Ciclo di vita di un componente
  • Servizi e dependency Injection in Angular
  • Routing in Angular
SPECIALIZZAZIONE

Progettazione, sviluppo e distribuzione Software per il Cloud

40 ore

COMPETENZE

Progettazione e sviluppo di REST API attraverso l’uso di Spring

  • Applicazione Monolitica a confronto con l’Architettura a Microservizi
  • Introduzione a Spring, Dependency Injection e Spring Boot
  • Configurazioni principali nel file application.properties
  • Come sviluppare un servizio REST con Spring
  • Come distribuire un servizio con Spring Boot e Docker

Distribuzione dei servizi attraverso l’uso dei container: Docker – Concetti preliminari

  • Docker vs VM
  • Cos’è un container
  • Immagini Docker
  • Esempio di Dockerfile
  • Costruire un’immagine
  • Esecuzione di un container
  • Avviare e arrestare un container
  • Rimozione di un container e immagini

Distribuzione dei servizi attraverso l’uso dei container: Docker – Laboratorio

  • Installazione di Docker su sistema Linux
  • Avvio del primo container “Hello World”
  • Principali istruzioni contenute nel Dockerfile
  • Costruzione di un’immagine personalizzata
  • Avvio di un container MYSQL
  • Avvio di un container Java
  • Avvio di un container Nginx
  • Gestione dei volumi
  • Gestione della rete
  • Cenni a Kubernetes
PERCORSO CORE

Java Project Work

80 ore

COMPETENZE
  • Model & Business
  • DAO in memory, Unit testing e funzionale
  • DAO in database e logging
  • Business Logic
  • Webservices
  • Web User Interface
SPECIALIZZAZIONE

Microsoft .NET

40 ore

COMPETENZE
  • Exploring ASP.NET Core MVC
  • Designing ASP.NET Core MVC Web Applications
  • Configure Middlewares and Services in ASP.NET Core
  • Developing Controllers
  • Developing Views
  • Developing Models
  • Using Entity Framework Core in ASP.NET Core
  • Implementing Web APIs
SPECIALIZZAZIONE

Big Data Analysis

40 ore

COMPETENZE
  • Collect, Transform, analyze, and visualize data from the sensor and store them in SQL data bases
  • Conduct exploratory data analysis activities
  • Advanced Data Analysis and Machine Learning
  • Apply Machine Learning algorithms to extract insights from data
  • Present and communicate using data storytelling
  • Describe the evolution of data management technologies from SQL to NoSQL.
  • Architecture for Big Data and Data Engineering: working in a modern data center and of a distributed scalable Big Data platform (Apache Hadoop)
SPECIALIZZAZIONE

Software Security

40 ore

COMPETENZE
  • Brute Force Login: learn to develop a secure login, avoiding Brute Force attacks
  • CSRF – Cross Site Request Forgery – learn to avoid exposing features that can be exploited without the user’s knowledge
  • XSS – Stored Cross Site Scripting –  learn to avoid Javascript code injection into web applications
  • SQL Injection – learn to avoid SQL injection into web applications
  • Remote Command Injection – learn to avoid having system commands run remotely through a web application
  • Secure File Upload – learn to implement secure file upload on a web platform
SPECIALIZZAZIONE

Internet of Things

40 ore

COMPETENZE
  • Securely connect the prototype to the Internet
  • Understand the concepts, opportunities and challenges of digital transformation using IoT
  • Design and model IoT solutions
  • Design and prototype IoT solutions using electronics, microcontrollers and single board computers
  • Program the behavior of the IoT devices and to connect them to cloud services via APIs
  • Work as a team and apply the User-Centered Design Approach (“design thinking”) to develop, rapidly prototype, iteratively refine and pitch a business idea for an IoT solution
MODULO NON TECNICO

Career Ready

COMPETENZE
  • Flanking technical paths with a training course, based on the development of soft skills
  • Gaining awareness of the importance of possessing both technical skills and relational skills
  • Train the capacity for observation and reflection on personal and group dynamics

I corsi

Clicca sul corso e scopri di più.

Object Oriented Programming

PERCORSO CORE

Object-Oriented Programming

40 ore

COMPETENZE
  • Paradigmi di programmazione
  • Programmazione procedurale
  • Tipi primitivi
  • Cicli, strutture di controllo
  • Tipi riferimento, tipi wrapper
  • Array, Stringhe, Uguaglianza
  • Metodi e Overloading
  • Incapsulamento, mod. accesso
  • Eccezioni
  • Ricorsione
  • OOP: classi, enum, classi innestate
  • Pattern Singleton
  • Ereditarietà
  • Polimorfismo
  • Classi astratte
  • Design by contract
  • Interfacce
  • Generics
  • Collections
  • Mappe, comparator e comparable
  • Annotazioni e Reflection
  • Funzionale e Stream
  • Funzionale e Stream/Java11
  • IO/Serialization
  • Logging
  • Design Pattern

Spring

PERCORSO CORE

Spring

40 ore

COMPETENZE

Core

  • L’importanza del Container Spring
  • Concetto della Dependency Injection
  • Cos’è un Bean
  • Configurazioni attraverso l’uso delle annotazioni
  • Validazioni, Data Binding e Conversioni di tipo
  • SpEL – Spring Expression Language
  • I18N – Internazionalizzazione

Data Access

    • JDBC (DriverManager, Connection, Statements, ResultSet)
    • Pattern DAO
    • Uso delle transazioni
    • Uso delle annotazioni dedicate alla gestione delle eccezioni e delle transazioni
    • La tecnica ORM
    • JPA – Java Persistence API
    • Uso dei Repository

Spring MVC

  • Origini delle Servlet
  • I componenti JAVAEE – Servlet, Filter e Listener
  • Le pagine JSP e l’uso delle TagLibrary
  • Il Pattern MVC – Model, View, Controller
  • Sviluppo di un controller Spring con costruzione del risultato in formato HTML
  • Concetti dei web services RESTFul
  • Sviluppo di una REST API con costruzione del risultato in formato JSON

Spring Security

  • Configurazione del processo di autenticazione
  • Configurazione del processo di autorizzazione

Angular

SPECIALIZZAZIONE

Angular

40 ore

COMPETENZE
  • L’ambiente di front-end: Node e NPM
  • Typescript: installazione, sintassi
  • Struttura applicazione Angular e Angular CLI
  • Tag personalizzati: i componenti
  • Debug Angular con Chrome Dev Tool e Angular CLI
  • I template: ngFor, ngIf, ngClass, NgStyle
  • Two way data binding
  • Ciclo di vita di un componente
  • Servizi e dependency Injection in Angular
  • Routing in Angular

Progettazione, sviluppo e distribuzione Software per il Cloud

Specializzazione

Progettazione, sviluppo e distribuzione Software per il Cloud

40 ore

COMPETENZE

Progettazione e sviluppo di REST API attraverso l’uso di Spring

  • Applicazione Monolitica a confronto con l’Architettura a Microservizi
  • Introduzione a Spring, Dependency Injection e Spring Boot
  • Configurazioni principali nel file application.properties
  • Come sviluppare un servizio REST con Spring
  • Come distribuire un servizio con Spring Boot e Docker

Distribuzione dei servizi attraverso l’uso dei container: Docker – Concetti preliminari

  • Docker vs VM
  • Cos’è un container
  • Immagini Docker
  • Esempio di Dockerfile
  • Costruire un’immagine
  • Esecuzione di un container
  • Avviare e arrestare un container
  • Rimozione di un container e immagini

Distribuzione dei servizi attraverso l’uso dei container: Docker – Laboratorio

  • Installazione di Docker su sistema Linux
  • Avvio del primo container “Hello World”
  • Principali istruzioni contenute nel Dockerfile
  • Costruzione di un’immagine personalizzata
  • Avvio di un container MYSQL
  • Avvio di un container Java
  • Avvio di un container Nginx
  • Gestione dei volumi
  • Gestione della rete
  • Cenni a Kubernetes

Project Work

PERCORSO CORE

Java Project Work

80 ore

COMPETENZE
  • Model & Business
  • DAO in memory, Unit testing e funzionale
  • DAO in database e logging
  • Business Logic
  • Webservices
  • Web User Interface

Big Data Analysis

SPECIALIZZAZIONE

Big Data Analysis

40 ore

COMPETENZE
  • Collect, Transform, analyze, and visualize data from the sensor and store them in SQL data bases
  • Conduct exploratory data analysis activities
  • Advanced Data Analysis and Machine Learning
  • Apply Machine Learning algorithms to extract insights from data
  • Present and communicate using data storytelling
  • Describe the evolution of data management technologies from SQL to NoSQL.
  • Architecture for Big Data and Data Engineering: working in a modern data center and of a distributed scalable Big Data platform (Apache Hadoop)

Microsoft .NET

SPECIALIZZAZIONE

Microsoft .NET

40 ore

COMPETENZE
  • Exploring ASP.NET Core MVC
  • Designing ASP.NET Core MVC Web Applications
  • Configure Middlewares and Services in ASP.NET Core
  • Developing Controllers
  • Developing Views
  • Developing Models
  • Using Entity Framework Core in ASP.NET Core
  • Implementing Web APIs

Software Security

SPECIALIZZAZIONE

Software Security

40 ore

COMPETENZE
  • Brute Force Login: learn to develop a secure login, avoiding Brute Force attacks
  • CSRF – Cross Site Request Forgery – learn to avoid exposing features that can be exploited without the user’s knowledge
  • XSS – Stored Cross Site Scripting –  learn to avoid Javascript code injection into web applications
  • SQL Injection – learn to avoid SQL injection into web applications
  • Remote Command Injection – learn to avoid having system commands run remotely through a web application
  • Secure File Upload – learn to implement secure file upload on a web platform

Internet of Things

SPECIALIZZAZIONE

Internet of Things

40 ore

COMPETENZE
  • Securely connect the prototype to the Internet
  • Understand the concepts, opportunities and challenges of digital transformation using IoT
  • Design and model IoT solutions
  • Design and prototype IoT solutions using electronics, microcontrollers and single board computers
  • Program the behavior of the IoT devices and to connect them to cloud services via APIs
  • Work as a team and apply the User-Centered Design Approach (“design thinking”) to develop, rapidly prototype, iteratively refine and pitch a business idea for an IoT solution

Career Ready Module

MODULO NON TECNICO

Career Ready

COMPETENZE
  • Flanking technical paths with a training course, based on the development of soft skills
  • Gaining awareness of the importance of possessing both technical skills and relational skills
  • Train the capacity for observation and reflection on personal and group dynamics

Figure professionali

Il percorso apre all’inserimento aziendale con i diversi profili professionali in base all’ambito di specializzazione:

  • Cloud Developer  – Si occupa della progettazione, dello sviluppo e della distribuzione di soluzioni applicative in ambienti cloud, sviluppa secondo architetture a microservizi ed ha una conoscenza dell’infrastruttura e dell’ambiente cloud che ospita le applicazioni di cui segue lo svilppo. Oltre ad effettuare sviluppo nativo cloud, può prendere parte a processi di migrazione di applicativi da ambienti legacy ad ambienti cloud.
  • Software Engineer / Developer / Analyst – Si occupa dello sviluppo di applicazioni multilivello (n-tier)  a partire dalla progettazione fino ad arrivare al testing e al deploy; è in grado di lavorare in gruppo e di utilizzare framework e strumenti enterprise.
  • Back-end Developer – Sa interfacciarsi a sorgenti dati tramite oggetti DAO, implementare la business logic dell’applicazione, sviluppare componenti web service (REST e SOAP) e, ove necessario, implementare interfacce web in grado di sfruttarli, effettuare il testing dell’intera applicazione secondo la metodologia di Unit Testing
  • Front-end Developer – Sa progettare ed implementare i componenti Web utili all’interazione utente con l’uso delle tecnologie HTML, CSS, Javascript, sfruttando i più moderni Framework front end Javascript come Angular, React, Vue.js.
  • Full-Stack Developer – Sa orientarsi nell’analisi, progettazione e realizzazione dei vari componenti applicativi, sfruttando le conoscenze maturate sia nell’ambito front-end che back-end.
  • Big Data Specialist – Developer specializzato nell’implementazione e gestione di soluzioni IT per il mondo Big Data
  • IoT Specialist – Sviluppatore specializzato nella progettazione e gestione di soluzioni industriali per l’Internet of Things

> Struttura e Certificazioni

Il percorso si distingue da tutti gli altri percorsi formativi (percorsi universitari, ITS, IFTS) per la sua struttura altamente specializzante, Job-Driven, NON-modulare, ovvero guidata da un Project Work, che ne definisce, dal suo avvio, contenuti, strumenti, struttura e modalità.
Al termine del percorso il partecipante inoltre conseguirà la certificazione Oracle Certified Associate –  Java SE 8 Programmer.

In base a interessi e richieste delle aziende, integrano il percorso specializzazioni in ambito applicativo architetturale su temi quali IoT, Data Analysis, Cisco DevNet, principalmente in ambito Python application development & security, API, automation finalizzate alla preparazione delle nuove certificazioni Cisco DevNet.

Specializzazioni pratiche e certificazioni sono per le aziende e per le persone garanzia di competenze tecniche reali basate sulla conoscenza e l’uso aziendale dei principali linguaggi di programmazione.

> Requisiti

Possono accedere al corso neodiplomati provenienti da Istituti Tecnici Industriali o neolaureati di Università a indirizzo ‘Informatica e Telecomunicazioni’.

Sono requisiti d’ingresso la conoscenza di base dell’inglese tecnico, conoscenza di base di un linguaggio di programmazione ad oggetti tra C++, Java, Python, C#, forte attitudine.

Costituisce titolo preferenziale aver frequentato percorsi Cisco rivolti al mondo education e il possesso dei relativi certificati rilasciati dagli istituti di provenienza.

Le selezioni per diventare Junior Software Engineer prevedono test di informatica, di inglese, colloquio individuale, laboratorio pratico.

Junior IT Academy: Software Engineer JAVA Milano