Fernando Perez-Diaz, Developer in Vilagarcía de Arousa, Spain
Fernando is available for hire
Hire Fernando

Fernando Perez-Diaz

Verified Expert  in Engineering

Software Developer

Location
Vilagarcía de Arousa, Spain
Toptal Member Since
October 18, 2022

Fernando is a versatile developer with experience working on large projects in fast-paced environments, following agile practices and TDD. His experience spans the entire project lifecycle—from the design phase to completion, continuously liaising with stakeholders, managing their expectations, and prioritizing tasks. Fernando's current focus is on Scala and functional programming. He is constantly learning and improving himself and enjoys mentoring and upskilling other members of his teams.

Portfolio

BP
Go, gRPC, Terraform, React, Back-end, Back-end Development, TypeScript
Deliveroo
Scala, Akka, typelevel.scala, Apache Kafka, Elasticsearch, PostgreSQL, Docker...
University of Warwick
Scala, Play, Slick, Kotlin, Hibernate, Spring, Spring Boot, React, TypeScript...

Experience

Availability

Full-time

Preferred Environment

IntelliJ IDEA, Ubuntu, Slack, MacOS

The most amazing...

...thing I've built is Deliveroo's financial reporting platform.

Work Experience

Senior Software Engineer

2022 - PRESENT
BP
  • Developed a battery rental management system for renting portable batteries in South Africa.
  • Built an ordering system for self-service kiosks in a pilot project for BP to upsell and recommend convenience items while users are charging their EV vehicles or refueling in a petrol station.
  • Integrated our software with payment providers, namely Stripe and Planet Payment.
Technologies: Go, gRPC, Terraform, React, Back-end, Back-end Development, TypeScript

Senior Software Engineer

2021 - 2022
Deliveroo
  • Transformed the old offline ledger journals into a new data pipeline that processed and generated financial events, in real time, for the consumption of the finance department. The new system could process millions of events per minute.
  • Built, improved, and maintained Deliveroo's financial reporting systems to ensure the accuracy and quality of financial data.
  • Worked closely with stakeholders throughout the development cycle. Created technical design documents.
  • Mentored junior colleagues to help them resolve problems and brought them up to speed. Coached and upskilled them.
Technologies: Scala, Akka, typelevel.scala, Apache Kafka, Elasticsearch, PostgreSQL, Docker, Amazon Simple Queue Service (SQS), AWS Lambda, Amazon Elastic Container Service (Amazon ECS), Amazon RDS, Terraform, Go, GraphQL, Git, REST APIs, ScalaTest, Agile Software Development, ScalaMock, Test-driven Development (TDD), CircleCI, APIs, Technical Documentation, Documentation, Software Architecture, Architecture, Full-stack, Product Leadership, Scalable Architecture, Software Design, Scalable Application, Requirements Analysis, Leadership, Amazon Web Services (AWS), SQL, Relational Databases, Object-relational Mapping (ORM), Message Queues, HTTP, Microservices, CI/CD Pipelines, Back-end, Back-end Development, Distributed Systems

Software Engineer

2016 - 2021
University of Warwick
  • Created and maintained several systems used by the student and staff bodies and the general public.
  • Developed the Alternative Exams Portal, an online exam platform built during the COVID-19 pandemic under a tight deadline to replace in-person exams. The system handled over 10,000 concurrent sittings at peak times.
  • Created a scholarship management system for the institution's scholarships, handling thousands of applications each year.
  • Developed the module approval and module catalogue, bringing an entirely antiquated paper-based process into the 21st century, streamlining the whole process of module creation across every academic department.
  • Played an essential role in developing a new search engine for the institution, Warwick Search, including a crawler to index information.
  • Contributed to Sitebuilder, a CMS that managed all of the university's web pages, with a forum, event calendar, and booking capabilities.
  • Communicated with customers, managed stakeholder expectations, and prioritized tasks.
Technologies: Scala, Play, Slick, Kotlin, Hibernate, Spring, Spring Boot, React, TypeScript, Elasticsearch, PostgreSQL, Java, Java 11, MongoDB, Node.js, GraphQL, Jest, JavaScript, Git, REST APIs, Redux, ScalaTest, Agile Software Development, ScalaMock, Test-driven Development (TDD), Bamboo, Puppet, JUnit, APIs, Technical Documentation, Documentation, Software Architecture, Architecture, Full-stack, Product Leadership, Web Development, Software Design, Scalable Application, Requirements Analysis, Leadership, SQL, Relational Databases, Object-relational Mapping (ORM), Angular, HTTP API, HTTP, Microservices, CI/CD Pipelines, Apache Maven, Back-end, Back-end Development, Redis, Play Framework

Freelance Web Development

2013 - 2016
Freelance
  • Developed a Reddit-like social news aggregator in Python and Django.
  • Created several PHP themes for various WordPress sites that I maintained.
  • Built, hosted, and maintained static customer websites.
Technologies: JavaScript, Python, Django, HTML, CSS, Git, REST APIs, Full-stack, Web Development, WordPress, SQL, Relational Databases, Object-relational Mapping (ORM), PHP, MySQL, HTTP, CI/CD Pipelines, Back-end, Back-end Development

Ledger Platform

I led the development of a new data pipeline that processed, transformed, and generated financial events in real time for the consumption of Deliveroo's finance department, capable of processing millions of events per minute.

Oversaw the project from start to delivery, working alongside the project manager. Gathered requirements, wrote technical design documents, liaised with stakeholders, managed their expectations, and prioritized tasks. Led a group of three developers and interacted with QAs until the successful completion of the project.

Alternative Exams Portal

An online exam and assessment platform developed during the COVID-19 pandemic under a tight deadline to replace in-person exams at the University of Warwick. The system handled over 10,000 concurrent sittings at peak times.

Search Engine for the University of Warwick

https://search.warwick.ac.uk/
I developed a new search engine for the institution, Warwick Search, including a crawler to index information.

The project involved using React and Redux for the front end, Scala and Play for the back end, and working with Elasticsearch.

Languages

Scala, TypeScript, JavaScript, CSS, GraphQL, SQL, Kotlin, Python, HTML, Java, Snowflake, Java 11, Go, PHP

Frameworks

Play, ScalaMock, Akka, Hibernate, Spring, Spring Boot, JUnit, Redux, Play Framework, Django, Jest, Angular, gRPC

Libraries/APIs

Slick, React, REST APIs, HTTP API, Node.js

Tools

ScalaTest, Git, typelevel.scala, Amazon Simple Queue Service (SQS), Bamboo, Amazon Elastic Container Service (Amazon ECS), Terraform, IntelliJ IDEA, Puppet, CircleCI, Apache Maven

Paradigms

Test-driven Development (TDD), Agile Software Development, Requirements Analysis, Object-relational Mapping (ORM), Scalable Application, Microservices

Storage

PostgreSQL, Relational Databases, Elasticsearch, MySQL, Data Pipelines, Redis, MongoDB

Other

APIs, Technical Documentation, Documentation, Software Architecture, Architecture, Full-stack, Web Development, Message Queues, HTTP, Back-end, Back-end Development, Product Leadership, Scalable Architecture, Software Design, Leadership, CI/CD Pipelines, Distributed Systems, Simulations, Machine Learning, Amazon RDS, WebSockets, Robotics

Platforms

Apache Kafka, Amazon Web Services (AWS), Docker, AWS Lambda, Ubuntu, WordPress

2011 - 2016

PhD in Computer Science

University of Sheffield - Sheffield, UK

2007 - 2011

Master's Degree in Physics

University of Santiago de Compostela - Santiago de Compostela, Spain

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring