Introduzione a Spring, Spring Boot (3 gg)
Struttura di Spring, IOC, Injection, Context
Spring MVC, Controllers, Validators,
Spring Data, Spring Security, CSRF protection, cenni OWASP/Security
Spring Rest Integration
Spring Boot in Production: Actuator, Monitoring.
Spring Reactor, Reactive Programming
TDD + Mockito
Architetture a Microservizi con Spring Boot, e Docker (3 gg)
Docker, Docker Compose
Spring Cloud: Microservices,
Maven build e docker build
Eureka, Config Server, Ribbon, Internal Load Balancing,
OAuth Server, Circuit Breaker, Spring Messaging (con Kafka)
Architetture Kubernetes e Cloud Native (3 gg)
Cloud Computing (con AWS, GCP, Azure o OCI) (3 gg)
Presentazione dei servizi di cloud computing
Compute
Networking
Storage
Infrastructure as Code: Terraform per creazione automatica di infrastrutture sul provider scelto
Servizi specifici del cloud provider scelto (e.g. Big Query in GCP…)
DevOps e GitOps (1 gg)
Maven
Jenkins Pipeline
GitLab pipelines
Sonarqube
Helm per Kubernetes
ArgoCD e GitOps per Kubernetes
API Management (con Kong) (2 gg)
Kong Core Technology
Using Kong Konnect Edition
Service Control Platform
Deployment Patterns – API Gateway Patterns
Deployment Patterns – Load Balancing
Improve Microservices with Health Checks and Circuit Breakers
Secure and Manage Serverless Functions with Kong
Service Mesh Architecture: Monoliths, Microservices, and Beyond
Install and Scale Kong on Kubernetes
Deploying Kong in Kubernetes, Monitoring Traces & Collecting Traffic Metrics
Kong & Datadog: Boost Performance Through Observability at Scale
API Design (2 gg)
REST Design Principles
OAS 3 / Swagger
RAML
API Portals
Application Network APIs Design Patterns: Reliability, Performance, Metrics
Kafka Sviluppo e Architetture (2 gg)
Introduzione a Kafka: Topic, Broker, Partizioni, Replication, Consumer Group, Cluster, Cluster Multipli. Delivery Semantics. Reslience. In sync replicas. Log Compaction.
Installazione di Kafka. Esercizi con CLI. Utilizzo di Docker.
Kafka Producer: invio di messaggi; serializzatori. Kafka Consumers: sottoscrizione a topic, commit e offset, deserializzatori.
Meccanismi interni di Kafka: elaborazione delle richieste, storage, configurazioni per alta affidabilità.
Esempio di architetture; Utilizzo di Connect, uso di connettori.
Kafka Streams ed elaborazioni in real time. Esempio di codice.
Integrazione di Messaggi Kafka in architetture Java e Java EE (Payara Connector).
Using Kafka in Microservices Architectures with Spring Boot, Spring Cloud and Spring Streams: esempio pratico di architettura a microservizi con kafka servicebus.
Monitoring e Operations di sistemi Kafka. Installazione di Prometheus, Grafana, Kafka Monitor, Kafka Utils.
Machine Learning con Python (4 gg)
Tutto il corso è dotato di Notebook Jupyter con esercizi.
Starting with data
Introduzione al Machine Learning, Tipologie di ML
Python: Le basi e gli esercizi
Pandas e Numpy: esercizi
Data Visualization in Python con Matplotlib Pyplot: esercizi
Imputation: filling missing data; Normalization
Feature engineering
Esempi con I modelli Titanic and MPG da Kaggle
Modelli e Previsioni
Basi sui modelli; Workflow generale; Supervised and Unsupervised Learning
Breve presentazione delle principali tecniche di Machine Learning
Problemi di Classificazione
Esempi di classificazione in python e scikit
Problemi di Regressione
Esempi di regressione in python
Valutazione del Modello e Ottimizzazione
Overfitting e ottimismo di modello
Tecniche di Cross-validation. K-fold evaluation. Grid Search dei Parametri. Matrici di confusione. ROC, AUC. Analisi dei modelli multivariata.
Elementi di valutazione nei modelli di classificazione
Elementi di valutazione nei modelli di regressione
Esempi di algoritmi Python per Cross Validation e Ottimizzazione. Uso di Scikit learn.
Reti Neurali
Percettrone, Reti Neurali Multi Strato
Deep Learning. Uso di Reti Neurali per Classificazione e Regressione.
Uso di KERAS Sequential API
Reinforcement Learning. Esercizi con Gym AI.