Professione sviluppatore di software / sviluppatrice di software

Gli sviluppatori di software realizzano o programmano tutti i tipi di sistemi software sulla base delle specifiche e dei progetti, utilizzando linguaggi di programmazione, strumenti e piattaforme.

Tipo di personalità

Test di Orientamento al Lavoro gratuito

Quali lavori ti piacciono? Seleziona un’occupazione adatta alle tue preferenze. Fai il test di orientamento al lavoro.

Al test

Conoscenze

  • Strumenti di debug TIC

    Gli strumenti informatici utilizzati per testare ed effettuare il debugging di programmi e del codice software, come GNU Debugger (GDB), Intel Debugger (IDB), Microsoft Visual Studio Debugger, Valgrind e WinDbg.

  • Processi di ingegneria

    L’approccio sistematico allo sviluppo e alla manutenzione dei sistemi di ingegneria.

  • Principi di ingegneria

    Gli elementi ingegneristici come la funzionalità, la riproducibilità e i costi relativi alla progettazione e il modo in cui sono applicati nel completamento dei progetti di ingegneria.

  • Disegni tecnici

    Software di disegno e vari simboli, prospettive, unità di misura, sistemi di notazione, stili visivi e layout di pagina utilizzati nei disegni tecnici.

  • Gestione di progetto

    Avere una conoscenza della gestione dei progetti e delle attività rientranti in tale ambito. Conoscere le variabili relative alla gestione dei progetti, quali tempo, risorse, requisiti, scadenze e risposta a eventi imprevisti.

  • Ambiente software di sviluppo integrato

    Il pacchetto di strumenti di sviluppo software per la scrittura di programmi, quali il compilatore, il programma di correzione errori, l’editor del codice e le evidenziazioni del codice, riuniti in un’interfaccia utente unificata, come Visual Studio o Eclipse.

  • Programmazione informatica

    Le tecniche e i principi dello sviluppo di software, quali analisi, algoritmi, codifica, collaudo e compilazione di paradigmi di programmazione (ad esempio programmazione orientata all’oggetto, programmazione funzionale) e dei linguaggi di programmazione.

  • Strumenti per la gestione della configurazione software

    I programmi software per l’identificazione, il controllo, la registrazione dello stato e l’audit della configurazione, come CVS, ClearCase, Subversion, GIT e TortoiseSVN.

Competenze

  • Utilizzare strumenti di computer-aided software engineering

    Utilizzare strumenti software (CASE) per sostenere il ciclo di vita dello sviluppo, la progettazione e l’implementazione di software e applicazioni di elevata qualità e di facile manutenzione.

  • Definire i requisiti tecnici

    Specificare le caratteristiche tecniche dei beni, dei materiali, dei metodi, dei processi, dei servizi, dei sistemi, del software e delle funzionalità, individuando e rispondendo alle esigenze specifiche che devono essere soddisfatte in funzione delle esigenze dei clienti.

  • Interpretare i requisiti tecnici

    Analizzare, comprendere e applicare le informazioni fornite in relazione alle condizioni tecniche.

  • Gestire un progetto di ingegneria

    Gestire le risorse dei progetti di ingegneria, il bilancio, i termini e le risorse umane, e pianificare il programma e le attività tecniche pertinenti al progetto.

  • Analizzare le specifiche del software

    Valutare le specifiche di un prodotto o sistema software da sviluppare individuando i requisiti funzionali e non funzionali, i vincoli e le possibili serie di casi d’utilizzo che illustrano le interazioni tra il software e i suoi utenti.

  • Sviluppare prototipi software

    Creare una prima versione incompleta o preliminare di un software applicativo per simulare alcuni aspetti specifici del prodotto finale.

  • Fare ricerca scientifica

    Acquisire, correggere o migliorare le conoscenze sui fenomeni mediante metodi e tecniche scientifici, sulla base di osservazioni empiriche o misurabili.

  • Utilizzare software per il disegno tecnico

    Creare progetti tecnici e disegni tecnici utilizzando software specializzati.

  • Fornire documentazione tecnica

    Preparare la documentazione per prodotti o servizi esistenti e futuri, descrivendo la loro funzionalità e composizione in modo tale da essere comprensibile per un vasto pubblico tecnicamente non esperto e conforme ai requisiti e agli standard definiti. Mantenere la documentazione aggiornata.

  • Individuare le necessità dei clienti

    Applicare tecniche e strumenti, come indagini, questionari, applicazioni TIC, per acquisire, definire, analizzare, documentare e mantenere i requisiti degli utenti derivanti dal sistema, servizio o prodotto.

  • Utilizzare schemi di progettazione software

    Utilizzare soluzioni riutilizzabili, le migliori pratiche formalizzare , per risolvere compiti comuni di sviluppo delle TIC nello sviluppo e nella progettazione dei software.

  • Eseguire il debug di un software

    Riparare il codice informatico analizzando i risultati dei test e localizzando i difetti che causano risultati errati o inaspettati prodotti dal software ed eliminare tali errori.

  • Creare diagrammi di flusso

    Comporre un diagramma che illustra i progressi sistematici attraverso una procedura o un sistema utilizzando linee di collegamento e un insieme di simboli.

  • Sviluppare metodi di migrazione automatica dei dati

    Creare un trasferimento automatico di informazioni TIC tra tipi di archiviazione, formati e sistemi per risparmiare le risorse umane dall’esecuzione della mansione manualmente.

  • Usare librerie software

    Utilizzare le raccolte di codici e pacchetti software che presentano le procedure utilizzate di frequente per contribuire a semplificare il lavoro dei programmatori.

Source: Sisyphus ODB