Paolo Tremadio
Paolo Tremadio
Paolo Tremadio
Senior software developer, Co-founder of forgetbusy
  • I prefer to work in East / Central London
  • I mainly work as contractor but open to take a perm role for the right opportunity
Summary

My ideal job

I'm a Senior software developer and hands-on tech lead; my ideal job is a project to have an impact on. I love to work side by side with Product and UX to help shaping the future of tech products.

What I’ve worked on

My biggest achievement has been working with IAC on a project called Werkspot. I’ve been asked to work between London and Amsterdam on a very challenging project: a gradual rebuild of the Werkspot.nl website (avoiding a big-bang release), keeping the website running, keeping experimenting on new features, with a team of 8 people that never worked together before. I’ve managed to make it happen, without losing revenues and by improving the website performances. I’ve worked on hiring the team of developers. I’ve then worked with an amazing product/UX team to the new design and user experience of the website. Last but not least, we have successfully migrated from an old legacy monolith to scenario-driven APIs with a responsive website as main API client.

Side Project: forgetbusy

I’ve been running my own side project in order to keep experiment with new technologies. The aim of forgetbusy is to bridge the gap between marketers and technology. With forgetbusy we're building modern and simple apps that save time.

Current role
Senior Software Engineer at LocalHeroes / British Gas
Oct 2020 - present
LocalHeroes / British Gas

Local Heroes is an innovative new network connecting customers with local tradesmen for a variety of jobs including plumbing, heating and drainage services and electricians. The fast growing start up backed by British Gas.

Technologies used for this project
Frontend: Javascript (ES6), Typescript, React + Redux, React Native + Redux, Next.js, CSS3 (SASS), UI component library, Material UI, Webpack, GraphQL, Jest, ESLint, JWT + Auth0.
Backend: Node.js, Express, AWS, microservices architecture (both frontend and backend) based on Docker, deployed with Terraform and Codeship.

I worked on many of the micro-services and micro-frontends that power the company products. I was responsible for the full lifecycle of many applications, from shaping to development, to automation testing, to deployment.

The backend microservices have been build in Typescript on Express and they expose GraphQL endpoints authenticated by JWT tokens.

The frontends have been built in Javascript on Next.js using Material UI or an in-house built UI components library. The components have been built in React with Redux and Hooks; CSS has been build in SASS with CSS modules following a BEM-like convention. Code style has been kept consistent in between teams by applying Airbnb ESLint rules, including CSS linting. I was also in charge of the React Native iOS app/wrapper which also uses Redux. All apps have been built mobile-first and responsive.

Multiple testing strategies have been put in place, from Unit to Integration tests using Jest, including end-to-end. The infrastructure has been managed by Terraform and the applications have been packaged into Docker containers using Codeship. Each application lives in its own git repository with it is own lifecycle. The services make extensive use of multiple AWS services, from container related (ECR/ECS), to databases (like RDS and Elasticsearch), to storage (S3) to Lambda and step functions.

My project
Co-founder at forgetbusy
Jan 2020 - present
forgetbusy

Marketers are often busy dealing with meetings, unclear deadlines, multiple stakeholders, implementing tools and an inbox that is always full. It is difficult to focus on optimisations, data analysis and learn from experiments, despite these being impactful tasks.

I’ve co-created created forgetbusy to build the apps that we need to make our working life less busy.

I take care of prototyping (Axure), defining the simplest User Experience as possible, designing a gorgeous and simple User Interface (Sketch).

Technologies used for this projects

Frontend: micro-frontends built on Next.JS (Server side rendered) using a custom-looking components library based on Material UI, React with hooks, Apollo for GraphQL, Typescript, JSS for styling, Jest & ESLint for code quality and testing, JWT & Auth0 for authentication. The frontends run in Lambda/serverless (Vercel).

Backend: microservice infrastructure based on GraphQL (Apollo on Node.js) packaged in Lambdas on AWS. Datastore: MySQL. Background jobs run in Lambda, Docker containers (AWS Fargate), Step functions.

Infrastructure: I take care of architect and deploy our cloud-based infrastructure, hosted on AWS. The infrastructure is Terraform-ed and it is built and deployed via Github Actions and Github packages. We also use CloudFlare as CDN/DDoS mitigation.

Certifications

Nielsen/Norman Paper prototyping
Nielsen/Norman User Experience: Designing Complex Applications and Websites

Previous roles
Senior Software Engineer at ATG Tickets.com
Dec 2019 - May 2020
ATG Tickets.com

Founded in 1992 in the UK, ATG is the world’s number one live-theatre company, covering every discipline in the theatre industry, from operating over 50 venues across Britain, the US and Germany to ticketing platforms and producing shows.

Technologies used for this project
Frontend: Javascript (ES6), Typescript, React, Next.js SSR, Styled compoents, UI component library, Material UI, Webpack, GraphQL, Jest, ESLint.
Backend: Node.js, AWS, Cloudflare, microservices architecture (both frontend and backend) based on Lambda, deployed with Terraform and GitHub actions.

I’ve been working on a brand new project at ATG, consisting in a solution to deliver a website for each of the 50 venues. The websites are powered by Umbraco + Contentful as headless CMS and deliver server-side rendered pages powered by Next.js + React.

I am also in charge of building the company UI component library, to be used on all the websites operated by ATG. The component library has been built following the public APIs of Material UI but using Styled component as presentation layer. Each component has been adapted and styled to match the very ambitious UI language set by the design team.

I’ve also worked together with the team to introduce strong engineering principles such as Continuous Integration, Continuous Delivery and microservices.

Senior Software Engineer at LocalHeroes / British Gas
May 2018 - Dec 2019
LocalHeroes / British Gas

Same project as 2020/21

Senior Software Developer at Eurostar
Sep 2017 - May 2018
Eurostar

For over 20 years Eurostar has been connecting people and business across the Channel, helping them to work and grow together.

Technologies used for this project
Frontend: responsive HTML5, React, Redux, CSS3 (SASS), Webpack, Node.js, Koa, Jest, ESLint.
Backend: Hapi.js, Scala.

I worked in the team responsible for the Booking Platform. The app is mission critical and it accounts for the vast majority of revenues (about 860 million each year).

The platform has been build in Redux + Redux, translated in 4 languages and it is available in 6 markets. It takes care of each single aspect of sales: picking the right train/tariff, upselling, managing accounts and a very extensive checkout with hundred of business rules attached to it.

We spent a lot of time in making sure the platform is always working by implementing extensive coverage of unit tests, integration tests and BDDs. I've joined the company when the platform was still written in Riot and I worked with the team to successfully migrate to React.

Senior Software Developer at Carmignac
Mar 2017 - Sep 2017
Carmignac

Carmignac is one of the biggest french investment manager. The firm primarily provides its services to independent advisors and network financial advisors. It also caters to banks and networks, as well as to institutional and private clients. It was founded in 1989 and is based in Paris, France with additional offices in Frankfurt, Germany and London, United Kingdom.

Technologies used for this project
Frontend: responsive HTML5, React, Typescript (ES6), CSS3 (SASS), Webpack, Node.js
Backend: Express.js, PHP, PostgreSQL, MySQL, Docker.

I took care of migrating the legacy “fund pages” of the Carmignac website from Drupal to a modern responsive React frontend powered by APIs.

This project has been particularly challenging due to the subject: in finance pence do matter. I’ve built a custom system to automatically import fund data in various formats into PostgreSQL and MySQL databases. Data get pulled from APIs and an FTP server, processed, stored and returned via RESTful APIs to be consumed by a fully-responsive React frontend. React Server rendering has been used to produce the PDF reports.

Tech lead at 8x8
Oct 2016 - Mar 2017
8x8

8x8, Inc. (NASDAQ: EGHT) is the trusted provider of secure and reliable enterprise cloud communications solutions to more than 45,000 businesses operating in over 100 countries across six continents. 8x8's out-of-the-box cloud solutions replace traditional on-premises PBX hardware and software-based systems with a flexible and scalable Software as a Service (SaaS) alternative, encompassing cloud business phone service, contact center solutions, and conferencing.

Technologies used for this project
Frontend: HTML 5, jQuery, SASS, Node.js, Gulp
Backend: PHP 5.3 and 7, Go, MySQL, Rabbit MQ, Nginx, Docker, AWS.

I took care of starting the migration of the old legacy application written in PHP to a modern microservice architecture based on Node.js and Go. The new architecture has been design to run containerised in Docker and keeping in mind concurrency and real-time updates of the UI.

Tech lead - Freeview Play at Arqiva / Freeview
Sep 2014 - Sep 2016
Arqiva / Freeview

Arqiva is a communications infrastructure and media services company, operating at the heart of the broadcast, satellite and mobile communications markets. FreeviewPlay is a connected TV service developed by Arqiva for Digital UK that will make the best of broadcast and on-demand TV available free for everyone in the UK.

Technologies used for this project
Frontend: HTML5, jQuery, Typescript, CSS3 (SASS), Node.js, React
Backend: PHP 5.6, Symfony 2, MySQL, Active MQ, Varnish 4, Memcache, Nginx, Twig, Seachange, Behat, AWS, Docker.

As tech lead my role was dealing with the develop of the platform to aggregate contents from BBC, ITV, Channel 4 and Channel 5. The output is a simple RESTful API consumed by TVs and set-top boxes build by manufactures like Samsung, Sony and LG. UI components have been built using Javascript-based components from the TV manufactures (jQuery / Typescript / SASS). The web version for the EPG has been built in Typescript and React, backed by Node.js APIs. Performances have been taken into the account by design. The APIs will work under critical load: all the connected TVs in the UK will use this platform to get access to EPG and OnDemand contents (estimated 10M of concurrent users at peak time).

Press release: http://www.freeview.co.uk/articles/about-us/press-releases/freeview-rebrands-for-connected-future.html

Mobile Tech Lead at AnalogFolk
Jan 2014 - Sep 2014
AnalogFolk

AnalogFolk is an independent global creative agency with offices in London, Sydney and New York. The agency makes and markets valued interactive experiences in an analog world.

Technologies used for these projects
Frontend: mobile-first responsive HTML5, CSS3 (SASS/LESS), Angular, Node.js, Sencha Touch, Grunt, Phantom.js
Backend: PHP, Rails, Java, Docker

As mobile tech lead, my role was to introduce the culture of mobile within the agency. I was leading an agile team of mobile developers to build rich interactive experiences. We have built responsive websites following the mobile first approach as well as native apps. Supporting the UX team was part of my role: define user-journeys and user-interfaces as well supporting the creative team during the creative process. We have successfully delivered mobile experiences for big brands like HSBC, Sainsbury's, Seat, AkzoNobel and Chivas.

Software architect at IAC - Werkspot.nl
May 2013 - Jan 2014
IAC - Werkspot.nl

IAC is a leading media and Internet company comprised of more than 150 brands and products, including Expedia, TripAdvisor, Match.com & Meetic, HomeAdvisor and Ask.com.

Technologies used for this project
Frontend: responsive mobile-first HTML5, CSS3 (LESS), jQuery, Gulp, Node.js
Backend: PHP 5.4 OOP, Symfony 2, MySQL, Memcache, Apache, Varnish, Twig, Behat, Zend Framework (legacy), Symfony 1 (legacy), Docker.

As software architect of a scrum team, my role was designing the future of the werkspot.nl website.

The technical challenge was the migration of a legacy website (werkspot.nl) from Symfony 1 to Symfony 2 with a high-performance API as backend and business logic. The migration was carried on by keeping the old website online and replacing each single functionality with a new, fast and mobile-responsive interface. Automated tests (unit and integration tests) have been written to ensure that the new website works as expected on any device (including old smartphones).

Part of my duties was define and design the user-interface by working closely with the Lead UX (former Lead UX in TomTom) and the entire UX and product team. Each single element of the portal has been designed mobile-first. Extended in-house and remote user testing has been carried on to ensure a smooth migration between interfaces as well as better conversions and customer satisfaction. Automated performance tests double check that the User Experience is the best in any situation, from a powerful desktop computer to a low-speed 3G mobile phone.

Senior Software Engineer at Arbor Education
Jul 2011 - May 2013
Arbor Education

Arbor is an intuitive, flexible and mobile management system for the education sector.

Technologies used for this project
Frontend: HTML5, CSS3 (SASS), ExtJS 4, Sencha Touch 2 + Phonegap
Backend: PHP 5.4 OOP, Zend Framework, MySQL, Memcache, nginx, Amazon AWS (VPC, RDS, EC2, S3, SQS, SNS), Solr, Mondrian, Twig.

As senior engineer my role was to create a very fast and usable web interface, built on top of high performance backend infrastructure. The UI has been built using custom-made and custom-styled ExtJS 4.1 components. The same UIs are available on mobile (cross platform), using Sencha Touch 2 code, generated by a easy-to-use template system that I have built using XML component definitions. The platform is built on top of Zend Framework and it runs on Amazon Web Services.

Software Engineer at Ibuildings
Jan 2010 - Sep 2011
Ibuildings

Ibuildings has years of experience in building large-scale, mission-critical web applications, from CMS applications to high-traffic ecommerce sites and service-oriented architectures.

Technologies used for these projects
Frontend: HTML5, CSS (SASS), jQuery, ExtJS / Sencha Touch, Phonegap
Backend: PHP 5 OOP, Zend Framework, MySQL/Oracle/SQL Server, Solr

As software engineer I have been involved in main steps of the development life cycle. My job consisted in developing mission-critical web applications and websites focusing on design, performance and integration with the customer’s software infrastructure.

Software Engineer at Skebby
Jan 2008 - Dec 2009
Skebby

Skebby is a company in the web-oriented mobile services business.

Technologies used for this project
Fronend: HTML, CSS (SASS), jQuery
Backend: PHP 5 OOP, Zend Framework, MySQL cluster, REST/SOAP

I was in charge of engineered the SMS sending platform. High availability and strong performance are the key values for this project. The SMS web app has been fully re-designed to improve usability and reduce the complexity. The SOAP / REST webservices was built to reach the highest performance level.

Other projects
Co Founder at GigLink
Jan 2014 - Dec 2019
GigLink

GigLink was my side project: the app for the clubbing industry that creates booking opportunities by connecting promoters in the same area and facilitating flight sharing. We make it possible for artists to play all around the world, no matter if they live close or far away (www.giglink.club)

GigLink looks like a simple product. That's because I've designed the UI to look simple and easy to use. What's behind the scenes is everything but simple. We aggregate data from different providers and we merge the information with what has been submitted from artists and manager from all around the world. We process over 23 million datapoints every week. It all gets organised and transformed into valuable information.

The system intelligently matches artists and venues and automatically suggests the best gigs for each artist. We scan the artist's calendars to help promoters organising events. We also scan similar artist's calendars in order to provide helpful suggestions.

It all happens in few milliseconds, using a dataset containing over several million of pieces of information.

Technologies used for this projects

Frontend: I take care of prototyping, defining the simplest User Experience as possible, designing a gorgeous and simple User Interface. The UI is modular, built in HTML5, React, Redux, TypeScript (ES6), SASS and Webpack. The frontend is fully responsive and tested across multiple devices. Hypernova has been used for server side rendering.

Backend: I engineer a light front-end connected to a solid set of microservices APIs written in Express.js + Node.js (legacy services in PHP). We store data in MySQL and Elasticsearch.

Infrastructure: I take care of architect and deploy our cloud-based infrastructure, hosted on DigitalOcean and AWS; we use Docker containers deployed/scheduled by HashiCorp Nomad; service discovery is handled by HashiCorp Consul. Nodes are provisioned with Ansible. Monitoring by New Relic. We also use CloudFlare as CDN/DDoS mitigation.