Corso
Amazon Web Services (AWS) è attualmente il principale provider di servizi cloud, con il 31% della quota di mercato globale. Questo significa che ottenere una certificazione AWS è fondamentale per accedere a molti ruoli tech, come data engineer o cloud architect.
Tuttavia, la sola teoria non basta: progetti pratici sono essenziali per capire davvero e sfruttare efficacemente le funzionalità di AWS.
Questo articolo ti guida attraverso una serie di progetti AWS pensati per tutti i livelli di competenza. Nell’ultima sezione, esploriamo anche alcuni progetti DevOps incentrati su microservizi, monitoraggio e infrastruttura come codice.
Ricorda sempre di chiudere o terminare le risorse che usi per un progetto una volta finito. Non lasciare servizi AWS attivi per più di qualche ora per evitare costi imprevisti.
|
Principiante |
Intermedio |
Avanzato |
DevOps |
|
1. Hosting di un sito statico su Amazon S3 |
4. Creazione di un sistema serverless per l’elaborazione di immagini |
6. Distribuzione di una soluzione completa di rilevamento frodi con Machine Learning usando Amazon Sagemaker |
11. Sviluppo di un’app full-stack con ECS, Terraform e CodePipeline |
|
2. Distribuzione di una semplice applicazione web Python con AWS Elastic Beanstalk |
5. Creazione di un chatbot con AWS Lex |
7. Sviluppo di un sistema di raccomandazione usando dati MXNET su Amazon Sagemaker |
12. Creazione di un sistema automatico di report degli allarmi CloudWatch |
|
3. Distribuzione di database SQL Server su Amazon RDS |
8. Creazione di un sistema di classificazione delle immagini con Amazon Sagemaker |
13. Creazione di un’applicazione web containerizzata con Amazon ECS e AWS Fargate |
|
|
9. Sviluppo di un RAG multimodale usando foundation model e AWS |
|||
|
10. Creazione di un assistente LLM agentico su AWS |
Progetti AWS per principianti
Se sei relativamente nuovo su AWS, questi progetti ti aiutano a esplorare le funzionalità di base e a familiarizzare con le best practice e altro ancora.
Per iniziare con AWS: ruoli IAM e S3
Come principiante AWS, il modo migliore per iniziare è familiarizzare con l’ecosistema e i servizi AWS. Il nostro corso di introduzione ad AWS ti accompagna attraverso le basi e alcuni concetti avanzati.
I due servizi più usati con cui ogni principiante dovrebbe sentirsi a proprio agio sono IAM e S3.
AWS Identity and Access Management (IAM)
Il servizio IAM è incluso in ogni account AWS. Tramite IAM puoi aggiungere nuovi utenti e controllare il loro accesso ai servizi e alle risorse AWS.
Dovrai capire come usare IAM e seguire le best practice di sicurezza. Queste competenze sono cruciali per i progetti AWS menzionati in questo articolo.

Fonte: AWS
AWS Simple Storage Service (S3)
AWS S3 è probabilmente uno dei servizi AWS più popolari e utilizzati. Offre una soluzione di archiviazione dati estremamente conveniente e semplicissima da configurare. Amazon offre anche Elastic File System (EFS) come soluzione di archiviazione alternativa.
Il nostro tutorial sull’archiviazione in AWS esplora le diverse funzionalità e i vantaggi di S3 ed EFS.
Molti dei progetti elencati in questo articolo sfrutteranno S3 come soluzione di archiviazione in qualche modo, e probabilmente lo userai spesso nella tua carriera. Ripassa che cos’è Amazon S3 e dai un’occhiata al capitolo sui servizi di archiviazione AWS del nostro corso Introduction to AWS.
1. Hosting di un sito statico su Amazon S3
Per iniziare con i progetti di questo articolo, partiamo dall’hosting di un semplice sito statico. Ti consigliamo di creare il tuo sito statico non solo per imparare a usare alcuni servizi AWS, ma anche come ottimo modo per iniziare a pubblicare i tuoi progetti, mostrando le tue competenze AWS in un portfolio da inviare ai futuri datori di lavoro.
La documentazione AWS contiene un tutorial molto semplice per configurare un sito statico usando un dominio registrato con Route 53.
Servizi AWS usati in questo progetto:
- Amazon Route 53 per registrare un dominio.
- Amazon S3 per archiviare i contenuti del tuo sito.
- CloudFront per velocizzare il tuo sito statico.
- Lambda@Edge (una funzionalità di CloudFront) per la sicurezza.
2. Distribuzione di una semplice applicazione web Python con AWS Elastic Beanstalk

Fonte: AWS
Uno dei modi migliori per imparare il funzionamento di base di AWS Elastic Beanstalk è distribuire un’applicazione web Python con Flask o Django.
AWS Elastic Beanstalk è un ottimo servizio per distribuire web app perché ti permette di concentrarti sul codice dell’applicazione invece di preoccuparti della gestione dell’infrastruttura.
Tuttavia, devi comunque imparare alcuni concetti chiave per configurare correttamente la tua web app, come variabili d’ambiente, bilanciamento del carico e auto scaling. Questa esperienza pratica è una buona introduzione ad alcuni concetti e pratiche chiave di DevOps.
3. Distribuzione di database SQL Server su Amazon RDS
Il workshop Amazon RDS per SQL Server offre una guida passo-passo ad Amazon RDS. Creerai un’istanza DB e imparerai concetti importanti relativi a backup, sicurezza, scalabilità, ottimizzazione e monitoraggio della tua istanza DB.
Progetti AWS intermedi
Questi progetti insegnano ai principianti come sfruttare i servizi cloud per soluzioni scalabili ed efficienti, offrendo al contempo esperienza pratica nella gestione di casi d’uso reali come l’elaborazione di immagini e i chatbot interattivi.
4. Creazione di un sistema serverless per l’elaborazione di immagini
Questo progetto ti guida nella creazione di un workflow serverless per l’elaborazione di immagini utilizzando AWS Step Functions, AWS Lambda, Amazon DynamoDB e Amazon SNS.
Sfruttando AWS Step Functions per orchestrare più servizi, imparerai a orchestrare e automatizzare workflow complessi, una competenza cruciale per soluzioni moderne basate sul cloud.
Servizi AWS usati in questo progetto:
- Amazon Rekognition per identificare se è presente un volto in un’immagine caricata.
- AWS CloudFormation per un template che configura rapidamente le risorse necessarie al progetto
- AWS Step Functions per orchestrare il workflow.
- AWS Lambda per invocare Rekognition.
- Amazon DynamoDB per archiviare i metadati delle immagini.
- Amazon Simple Notification Service (SNS).
- Amazon EventBridge per attivare l’esecuzione della state machine quando viene caricata una nuova immagine.

Fonte: AWS
5. Creazione di un chatbot con AWS Lex
I chatbot sono un tema caldo al momento, e AWS Lex rende incredibilmente semplice configurarne uno con interfaccia web che puoi integrare nel tuo sito personale o aziendale.

Fonte: AWS
AWS offre un progetto di esempio per l’interfaccia di Amazon Lex che ti darà esperienza pratica nella configurazione e nell’uso di un chatbot. L’utilizzo di un template Amazon CloudFormation velocizza ulteriormente il processo con tutte le risorse necessarie per creare e configurare automaticamente l’interfaccia del chatbot.
Servizi AWS usati in questo progetto:
- Pool di identità Amazon Cognito per creare credenziali usate per autenticare le chiamate API Lex dal browser.
- AWS Lex per il chatbot.
- Amazon CloudFormation per il template.
Progetti AWS avanzati
In questa sezione presentiamo progetti basati su machine learning e AI che usano un’ampia gamma di servizi AWS.
Questi progetti introducono tecnologie e competenze avanzate, permettendoti di creare soluzioni d’impatto e all’avanguardia che migliorano le esperienze utente e i processi aziendali.
Progetti di machine learning con AWS
Amazon Sagemaker è un servizio completamente gestito, versatile e scalabile per creare, addestrare e distribuire modelli di machine learning su AWS. È il nostro strumento di riferimento per i progetti AWS avanzati che coinvolgono il machine learning.
Dai un’occhiata a questo tutorial introduttivo su Sagemaker per una panoramica completa del servizio.
6. Distribuzione di una soluzione completa di rilevamento frodi con Machine Learning usando Amazon Sagemaker
Il primo progetto di questa sezione è una soluzione end-to-end di rilevamento frodi con machine learning creata da AWS.
Questo progetto ti guiderà attraverso preparazione dei dati, training del modello e distribuzione. Otterrai una visione dell’intero processo di machine learning e, alla fine, avrai un sistema di rilevamento frodi pienamente funzionante.

Fonte: AWS
Sono necessarie competenze di base in Python per seguire efficacemente il progetto. Tuttavia, il codice è ben spiegato, quindi dovresti riuscire a tenere il passo anche se stai ancora imparando Python.
7. Creazione di un sistema di raccomandazione in Amazon Sagemaker
Con questo progetto allenerai e distribuirai un sistema di raccomandazione usando dati di valutazioni clienti su Amazon Sagemaker.
Questo progetto introduce i concetti fondamentali alla base dei sistemi di raccomandazione. Farai esperienza pratica con concetti di deep learning e con SageMaker per il training e la distribuzione scalabili dei modelli.
I sistemi di raccomandazione sono ampiamente usati nell’e-commerce, nello streaming di contenuti e in altri settori, rendendo questo progetto altamente rilevante e calando le competenze apprese in un contesto reale.
8. Creazione di una pipeline di classificazione immagini con Amazon Sagemaker e dati MXNet
In questo progetto costruirai una pipeline di classificazione delle immagini con Amazon Sagemaker.
Questo progetto ti introdurrà alla classificazione delle immagini, un compito fondamentale nella computer vision. Tuttavia, utilizzando Amazon Sagemaker per il lavoro pesante, puoi concentrarti sulla comprensione del workflow e dei concetti chiave senza dover creare modelli personalizzati.
Progetti di AI con AWS
La seconda parte dei progetti avanzati è incentrata su soluzioni basate sull’AI. Generative AI, large language model e ChatGPT stanno dominando il mercato dell’AI in questo momento, rendendolo un buon periodo per affinare le tue competenze di AI.
Quando affronti questi progetti, tieni a mente questa prospettiva di settore che abbiamo approfondito nel podcast DataFramed:
C’è sicuramente una scommessa che tutti i grandi player stanno facendo. Stanno costruendo più capacità di calcolo e quindi l’anno prossimo scaleranno tramite più compute. E poi la domanda è: OK, ci sono più dati? Ed è qui che diventa più sfumato. E penso che sia uno spettro. Non è bianco o nero.
Jonathan Cornelissen, Co-founder & CEO of DataCamp,
Amazon Bedrock è un servizio completamente gestito e serverless che ti permette di sperimentare e distribuire soluzioni di generative AI in modo semplice e sicuro.
Dai un’occhiata a questo workshop su Amazon Bedrock per un’introduzione a Bedrock e a come funziona.
9. Sviluppo di un RAG multimodale usando foundation model e AWS
In questo primo progetto, costruirai un RAG multimodale usando foundation model ospitati su Amazon Bedrock e Amazon Sagemaker.
L’obiettivo è estrarre informazioni contestualmente rilevanti da tabelle, grafici e testo in presentazioni (come Microsoft PowerPoint, per esempio). È qui che un RAG multimodale è particolarmente utile—quando hai dati in formati diversi (come immagini o testo) e devi ricavarne insight.
Lavorando con foundation model su Amazon Bedrock e SageMaker, puoi fare esperienza pratica con strumenti di AI all’avanguardia. Saper sfruttare l’AI per eseguire estrazione e analisi complesse dei dati è una competenza molto preziosa in vari settori e applicazioni.
10. Creazione di un assistente LLM agentico su AWS
In questo progetto, costruirai un assistente LLM agentico su AWS usando Bedrock, Lambda, Cognito, Aurora e S3.
È un progetto approfondito che offre esposizione pratica a un’architettura a tre livelli completa. Dimostra in modo realistico come una soluzione basata su AI viene sviluppata e distribuita su una piattaforma cloud.
Questo progetto copre anche aspetti critici come l’autenticazione degli utenti con Cognito e la gestione dei dati con Aurora e S3, fornendo una comprensione a tutto tondo di uno sviluppo applicativo sicuro ed efficiente.

Fonte: AWS
Progetti AWS DevOps
DevOps comprende cinque aree principali o best practice:
- Continuous integration e continuous delivery
- Microservizi
- Infrastruttura come codice
- Monitoraggio e logging
- Comunicazione e collaborazione
AWS offre servizi che coprono tutte queste aree, rendendolo una buona scelta da imparare e padroneggiare se vuoi costruire una carriera in DevOps. In questa sezione, presentiamo progetti che affrontano tre delle aree sopra elencate utilizzando servizi AWS.
11. Sviluppo di un’app full-stack con ECS, Terraform e CodePipeline
Questo progetto dimostra come usare i servizi AWS per creare una architettura solida per distribuire un’applicazione full-stack.
Evidenzia i vantaggi dell’uso di servizi container gestiti e dell’Infrastructure as Code (IaC) per una distribuzione applicativa efficiente e affidabile.
Acquisirai esperienza pratica con servizi AWS chiave come ECS per la gestione dei container, Terraform per l’Infrastructure as Code e CodePipeline per CI/CD, dotandoti di competenze cloud essenziali.
Integrando pipeline di continuous integration e continuous deployment (CI/CD), questo progetto ti introduce anche alle pratiche moderne di DevOps. Imparerai a distribuire applicazioni in modo più affidabile ed efficiente. Queste competenze sono cruciali per mantenere un flusso di lavoro fluido e automatizzato in ambienti di produzione.

Fonte: AWS
12. Creazione di un sistema automatico di report degli allarmi CloudWatch
Questo progetto ti guida nella creazione di un sistema automatico di report degli allarmi CloudWatch che genera report giornalieri degli allarmi Amazon CloudWatch attivati in una regione AWS specificata. Il report, creato da una funzione AWS Lambda attivata da Amazon EventBridge, viene salvato come file CSV in un bucket S3 e inviato via email tramite Amazon SES.
Questo progetto ti introduce all’automazione di attività usando servizi AWS come Lambda, EventBridge e SES. Mostra come snellire i processi di monitoraggio e reporting, un aspetto importante del DevOps.
Dimostra inoltre come integrare più servizi AWS (Lambda, S3, SES) per creare una soluzione coerente, insegnandoti l’importanza dell’orchestrazione dei servizi negli ambienti cloud.
Fonte: AWS
13. Creazione di un’applicazione web containerizzata con Amazon ECS e AWS Fargate
Questo progetto prevede la creazione e distribuzione di un’applicazione web containerizzata utilizzando Amazon ECS e Fargate. L’applicazione mostra immagini casuali di gatti o cani in base alla selezione dell’utente.
Farai esperienza pratica con la containerizzazione tramite Docker e l’orchestrazione con Amazon ECS e Fargate.
AWS Fargate è uno strumento DevOps essenziale per eseguire e gestire container senza dover effettuare il provisioning, la configurazione o la scalabilità di cluster di macchine virtuali.
Il progetto copre anche il load testing, insegnandoti a valutare e garantire la scalabilità e l’affidabilità delle tue applicazioni web in condizioni di traffico diverse.

Fonte: AWS
Conclusione
Questo articolo presenta una serie di progetti AWS pensati per migliorare le competenze a tutti i livelli. Sottolinea l’importanza dei progetti pratici per acquisire esperienza concreta e padronanza dei servizi AWS, essenziale per vari ruoli tech.
Che tu voglia intraprendere una carriera nel cloud o semplicemente migliorare le tue competenze AWS, i progetti descritti in questo articolo offrono opportunità di apprendimento preziose.
Per costruire una solida carriera in AWS, inizia iscrivendoti al nostro corso Introduction to AWS e poi punta a ottenere la certificazione. Per dare un’occhiata alle prospettive di carriera e stipendi per un ruolo di AWS cloud practitioner, leggi la nostra guida dettagliata!
FAQ sui progetti AWS
Quali sono alcuni progetti AWS adatti ai principianti da cui iniziare?
Progetti AWS adatti ai principianti includono l’hosting di un sito statico su Amazon S3, la distribuzione di una semplice applicazione web con AWS Elastic Beanstalk e la configurazione di una API serverless di base usando AWS Lambda e API Gateway. Questi progetti forniscono conoscenze fondamentali sui servizi AWS e sulle loro applicazioni pratiche.
Qual è il costo di esecuzione dei tipici progetti AWS?
Il costo di esecuzione dei tipici progetti AWS varia in base ai servizi utilizzati, alla scala del progetto e ai modelli di utilizzo. AWS offre un Free Tier con accesso limitato a molti servizi, consentendo ai principianti di fare esperimenti con costi minimi, ma è fondamentale monitorare l’utilizzo per evitare addebiti imprevisti.
Come faccio a distribuire un’applicazione web su AWS?
Per distribuire un’applicazione web su AWS, puoi usare servizi come AWS Elastic Beanstalk per distribuzioni semplici e scalabili oppure Amazon ECS per applicazioni containerizzate. Il processo in genere prevede la preparazione dell’applicazione, la creazione di un ambiente nel servizio scelto e la distribuzione del codice.
Come automatizzo distribuzioni e workflow su AWS?
Puoi automatizzare distribuzioni e workflow su AWS usando servizi come AWS CodePipeline per CI/CD, AWS CloudFormation per l’infrastruttura come codice e AWS Step Functions per orchestrare workflow complessi. Questi strumenti aiutano a semplificare i processi e ridurre gli interventi manuali.
Quali strumenti e servizi devo conoscere per un progetto AWS DevOps?
Per un progetto AWS DevOps, dovresti conoscere AWS CodePipeline per CI/CD, AWS CodeBuild per il build e il testing del codice, AWS CodeDeploy per le distribuzioni automatiche e AWS CloudFormation per la gestione dell’infrastruttura. Inoltre, è essenziale conoscere AWS CloudWatch per monitoraggio e logging.


