Scrivi help per vedere i comandi disponibili
Mi chiamo Francesco Licchelli, sono un software developer con esperienza di sviluppo di backend nel settore bancario.Ho una passione per la creazione di soluzioni software performanti ed eleganti: cerco sempre di migliorarmi. Mi sono laureato nel marzo del 2025 in Informatica presso l'Università di Bologna dove ho ampliato le mie competenze spaziando dall'aspetto organizzativo e gestionale alla realizzazione di sistemi operativi, backend enterprise ed in generale sviluppo full-stack. L'ampia conoscenza nella parte teorica dell'Informatica ottenuta durante gli studi mi ha dato la capacità di affrontare problemi complessi con un approccio pragmatico.
I miei linguaggi di programmazione preferiti sono C, Java e Python. L'unico sistema operativo presente sui miei sistemi da diversi anni è GNU/Linux, di cui apprezzo particolarmente la filosofia, velocità in utilizzo e personalizzabilità.
Mi occupo dello sviluppo di due progetti nel settore bancario, gestendo ~8 microservizi in Java Spring Boot, utilizzando MongoDB per la persistenza dei dati. Nelle mie mansioni rientra lo sviluppo di nuove evolutive, per le quali mi baso sulle specifiche funzionali che, a seguito di una valutazione degli impatti delle modifiche sui servizi esistenti e che consistono nell'implementazione di nuovi endpoint REST e logiche di business seguendo i principi SOLID ed alcuni design pattern, tra cui: builder, abstract factory ed i singleton. Una volta terminato lo sviluppo mi occupo della definizione degli unit test JUnit, Mockito per poi affrontare la code review tramite BitBucket. Una volta approvata, porto la modifica in ambiente di testing tramite pipeline Jenkins. Un altro compito che svolgo è la manutenzione del software, che svolgo anche completamente da solo nel progetto minore, gestendo l'intero ciclo di sviluppo in modo indipendente. Occasionalmente ho interazioni dirette con il cliente per chiarimenti sulle specifiche e aggiornamenti sullo stato degli sviluppi in corso. Per quanto riguarda le attività di AM utilizzo ServiceNow per la gestione ed il tracking degli incident occorsi in ambiente di produzione e Splunk per l'analisi dei log.
Ho sviluppato due tool per l'OS fingerprinting & analysis in Python. Essi implementano rispettamente due approcci per determinare il sistema operativo del target: attivo e passivo. Per la tecnica passiva (AOSD) si inviano pacchetti con campi con valori non coerenti o mancanti e si analizza cosa contiene il pacchetto ottenuto come risposta dall'obiettivo. La ricerca passiva (POSD) consiste nell'analizzare il traffico di rete attraverso alla libreria Pyp0f per l'identificazione, rendendo l'approccio non rilevabile alla vittima o ad altri dispositivi nella rete, seppur a scapito di una minor precisione e tempi di attesa potenzialmente più lunghi. Entrambi gli strumenti sono stati sviluppati in pair programming.
Solide basi in linguaggi formali, programmazione, algoritmi e complessità computazionale. Esperienza nello sviluppo collaborativo in team con metodologie Agile/Scrum e sistemi di versionamento Git. Configurazione di sistemi Linux e reti con attenzione alla sicurezza, e automazione della configurazione di dispositivi tramite Ansible. Gestione di reti virtuali in cloud (Microsoft Azure, AWS). Sviluppo di applicazioni con Java, C, C++, Python, Kotlin, HTML/CSS/JavaScript, React, Vue, Node.js e containerizzazione con Docker. Tesi: JolieGraph, un tool di analisi statica per la visualizzazione dei flussi di comunicazione nei microservizi Jolie, con generazione di automi finiti in formato DOT dall'analisi del codice sorgente.
Indirizzo Informatica e Telecomunicazioni. Materie principali: Informatica (fondamenti di programmazione, database, algoritmi), Sistemi e Reti (protocolli di rete, amministrazione di sistema), Gestione Progetto e TPSIT, e Telecomunicazioni (elaborazione dei segnali, tecnologie di trasmissione).
Tool di analisi statica per microservizi Jolie. Parsing del codice sorgente, costruzione di AST tramite jolie.lang, e generazione di automi finiti (IDFA) come grafi DOT rappresentanti tutti i flussi di comunicazione.
Dettagli →Piattaforma chess online con matchmaking, analisi partite, e deployment cloud. Backend Django con frontend React e containerizzazione Docker.
Dettagli →App Android per scoprire musica dal vivo intorno a te. Mappa interattiva Google Maps, registrazione/upload audio, e analisi musicale (BPM, danceability, mood, genere).
Dettagli →Social Network completo con sistema di post, messaggistica real-time, e dashboard di moderazione. Architettura full-stack con tre frontend distinti.
Dettagli →Kernel UNIX-like su uMPS3 (emulatore MIPS). Scheduler round-robin, gestione eccezioni, syscall, semafori binari e I/O su device. Architettura a livelli secondo il modello THE di Dijkstra.
Dettagli →Game AI con algoritmo MiniMax e alpha-beta pruning. Engine intelligente per giochi da tavolo con ottimizzazione delle strategie.
Dettagli →Estensione Firefox che scarica in blocco tutte le risorse da una pagina corso di Virtuale (Moodle) dell'Università di Bologna con un solo click.
Dettagli →Gioco terminal-based in C++ con ncurses. Livelli, combattimento, armi, sistema di punteggio e classifica.
Dettagli → Sono sempre aperto a nuove opportunità e collaborazioni interessanti.
Non esitare a contattarmi!