The Intersection of Technology and Transaction Enrichment - Ibai Iturricha - CTO at Triple
More than 10 years of experience in the tech industry, Ibai Iturricha is currently the CTO at Triple. We're excited to talk to him and gain insights into the innovative technology developed at Triple.
Can you walk us through the process of how a transaction is enriched, from start to finish?
Our enrichment process is based on several layers, each one having different steps. Triple is currently offering brand information, categorization, location, subscription identification and CO2 footprint. Each represents a layer in the process. In brief, whenever we receive a transaction, we execute all these layers. Let’s focus on brand enrichment:
First, we try to find information from a cache. Is important to recall that transaction distribution is not homogeneous and that there are merchants with higher usage. If a result is not found on the cache, we try to find it from a set of rules. If we are still without success, we use a custom machine learning algorithm.
How does Triple ensure that its technology infrastructure is robust, scalable, and secure?
From the beginning, our primary focus has been on building a reliable and future-proof foundation that enables us to grow. We've implemented several strategies to achieve this:
Cloud-native architecture: We've adopted a cloud-native approach, using services from leading cloud providers. This enables us to leverage their scalable infrastructure and security features.
Microservices architecture: By breaking down our application into smaller, independent services, we can develop, deploy, and scale each service independently. This approach not only allows for better resource management but also ensures that a single failure doesn't impact the entire system.
Containerization and orchestration: We use Docker for containerization, which helps us package our applications and their dependencies into a single, portable unit. This ensures consistency across different environments and simplifies deployment. For orchestration, we use Kubernetes, which automates the scaling, management, and deployment of our containers, further improving the reliability and scalability of our infrastructure.
Continuous Integration and Continuous Deployment (CI/CD): We've implemented a CI/CD pipeline to automate the testing and deployment of our code. This ensures that any changes to our codebase are quickly integrated, tested, and deployed.
Security best practices: Our team follows industry-standard security practices, such as regular vulnerability assessments, penetration testing, and secure coding practices. We also ensure that our infrastructure is protected with strong encryption, access controls, and network security measures.
Data backup and disaster recovery: We maintain regular backups of our data and have a disaster recovery plan in place to minimise downtime and data loss in case of an unforeseen event.
Monitoring and logging: Our infrastructure is constantly monitored using various tools and services, allowing us to detect and address potential issues before they become critical.
By implementing these strategies, we are confident that our technology infrastructure is robust, scalable, and secure. This allows us to focus on building innovative solutions while being well-prepared for future growth and challenges.
How do you ensure data is used effectively and ethically? Also, how do you manage and mitigate technology-related risks, such as system downtime?
Data usage policies and compliance: We establish and enforce clear data usage policies that adhere to industry standards and legal requirements, such as GDPR.
Data access controls and encryption: We implement strict access controls to limit data access to authorised personnel and use encryption to protect data at rest and in transit.
System redundancy and failover mechanisms: To manage the risk of system downtime, we build redundancy measures and failover mechanisms into our critical systems.
Monitoring: As we talked about before, we monitor our systems proactively. This approach helps minimise downtime, ensuring rapid recovery and maintaining the reliability of our services.
These four points form the core of our strategy to ensure effective and ethical data usage and manage technology-related risks, allowing us to provide reliable and secure services to our customers.
How does the company handle large volumes of transactions and ensure scalability?
We bet on cloud-native architecture from the beginning. This helps us implement auto-scaling mechanisms that dynamically adjust the number of resources allocated (load balancers, servers, etc) to our services. Our infrastructure can scale up during periods of high traffic and scale down when demand subsides, ensuring that we efficiently use resources and maintain consistent performance.
In order to be able to auto-scale efficiently, we needed to design the system following an event-driven architecture, using message queues as buses for communication between different services.
What challenges has the Tech team faced in building and maintaining the transaction enrichment and rewards platform, and how have they been addressed?
I would group the main challenges into:
Data. Our service is data-centric and one of the main challenges was to be able to create and maintain a robust dataset with labelled data. We decided to approach the problem by reducing the dimensionality of the problem by focusing on the beginning of a specific subset of transactions.
Performance. Our clients expect our system to be able to sustain high throughput with low latency. Fine-tuning the system to be able to meet those expectations has definitely been a challenge. Is hard for me to focus on one specific solution to this challenge as this has been a whole team effort, from infrastructure to frontend.
Hiring and creating the culture. Although it is not a technical challenge, creating the team from scratch is far from easy, and I’m pleased with our progress. We are so proud that very smart people decided to join us in the early days.
Additional Information: Enhanced Merchant Data. Effective 14 October 2023, an Issuer in Albania, Andorra, Austria, Belgium, Bosnia, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Gibraltar, Greece, Guernsey, Hungary, Iceland, Ireland, Isle of Man, Italy, Jersey, Kosovo, Latvia, Liechtenstein, Lithuania, Luxembourg, Malta, Moldova, Monaco, Montenegro, Netherlands, North Macedonia, Norway, Poland, Portugal, Romania, San Marino, Serbia, Slovakia, Slovenia, Spain, Sweden, Switzerland, Ukraine, United Kingdom or Vatican City must provide Europe Region. https://www.mastercard.us/content/dam/public/mastercardcom/na/global-site/documents/mastercard-rules.pdf
Let's get started! Contact us today to discuss your project needs.