David Sorrentino

Head of Software Engineering @ ProntoPro

Dreamer, hugger, karma-believer
Email: me@davidsorrentino.com
Current location: Rome - Italy
About me
Hi! My name is David. ๐Ÿ‘‹๐Ÿป
I'm a Software Engineering enthusiast with 15 years of experience in the field and I'm especially passionate about clean code, functional programming, and engineering management.
I'm currently leading the super-talented Software Engineering team @ ProntoPro, building the best service marketplace in Europe.
In my life, I lived in the following towns - in the following order: Angri ๐Ÿ‡ฎ๐Ÿ‡น, Sant'Antonio Abate ๐Ÿ‡ฎ๐Ÿ‡น, Urbino ๐Ÿ‡ฎ๐Ÿ‡น, Camerino ๐Ÿ‡ฎ๐Ÿ‡น, Reykjavik ๐Ÿ‡ฎ๐Ÿ‡ธ, Kalisz ๐Ÿ‡ต๐Ÿ‡ฑ, Poznan ๐Ÿ‡ต๐Ÿ‡ฑ, Warsaw ๐Ÿ‡ต๐Ÿ‡ฑ, Ancona ๐Ÿ‡ฎ๐Ÿ‡น, Milan ๐Ÿ‡ฎ๐Ÿ‡น, Rome ๐Ÿ‡ฎ๐Ÿ‡น.
Married with Laura since 2019. ๐Ÿ’
Experience
Head of Software Engineering
ProntoPro
2021 - now
Rome, Italy
Responsibilities:
  • Shaping technology strategy
  • Attracting and mentoring talented Software Engineers
  • Supervise architectural decisions
  • Improve and innovate the product development workflow
Technology:
  • React, Next.js, NodeJS, ExpressJS, Symfony
  • Docker, Kubernetes, Helm
  • TypeScript, PHP, Go
Tech Lead
ProntoPro
2018 โ€“ 2021
Rome, Italy
Responsibilities:
  • Foster team success and growth
  • Supervise the Squad's architectural decisions
  • Defend and enhance the Squad's product development workflow
  • Design and develop product features for web and native applications
Technology:
  • React, Next.js, NodeJS, ExpressJS, Symfony, Twig
  • Docker, Kubernetes, Helm
  • TypeScript, PHP, HTML, CSS/SASS
Frontend Lead
ProntoPro
2017 โ€“ 2021
Milan, Italy
Responsibilities:
  • Hire and train
  • Supervise Frontend architectural decisions
  • Improve the Frontend technical standards
  • Foster technological innovation in the Frontend team
Technology:
  • React, Redux, Reselect, ImmutableJS, io-ts, fp-ts
  • Next.js, NodeJS, ExpressJS
  • JavaScript, TypeScript, HTML, CSS/SASS
Senior Software Engineer
ProntoPro
2016 โ€“ 2017
Milan, Italy
Responsibilities:
  • Design and develop product features for web and native applications
  • Write unit and integration tests
Technology:
  • React, Redux, Reselect, ImmutableJS, jQuery
  • NodeJS, ExpressJS, Symfony, Twig
  • JavaScript, HTML, CSS/SASS
Software Consultant
The Hive CoWorking & Incubator
2015 - 2016
Ancona, Italy
Responsibilities:
  • Design and develop websites and web applications
  • Manage projects and teams with Scrum methodologies
  • Hire and train
Technology:
  • AngularJS, Meteor
  • NodeJS, ExpressJS, MongoDB
  • JavaScript, TypeScript, HTML, CSS/SASS
JavaScript Trainer
ArToo Campus
2015 - 2016
Ancona, Italy
Responsibilities:
  • Prepare teaching materials
  • Deliver lectures and seminars
  • Check and assess students work
Technology:
  • AngularJS
  • NodeJS, ExpressJS, MongoDB
  • JavaScript, HTML, CSS/SASS
Software Consultant
Sida Group Srl
2014 - 2016
Ancona, Italy
Responsibilities:
  • Design and develop APIs, middlewares, web applications
  • Optimize existing software
  • Hire and train
Technology:
  • AngularJS, NodeJS, ExpressJS
  • JavaScript, TypeScript, Python
Tech Lead
WeBox Studio
2013 - 2016
Ancona, Italy
Responsibilities:
  • Design and develop websites, desktop and web applications, APIs, middlewares
  • Foster team success and growth
  • Hire and train
Technology:
  • AngularJS, jQuery, Meteor
  • NodeJS, ExpressJS, MongoDB, MySQL, Elasticsearch
  • JavaScript, TypeScript, HTML, CSS/SASS
Software Engineer
Coworkingness Consulting
2012 - 2014
Poznaล„, Poland
Responsibilities:
  • Design and develop websites
  • Perform business requirements analysis
Technology:
  • AngularJS
  • NodeJS, MongoDB
  • JavaScript, HTML, CSS/SASS
Software Engineer
CADIA
2011 - 2012
Reykjavik, Iceland
Responsibilities:
  • Design and develop smart home management platforms
  • Design and develop virtual environments
Technology:
  • JavaScript, Python, Panda 3D
Software Engineer
Computer Sistemi Group
2008
Fano, Italy
Responsibilities:
  • Design and develop management systems
  • Perform business requirements analysis
Technology:
  • Java EE, C#
Education
Hรกskรณlinn รญ Reykjavรญk
Master's Degree in Computer Science
2010 โ€“ 2012
Grade: 9/10
In my Master's Degree study path I mainly focused on the following subjects:
  • Machine learning
  • Virtual environments
  • Human-Computer Interfaces
University of Camerino
Master's Degree in Computer Science
2010 โ€“ 2012
Grade: 110/110 and honors
In my Master's Degree study path I mainly focused on the following subjects:
  • Advanced Software Engineering
  • Complex System Design
  • Distributed Calculus and Coordination
University of Urbino
Bachelor's Degree in Computer Science
2006 โ€“ 2010
Grade: 110/110
In my Bachelor's Degree study path I mainly focused on the following subjects:
  • Programming Languages and Compilers
  • Algorithms and Data Structures
  • Networks / Internet security
  • Databases
Articles & talks
Software Engineers Growth framework
ProntoPro Engineering blog
17/02/2021
In this article I share some details about the launch of a new Growth framework for Software Engineers in ProntoPro.
Software Engineers Growth framework
React - Write once, run everywhere
RomaJS community
17/06/2020
In this talk I explain how in ProntoPro we managed to have one codebase for multiple platforms and what are the advantages and disadvantages of setting up and maintaining such a solution. The talk is in Italian. Slides are in English.
React as a bridge between UX and development
Intersection Conference
02/10/2018
Designers and developers tend to look at UI components with different eyes. In this talk I share the role React had in ProntoPro in aligning their points of view.
Backed with โค๏ธ, TypeScript, React, styled-components, Next.js. Hosted on Vercel.