Programma
Modulo 1: Introduzione alla figura del Sistemista Applicativo
1.1 Definizione e ruolo del sistemista applicativo: panoramica delle mansioni e delle responsabilità.
1.2 Differenze tra sistemista applicativo e altri ruoli IT: confronto con sviluppatori, sistemisti di rete e amministratori di sistema.
1.3 Contesto lavorativo: settori e aziende in cui operano i sistemisti applicativi Modulo 2: Sistemi Operativi e Ambiente Server
2.1 Principali sistemi operativi per server: Windows Server, Linux, Unix.
2.2 Differenze tra ambienti operativi: vantaggi e limitazioni di ogni sistema.
2.3 Gestione di utenti e permessi: creazione, gestione e sicurezza degli account utente Modulo 3: Architettura di un Sistema Informatico
3.1 Composizione di un'infrastruttura IT: server, client, storage, reti.
3.2 Architettura fisica e logica di un sistema: differenze e interconnessioni.
3.3 Virtualizzazione: introduzione ai concetti di hypervisor, macchine virtuali e container Modulo 4: Installazione e Configurazione di Applicazioni
4.1 Tipologie di applicazioni: applicazioni web, enterprise, database.
4.2 Procedure di installazione su diversi sistemi: script automatici, package manager.
4.3 Configurazione delle applicazioni: file di configurazione, parametri, ambiente runtime Modulo 5: Gestione delle Dipendenze Software
5.1 Tipologie di dipendenze: librerie, framework, componenti esterni.
5.2 Gestione di pacchetti e repository: strumenti come APT, YUM, NuGet, Maven.
5.3 Risoluzione dei conflitti tra versioni: utilizzo di ambienti virtuali e container Modulo 6: Monitoring e Performance delle Applicazioni
6.1 Strumenti di monitoraggio: Zabbix, Nagios, Prometheus, Grafana.
6.2 Analisi delle performance: CPU, RAM, I/O, rete.
6.3 Ottimizzazione delle risorse: tuning dei parametri applicativi e di sistema Modulo 7: Sicurezza Applicativa
7.1 Principi di sicurezza informatica: autenticazione, autorizzazione, cifratura.
7.2 Gestione delle vulnerabilità: patch management, vulnerability scanning.
7.3 Protezione dei dati sensibili: backup, crittografia, compliance con GDPR e altre normative Modulo 8: Backup e Disaster Recovery
8.1 Strategie di backup: backup completo, incrementale, differenziale.
8.2 Pianificazione del Disaster Recovery: RTO (Recovery Time Objective) e RPO (Recovery Point Objective).
8.3 Strumenti di backup: Veeam, Acronis, Bacula Modulo 9: Database e loro Amministrazione
9.1 Tipologie di database: relazionali (SQL) e non relazionali (NoSQL).
9.2 Installazione e configurazione di un database: MySQL, PostgreSQL, MongoDB.
9.3 Manutenzione e tuning dei database: backup, ripristino e ottimizzazione delle query Modulo 10: Gestione delle Patch e degli Aggiornamenti
10.1 Tipologie di aggiornamenti software: patch di sicurezza, aggiornamenti funzionali.
10.2 Best practices per l'aggiornamento: testing in ambienti di staging, rollback.
10.3 Automazione degli aggiornamenti: strumenti come WSUS, Ansible, Puppet Modulo 11: Reti e Protocollo TCP/IP
11.1 Fondamenti di reti: modelli OSI e TCP/IP.
11.2 Protocolli di rete e loro funzionamento: HTTP, HTTPS, FTP, DNS.
11.3 Troubleshooting di rete: analisi di log, traceroute, ping, netstat Modulo 12: Load Balancing e Scalabilità
12.1 Load balancer: tipi e configurazioni (round-robin, least connections).
12.2 Scalabilità verticale e orizzontale: differenze e applicazioni.
12.3 Strumenti di load balancing: NGINX, HAProxy, AWS ELB Modulo 13: Cloud Computing e Ambienti Ibridi
13.1 Introduzione al cloud computing: IaaS, PaaS, SaaS.
13.2 Gestione delle applicazioni nel cloud: AWS, Azure, Google Cloud.
13.3 Ambienti ibridi e multicloud: integrazione tra on-premises e cloud Modulo 14: Automazione e DevOps
14.1 Introduzione ai principi DevOps: collaborazione tra sviluppo e operazioni.
14.2 Strumenti di automazione: Ansible, Chef, Puppet, Jenkins.
14.3 Continuous Integration e Continuous Delivery (CI/CD): pipeline di automazione Modulo 15: Contenitori e Docker
15.1 Concetti base dei container: vantaggi rispetto alle macchine virtuali.
15.2 Installazione e gestione di Docker: container, immagini, volumi.
15.3 Orchestrazione dei container: Kubernetes e Docker Swarm Modulo 16: Logging e Gestione dei Log
16.1 Importanza del logging: monitoraggio e troubleshooting.
16.2 Strumenti per la gestione dei log: ELK Stack (Elasticsearch, Logstash, Kibana), Splunk.
16.3 Best practices per la gestione dei log: rotazione, archiviazione e analisi Modulo 17: API e Integrazioni
17.1 Introduzione alle API: REST, SOAP, GraphQL.
17.2 Gestione delle API nelle applicazioni: autenticazione, autorizzazione, throttling.
17.3 Strumenti per la gestione delle API: Postman, Swagger, API Gateway Modulo 18: Troubleshooting e Risoluzione dei Problemi
18.1 Metodologia di troubleshooting: identificazione, diagnosi e risoluzione.
18.2 Strumenti di diagnostica: Wireshark, tcpdump, system logs.
18.3 Gestione delle escalation: quando coinvolgere altri team Modulo 19: Gestione dei Certificati e della Crittografia
19.1 Certificati digitali: tipi e funzionamento (SSL/TLS).
19.2 Implementazione della crittografia: crittografia simmetrica e asimmetrica.
19.3 Strumenti per la gestione dei certificati: OpenSSL, Let's Encrypt Modulo 20: Compliance e Normative IT
20.1 Principali normative di sicurezza IT: GDPR, ISO 27001, PCI-DSS.
20.2 Documentazione e audit: come prepararsi a verifiche di conformità.
20.3 Strumenti per la compliance: monitoraggio e reporting