Software Engineer Intern

3 giorni fa

Milano, Lombardia, Italia PricewaterhouseCoopers (PwC) Tempo pieno 8.100 € - 9.700 €/anno

Line of Service
Advisory

Industry/Sector
Not Applicable

Specialism
Product Innovation

Management Level
Intern/Trainee

Job Description & Summary
Entrando nel nostro team di Software Engineering avrai l'opportunità di contribuire alla progettazione e allo sviluppo di applicazioni e piattaforme software per l'automazione e la digitalizzazione di processi aziendali complessi.

Realizziamo applicazioni web, servizi backend, API e soluzioni cloud-native, lavorando su architetture moderne e distribuite. Il nostro stack tecnologico comprende principalmente TypeScript, Angular, Node.js, Java, Docker, Kubernetes e servizi Cloud su GCP e Azure.

L'Intelligenza Artificiale rappresenta una componente sempre più presente nelle soluzioni che sviluppiamo. Non cerchiamo una specializzazione specifica in ambito AI, ma consideriamo positivamente una conoscenza di base dei principali concetti e paradigmi, quali Large Language Models (LLM), RAG e AI Agents.
Cerchiamo persone interessate a costruire solide competenze di Software Engineering, confrontandosi con progetti concreti, tecnologie moderne e professionisti con esperienza

Chi stiamo cercando

Cerchiamo unə Software Engineer Intern all'inizio del proprio percorso professionale, con buone basi tecniche, curiosità e una forte propensione all'apprendimento.

Non ci aspettiamo una conoscenza approfondita di tutte le tecnologie, metodologie e architetture utilizzate in contesti enterprise. Lo stage rappresenterà un'opportunità per acquisire e consolidare queste competenze attraverso l'esperienza sul campo e il confronto con il team.

Riteniamo invece importante che tu abbia già acquisito buone basi di programmazione e abbia avuto modo di applicarle, attraverso il percorso universitario, progetti personali o altre esperienze formative.

Il linguaggio di programmazione utilizzato fino a oggi non rappresenta per noi l'elemento principale: Java, TypeScript, Python, C#, C++ o altri linguaggi possono costituire una buona base di partenza.

Ci interessa soprattutto la tua capacità di comprendere un problema, analizzarlo e tradurlo in una soluzione software, insieme alla curiosità necessaria per approfondire tecnologie e concetti nuovi.

Le competenze che cerchiamo

Non cerchiamo la conoscenza di una lunga lista di tecnologie specifiche. Per noi sono più importanti solide basi informatiche e la capacità di applicarle nella risoluzione di problemi concreti.

Costituiscono una buona base di partenza:

  • conoscenza dei principi fondamentali della programmazione e degli algoritmi;
  • conoscenza delle principali strutture dati;
  • familiarità con la programmazione object-oriented e/o altri paradigmi di programmazione;
  • conoscenza dei concetti fondamentali di HTTP e delle applicazioni web;
  • conoscenza di base dei database relazionali e SQL;
  • familiarità con Git;
  • conoscenza dei concetti fondamentali di sistemi operativi e networking.

Costituisce inoltre un valore aggiunto aver già avuto modo di approfondire, anche a livello accademico o attraverso progetti personali, alcuni dei seguenti temi:

Clean Code, principi SOLID, Design Patterns, testing, Software Architecture, REST API, microservizi, Docker e CI/CD.

Non è richiesta una conoscenza approfondita di tutti questi argomenti: cerchiamo soprattutto curiosità tecnica, capacità di apprendimento, approccio collaborativo e disponibilità a mettersi in gioco.

#

Cosa farai

Entrando nel team lavorerai a fianco di Software Engineer e Software Architect, partecipando progressivamente alle diverse fasi del ciclo di vita dello sviluppo software.

Avrai l'opportunità di:

  • sviluppare componenti frontend e backend;
  • contribuire alla progettazione e implementazione di API e servizi applicativi;
  • lavorare con database e sistemi di persistenza;
  • utilizzare Git e workflow di sviluppo collaborativo;
  • acquisire esperienza con Docker, Kubernetes e piattaforme Cloud;
  • confrontarti con architetture distribuite e a microservizi;
  • sviluppare test e approfondire pratiche orientate alla qualità, manutenibilità e affidabilità del software;
  • partecipare a code review e momenti di confronto tecnico e architetturale;
  • acquisire metodologie e strumenti per il troubleshooting e la diagnosi di problematiche applicative;
  • comprendere e applicare progressivamente pratiche di CI/CD e DevOps.

Sarai affiancatə da professionisti con esperienza, con l'obiettivo di acquisire progressivamente maggiore autonomia e responsabilità nelle attività di sviluppo.

Cosa trovera i

Entrerai in un ambiente in cui potrai confrontarti quotidianamente con problemi tecnici concreti e approfondire progressivamente tecnologie, metodologie e principi di Softwa