esposito.fulvio@gmail.com +44 742 949 7375
I'm a creative software engineer driven by a great passion for designing and building great software. I firmly believe in having a strong theoretical framework as a mean for taking complex design decisions. I also constantly practice programming in order to keep contact with the fast-paced changing world of software development. I'm extremely versatile as I am language agnostic, though I tend to prefer statically and strongly typed ones.
• Software engineer at System Simulation, London, UK, May 2012 to present - Developed and improved internal tooling for the company proprietary database system, Index+. Examples include optimizitation of the XML to Data Definition Language translation tool by 6x applying XML node caching, and a 10x improvement of the uniqe list validation moving from a brute force comparison algorithm to a hashtable search based one. I've also added support for TLS and SOCKS connection in the database network server code.
- Main developer on the MuseumIndex+ Web Edition project, a port to the Web of the company flagship cataloguing software system. The system has a front end written in HTML5 + Javascript using the ExtJS 3.4 framework. The backend is written in a proprietary scripting language called IEXE.
- Implemented TWAIN support in AssetIndex+, a Digital Asset Management system, for ingesting images acquired from cameras and TWAIN-compatible devices (e.g. microscopes).
• Analist/Developer at Cid Software Studio S.p.A., Naples, IT, May 2009 to Jan 2012 - Over three years I've worked with many different teams of different sizes, ranging from 2 to 10 people, on many projects including: * a Document Management System written in J2EE/Hibernate for Local Government bodies where I implemented PDF report generation. * a ticketing system built as a customization of Alfresco, a Java Document Management System. * A web-based map visualization tool written in ExtJS and OpenLayers.
• Junior Software Engineer at Think3 Inc., Bologna, IT, Feb 2009 to Mar 2009 - I started a job to modularize the company flagship CAD software system, ThinkDesign, aided by an academic research tool called Bunch able to cluster modules minimizing dependencies between them. Bunch required a dependency graph as input that I obtained using a source code analisys tool with a C++ plugin that I wrote for this project.
• Indipendent Developer, Oct 2005 to Jan 2007 - I designed and developed a business desktop application in C# with the .NET Framework and a SQL database to support all the activities of a freight broker (customers, contracts, invoices, accountancy, reporting).
• M. Sc. in Computer Science Engineering, 2009, Federico II University, Naples, IT
Dissertation title: “Payload inspection techniques for internet traffic classification”
I developed a plugin for a network traffic classification platform called TIE. The plugin was based on L7Filter, an open source project, and implemented a deep packet inspection technique based on regular expression matching to classify application level protocols analyzing TCP and UDP packets.
- C/C++ (Proficent)
- Java (Prior expirience)
- Javascript (Intermidiate)
- Python (Exposure)
- Git / Mercurial
- SQL (Prior expirience)
- ExtJS
- C# (Prior expirience)
- Italian (Mothertongue)
- English (Fluent)
Computer science is one of my primary interests, hence I spend time outside work hours practicing programming. I like reading fantasy and crime fiction books, and also playing acoustic guitar.