Something about me and my professional career

Summary

I am a highly skilled developer with more than twelve years' experience, a degree in computer science and a passion for machine learning and networks. In these years, I designed and implemented web and Windows solutions for tourism, automotive, medical, financial and web marketing sectors. I am a decisive, systematic and determined type and I prefer dealing with fact, data, logic and details. My analytical and direct style focuses on tasks, results and outcomes using strong problem solving and fast prototyping skills. In addition, I am a team player with people management skills, a proven track record for managing multiple projects with demanding deadlines and effective communication skills.

Objective

I am always open to new opportunities as team lead, architect or project manager especially when machine learning and very large data sets are involved.  I am looking for an enjoyable environment where I can share my know-how with other people and I can use my creativity to build cutting-edge applications. I would also like to find intellectual stimulation to grow and learn new technologies.

Skills

Add Skills
Data Analysis

Mining data and applying machine learning techniques using Python (mainly scikit-learn), R, Octave

SDLC process

Agile (Scrum and eXtreme Programming) and Waterfall in TDD environment

Distributed applications designer and developer

Currently using NServiceBus 2.6. In the past, using Microsoft Windows Azure (Azure SDK 1.3, AppFabric SDK and SQL Azure), Windows Communication Foundation (WCF), Web services and basic client/server communication

Microsoft Sql Server designer and developer

Currently using version 2008 R2. T-sql for function and store procedure creation

C# application designer and developer

Current version 4.5.

Certifications

Add Certifications

Microsoft Certified Application Developer (MCAD.NET)

2005 - present

Issued By: Microsoft

Advanced NHibernate Course

2011 - present

Issued By: Skillmatter.com

Leadership & Management Programme

2012 - present

Issued By: Chartered Management Institute

Certified Scrum Master

2013 - present

Issued By: Scrum Alliance

Massive Open Online Courses MOOC

Issued By: Edx.org and Coursera.org

Education

Add Education

Sep 1996 - Apr 2001

Engineering degree in computer science

Graduated with 100/110 (2:1 equivalent degree). Main subjects: computer programming (c++, java, basic and advanced, algorithms, database), project management, mathematics, physics

Work History

Add Work History

development team lead

May 2011 - present

  • As a team lead, I am leading a team of up to 6 developers setting and managing their work objectives through a large scale integration project involving multiple enterprise clients and 3rd party service providers.
  • As a technical lead, I am engaging with clients, users and internal/external stakeholders continuously throughout the software development and delivery process. I am designing and developing core application modules which deliver high volume and high throughput services using asynchronous design patterns. In particular, I am currently working on the company main product "Intelligent Office" to integrate the current system with another important company in the financial sector. It involves both building the web user interface (ASP.NET MVC) and the backend using NServiceBus and WCF services. I use NHibernate for the data access, Autofac as IoC container to manage dependencies and Moq as mocking library.
  • As a scrum master, I am facilitating sprints and ensuring cross-team coordination in a SCRUM environment. I am promoting best practices within the Test Driven Development (TDD) software development life cycle.

senior developer

Jun 2009 - Apr 2011

  • Working in the R&D department using Agile methodology (Scrum managed using Microsoft VS Team System), I developed a backend service which analyse a web site in relation with its competitors and produce some important metrics. The service implements different mathematical algorithms such as Latent semantic analysis, Tf-Idf, Smith Waterman and Self-organising maps. The project uses many application blocks of Microsoft Entrerprise Library 5.0 and Unity for dependency injection.  It is hosted in Microsoft Azure worker roles to distribute the load and increase the performances. The data is persisted mainly in Sql Azure databases and in the Azure queues, blobs and tables; the communication with the frontend is with WCF (Azure web roles). The test-drive development cycle (TDD) is applied by using Microsoft MSUnit and Moq for mocking.

senior developer

Aug 2007 - Jun 2009

I worked in team and using an Agile methodology (scrum) I designed and developed the following systems:

  • I developed an internal web application to process personal injury claims using the Microsoft .Net Framework 3.5 (Visual Studio 2008), C#, AJAX and Microsoft Sql Server 2005.
  • I designed and developed an internal web application to manage life insurance sales process using the Microsoft .Net Framework 3.5 (Visual Studio 2008), C#, AJAX and Microsoft Sql Server 2005.
  • I maintained and improved an internal web application to manage secured loan sales process using the Microsoft .Net Framework 2.0, C#, AJAX and Microsoft Sql Server 2005.
  • I developed the online credit card comparison system for the main company web site using the Microsoft .Net Framework 2.0, C#, AJAX and Microsoft Sql Server 2005.

developer

Jun 2006 - Jun 2007

I worked mainly alone and sometime in a small team, using the traditional waterfall model, I developed the following applications:

  • I developed a mobile application to prescribe and administer medicines in a hospital using a PDA. I used the Microsoft .Net 2.0 and C#; the application interacts with a database through web services and it is speech-recognition-enabled (Nuance Mobile SR system).
  • I developed a web application to monitor and support customer installations of other company products. The application is also used by public companies with more hospitals to monitor their own installations. I used the Microsoft .Net Framework 2.0, ASP.Net, C# and AJAX. As DBMS I used Microsoft Sql Server 2005.

lead developer

Sep 2003 - Jun 2006

I worked in a small team (4-5 people) where I was also the lead developer and I implemented an Agile methodology (eXtreme Programming). I designed and developed the following systems:

  • I designed and developed some parts of a web application for managing business processes, quality, job safety and environment protection. I used ASP.Net with .Net framework 1.1 and VB.Net and then with .Net framework 2.0 and C#. I used the Microsoft Reporting Services System to create all PDF reports.
  • I designed and developed the database for the system using Microsoft Sql Server 2000, creating tables, views, store procedures and functions.
  • I designed and developed an ETL system (Extract, Transform and Load) using web services, windows services, data encryption and XML, interacting with some different DBMS like Oracle and AS/400 DB2. I used .Net framework 1.1 and VB.Net.

developer / IT manager

Apr 2000 - Jul 2003

Italian Leisure Group
  • I designed and developed a system for simplifying the booking process, integrating As/400 management information system, e-mail and fax system and Microsoft Office applications. The system was composed of Windows services and Windows applications. I used .Net framework 1.0 and VB.Net, Microsoft Sql Server 2000 and Microsoft Exchange Server 2000.
  • I managed the IT department

Interest

I am passionate about studying big data and social network with machine learning techniques. I am participating in online competions to solve complex data science problems (my profile at Kaggle).

I love reading books, in particular about new technologies, algorithm implementation, mathematics and physics.

Paolo Vigori's VisualCV Download a PDF version of my CV