Ho maturato, nei diversi anni della mia attività e nei vari contesti nei quali ho operato, le seguenti compentenze :
Object Oriented Programming
- Competenze con i linguaggi VB.NET e C# della piattaforma Microsoft .NET.
- Esperienza con le architetture distribuite (Web Services e WCF).
- La profonda conoscenze ed esperienza di architetture Web (REST, AJAX, JSON, ASP.NET).
In aggiunta alla certificazione di MCPD per la piattaforma Microsoft. NET Framework 3.5, nel 2009 ho dato vita, in qualità di co-fondatore, ad una community tematico-verticale territoriale sulla piattaforma .NET chiamata DotNetCampania.
Software modeling
Le mie conoscenze relative alla modellazione sono principalmente focalizzate sulla progettazione orientata agli oggetti:
- Capacità di progettare utilizzando la notazione UML (Unified Modeling Language)
- Profonda conoscenza dei più noti design patterns (GoF, MVC, MVP, Head First)
- Capacità di progettare layered architectures
- Profonda conoscenza con i generatori di codice (LLBLGen, CodeSmith and T4 Templates)
Poiché la progettazione di un software "complesso" obbliga ad una adeguata persistenza dei dati, la mia esperienza include anche competenze di modellazione dei dati:
- Modellazione di database relazionali e normalizzazione rispetto alla terza forma normale.
- Modellazione di oggetti e documenti con XML Schema.
La conoscenza di alcuni UI-Patterns (MVP tra tutti) mi hanno consentito di essere chiamato come speaker presso alcune conferenze organizzate con il patrocinio di Microsoft Italia:
- DotNetCampania Ultimate Web!
http://dotnetcampania.org/content/UltimateWeb2010.aspx - Web Development Day
http://dotnetcampania.org/content/WebDevelopmentDay.aspx - Microsoft Community Tour 2010
http://dotnetcampania.org/content/WindowsPhone7IE9AzureCommunityTour2010.aspx
Business modeling
Essendo stato direttamente coinvolto nelle attività di sviluppo e analisi di software aziendali, ho sviluppato un certo know-how anche nel business modeling:
- Capacità nel descrivere la struttura (i business objects) e il comportamento dell'azienda/organizzazione (il business scenarios).
- Capacità di descrivere e analizzare tecniche per il benchmarking di analysis techniques to express functional performance specification.
- Abilità nel comunicare la visione comune tra tutti gli attori di un progetto (software specialists, business analysts, clienti and utenti finali).





