Informazioni
Questo CV è pubblicamente accessibile, pertanto alcune informazioni sensibili sono state rimosse. Per maggiori informazioni, contattami via email. Grazie.
Competenze Tecniche
- Programmazione
-
Utilizzo dei linguaggi di programmazione C#/VB (.NET), Java, Javascript, Python, C. Conoscenza del linguaggio SQL e familiarità con i principi cardine dei database relazionali e document-oriented.
Conoscenze basilari di HTML/CSS (Responsive web, SASS) e buona conoscenza di Javascript (ES6 e più recenti, Typescript), utilizzato sia in front-end che back-end (con NodeJS), e delle relative toolchain.
Buona conoscenza di VueJS come framework per SPA. Buone conoscenze di framework come NestJS e micro-framework come Express.js per lo sviluppo lato back-end lato JS.
Conoscenze basilari di ASP.NET Core (ed EntityFramework Core) per lo sviluppo backend nel mondo .NET.
Conoscenze basilari di Spring e Spring Boot e relativi componenti, nonchè dei principi fondamentali di JavaEE (Servlet, JSP, JSTL e EL; Hibernate).
Buona conoscenza delle best-practices per la progettazione e realizzazione di API RESTful.
Buona conoscenza di WPF/XAML e Windows Forms per lo sviluppo di Rich Desktop Applications su .NET e dell'applicazione dell'architettura Model-View-ViewModel per la realizzazione delle stesse.
Conoscenza del linguaggio di modellizzazione UML, dei paradigmi dell’ingegneria del software (processo di sviluppo, design principles, design patterns, …).
- Operations / Infrastructure
- Buona conoscenza della shell Bash per lo scripting UNIX e utilizzo di Git per il version control, e di piattaforme come GitLab-CI e TravisCI per continuous integration e testing, di Docker e Vagrant come development e testing environments. Familiarità con Proxmox VE (container LXC, macchine virtuali KVM) e libvirt (KVM) come ambiente di virtualizzazione, competenze basilari di setup e amministrazione di server Linux (nello specifico debian-based) e della loro automatizzazione tramite Ansible.
- Altre Tecnologie
- Conoscenza basilare di LaTeX e di vari lightweight markup language (Markdown, reStructuredText, …) per la produzione di documenti.
- OS / Software
- Profonda familiarità con Microsoft Windows, Linux e macOS.
Lingue Straniere
- Inglese
- Ottima conoscenza della lingua scritta e dell’inglese tecnico. Buona conoscenza della lingua parlata.