Checkout.com is a leading international provider of online payment solutions.
I started at Checkout.com as one of the first backend developers in their London office and worked with them from March 2016 to December 2017. Starting as a Senior Software Developer and later progressing to Technical Lead.
Working at FinTech startup with a small number of employees meant that my roles were quite varied during the time I was there.
Here are some of the highlights I helped with during my time there:
I lead a small agile team to completely redesign the backend financial systems for renumerating merchants.
The new system made use of events to poulate a double entry accounting ledger which we designed from the ground up using .Net Core and Docker. The system was made up of a number of microservices which worked together to produce the required reports for finance and merchants while aslo being independent from the main charge flow system.
This project required a great deal of collaboration between engineering and finance to come up with the specification and design of the system.
Checkout.com had grown quickly in the few years they had been running. As a result, many of the SQL queries that worked well with a handful of merchants suffered as bigger merchants were onboarded.
I helped by identifying poor performing queries, analysing query plans and rewriting them to be more effecient. In a few cases, there were some backend reporting queries which took 3 hours to run which I was able to reduce down to 10 minutes.
Not only did these optimisations help speed up the queries in question it also helped with performance across the whole estate as their was less load on the database.
Check out my post on SQL performance optimisation to see how you can improve your queries.
As with any startup there are often a lot of processes which are done manually at first which later do not scale and have to be automated.
In the first few months at Checkout.com I was able to automate a lot of the manual processes for the operational finance team. As a result there was a reduction of 80 support tickets a week from the team. In addition I was able to analyse past data and find issues caused by human error and put in place an alert system to flag any issues in the future.