Behind the code: Ignazio’s enterprising journey as a Python engineer

People · 11 September 2023Alex Carril

Open the hatch of the Revolut rocket ship, where our engineers drive innovation to new heights. Ignazio Finazzi, a Python Software Engineer, gives us a truly stellar insight into how he found himself at Revolut, and reveals what it's like driving change and making a real impact at a growing fintech.

Tell us a bit about how you found yourself at Revolut.

Before joining the rocket ship, I was working in the aerospace sector designing embedded communications systems and working on flight testing. I joined Revolut as a customer in May 2019, and have been following the company and its growth since.

When I received the opportunity to be part of this amazing team where I could grow and develop professionally by learning from the most experienced engineers, I couldn’t say no. Now I can say that I went from building aircrafts to building rocket ships!

For those who aren’t familiar with an engineer’s job, some might think it’s just you sitting at a computer entering code all day. What’s a typical day like for an engineer at Revolut?

Nothing could be further from the truth. Engineers are not just coding all day. For example, we have many different tasks to do within the company. Besides coding, we play a key role in designing new products and participate in decision-making when we want to create a product from scratch.

The design meetings are the most exciting part, as the entire product team comes together in a brainstorming session. Here, we share ideas about what we want to build, and how we want to build it – always trying to put ourselves in the customer's shoes to provide them with the best product for their needs.

Once the design is decided, it's up to the backend engineers to create the service architecture regarding security, user experience, and performance, in line with the input from the most experienced engineers in the company.

Then it’s time to code! (That’s where I come in.) We code the solution we’ve agreed upon, and then deploy and monitor the usage in a way that we handle the product end to end. Once we have the product deployed in production, and our customers start using it, we ask for feedback to improve, and repeat the loop to create an even better product. This helps to address more of our customers’ needs, and adapt them accordingly.

That’s how we created Metis — a product we built from scratch to help our WorkForce specialists create schedules for our agents working worldwide. Revolut has more than 5,000 agents working from 54 different countries.

Tell us more about Metis! What’s the end goal you’re trying to achieve?

We want to create the product for “all things schedules.” Metis automatically creates schedules and manages shifts for all of our agents, ultimately improving the quality of our service.

To do so, Metis focuses on two main factors:

  1. For workforce specialists, Metis allows them to create, edit, and delete agent’s shifts based on the impact on the service quality. It also creates overtime when a lack of capacity is found, and manages third party vendors’ schedules. These functionalities align with each agent’s country’s labour laws to prevent illegal shifts and maximise the agent’s satisfaction.
  2. For support specialists, Metis allows them to choose preferential working times, swap shifts, and manage overtime. It also synchronises with Google Calendar for added ease of use and convenience.

Working at a dynamic and fast-paced company like Revolut must involve some unique experiences. Can you share a memorable project, accomplishment, or challenge that made you feel like you were really riding the rocket ship?

In these (almost) two years, we have had a lot of experiences. But I would like to highlight one related to Metis. Creating automated schedules for such a large amount of employees is a problem where the feasible solutions are potentially infinite. Finding the best one is a hugely time-consuming problem.

My team and I were able to reduce the number of iterations by 10x, thereby reducing the amount of time required to generate a one-month schedule from 1 week to 30 minutes.

Can you tell us about how you collaborate with other team members, and maybe share a new project you’re working on?

As you may have noticed, I always refer to us as a team because that’s Revolut’s main quality: people working together as a Dream Team, all pushing the rocket ship forward.

The new project I’m involved in and feel passionate about is called “Spires.” It involves being a mentor to a colleague who wants to transition from one position to another, specifically to become a software engineer.

This program helps us pay it forward and give back to a fellow colleague, just as others have done for us. It's all about fostering a culture of learning and support, not only within a team but on board the entire rocket ship.

If you can give a potential engineer wanting to get into the industry any advice, what would it be?

Be open-minded, consult your colleagues about your solutions, and try to find an opposing opinion to improve your solution. Surround yourself with the best individuals who motivate you to Never Settle, as we do here at Revolut. If you want to achieve great things, you can't do them alone.


Join our team that thrives on innovation and is fuelled by ambitious engineers like Ignazio. Your next adventure in engineering excellence could be just a click away.

Share article