From small premises to the cloud - the evolution of PAYBACK's IT architecture
How has PAYBACK’s architecture evolved over the past several years?
The IT architecture at PAYBACK has gone through a full development path. When the Program entered our market a 14 years ago, the number of program participants, as well as the volume of transactions, did not go into the millions as they do today. For this reason, the classic physical servers, which at the time were located in Hamburg, were sufficient for daily tasks, and no one from the Polish IT team had the authority to log on to them. When my colleague and I joined PAYBACK Poland, we were the first IT professionals from Poland to be given access to these servers with configuration and daily administration rights. I admit – working with hardware is one of my passions, and the ability to do physical administration is becoming increasingly rare these days – mainly due to the constant changes associated with virtualization and the move toward cloud solutions.
Virtualization and the cloud are now the backbone of many companies’ operations. What does it look like at PAYBACK?
As I mentioned, in our company we went through practically the whole path. With the development of the project in Poland, the demand for computing capacity increased dramatically – for this reason we began to use solutions based on hardware virtualization. It involves replacing classic units mounted in traditional 19-inch racks with high-performance blades consisting of multiple processors and a large amount of RAM, and then creating virtual servers on their basis using, for example, VMware, which is well known on the market. This solution has many advantages, but the most important of them are two: scalability and redundancy. The first allows us to easily adjust the demand for capacity depending on the scale of operations, which translates into reduced costs. Redundancy ensures an adequate level of uptime and adequate protection of both participant data and the PAYBACK infrastructure itself, which of course is in a properly secured data center, which in our case also has more than one location.
The next step in the development of the PAYBACK architecture is the migration of part of the solution to the Google Cloud Platform, as already discussed by my colleague Karol Sosnowski. Migration gives a big advantage: all housekeeping, database maintenance, load balancing, but also backup and cybersecurity – these tasks are on the provider’s side, which translates into a decrease in operational costs and increased reliability of PAYBACK Program operations. The cost to a company that changes its architecture from on-premises to cloud solutions is a change in the IT staff structure: there are fewer and fewer typical “hardware guys” and more and more developers on the company’s side. Our international platform is present in many markets – not only in Europe – and is supported by four Country Architects. I am fortunate and honored to be one of them.
Being one of four people in the international market is a big responsibility. What do you do daily?
At PAYBACK, I am responsible for designing and implementing business solutions – on my own or in cooperation with a team of developers and DevOps, including Mariusz Wieczorek. I use currently existing paths and tools in an optimal way, so as not to “reinvent the wheel.” I am also responsible for the approval of packages that enter the test environment and then production. Knowing the IT architecture is very helpful in this, as it gives me a cross-sectional knowledge of how the whole system works.
What is the process of implementing new solutions at PAYBACK?
The whole implementation is extremely laid out – optimized, agile processes are the basis for success. Regardless of whether we are to implement completely new functionalities or improve existing ones, the whole thing happens in a well-thought-out way. All deployments take place at equal intervals and are spread out in advance for the whole year, so I am able to pinpoint the date of implementation of solutions. Development work usually takes place in 2-week sprints. This system allows for efficient communication between teams working on specific artifacts. At the end of the sprint, when all developers have finalized their work and exported their packages, they prepare the RLC (Release Candidate). It’s up to me to make the final approval and release the deployment, or RFD (Request for Deployment) to the test environment, and then, after fixing any bugs – “to production”. Jira helps manage the project – and especially the issues that need our attention.
What kind of technology stack should the person working with you have?
PAYBACK is an extremely diverse environment. We have a lot of specialists working for us from all sorts of fields – front-end developers, mobile application specialists, data scientists, Java developers and even .NET framework experts. Due to the nature of my job, which is basically taking care of the very heart of the project, called core, as the most desirable skills I can point out knowledge of DevOps tools such as Jenkins for running pipelines, Groovy for writing them, Python for creating smaller and larger tools, Ansible and Terraform for deployment, and of course familiarity with Docker / Kubernetes. What is there to say – containerization is already a staple.
– Dariusz Tomaszewski, Principal Architect