#1 Challenging the Status Quo in Tech
Hello! I am Alison, Technical Author at Judopay. I am passionate about creating content and taking complex information and communicating it clearly and concisely.
I am extending my passion for technical content, by promoting the experience and achievements of Judopay’s engineering team to the wider community, by facilitating a series of engineering blogs. I would like to invite you to join me on the first of Judopay’s engineering blog series.
Introducing… Judopay and how we challenge the status quo in tech.
Judopay is a payment solution, focused on mobile and web-based payments. Merchants integrate our technology with their mobile app or website, in order to take payments from their customers.
We pride ourselves in offering our customers the solutions to provide:
- Multiple payment options
- A seamless checkout process
- A secure, compliant and regulated service
- In-depth reporting tools to understand your customer’s journey
- The latest innovative technology features
- Customisable checkouts
- A smart routing initiative
Of course, we are not unique within the payments industry striving to help merchants with their in-app, mobile and online presence, so they can grow their revenue. We need to constantly meet our merchant's expectations on these and balance rapid feature delivery with solutions that also perform.
When they go wrong, these are the issues that costs merchants their business revenue and damages client relationships.
What sets us apart is having built a next-gen payments platform, running exclusively on cloud native principles. This enables Judopay to process our customers' payments with:
It is what's under the hood that matters
Similarly, regardless of a slick UI/UX, a technology platform is also only as good as what is under the hood.
Unfortunately there is a prevalence of technology platforms in the industry that underperform, causing:
- Inadequate resilience
- Fraud & security exposure
- Poor system performance
- Restricted innovation
In a world of payment innovation and ever-evolving technical initiatives, why does underperformance in technology still happen?
When quick wins create complexity
Businesses exult themselves rolling out the latest products, delivering innovative solutions and payment features, commonly focusing on their front-end development to vie for merchants.
But what is really going on ‘under the hood’?
David, Judopay’s Head of Infrastructure and Automation Engineering has observed:
“A common cause of under-performance is an accumulation of quick wins which increase the technical debt of the system. Eventually this debt builds up to a point where it’s almost impossible to get anything done.”
With various projects, processes and different developers working earnestly to get a new feature out, it’s easy for the back-end to become agonisingly complex.
In summary, there is a conflict between:
The longer a business strategy is driven by time to market pressures, the further delivery moves towards an inflection point where tech debt catches up. These quick wins will no longer be achievable with systems hindered by:
- Complex, redundant, duplicated code
- Long, risky release cadences
- Concerns that changes made may break something else
- Increased downtime or deployment windows
- Siloed & incomplete domain knowledge
- Managing & scaling availability
- Numerous manual processes
- An unreliable failover process
I asked David about his thoughts on the topic of technical debt.
It starts at the top…
“Addressing the problem of technical debt is a huge challenge for all tech teams, that requires a paradigm shift at every level of the business.
Leadership teams need to understand the long term cost of quick wins and consciously gear the business to take on the appropriate level of technical debt. Sometimes, it is completely justified to take quick wins at almost any cost. It doesn’t matter how beautiful the code base is if the business runs out of money before it could launch.
However, as a business matures it is easy to lose track of how much technical debt has accrued, and wonder why you are no longer able to deliver features at the same pace. Leadership must begin to increase the amount of resources allocated to addressing technical debt. Without their support, the team will continue to drown in new feature requests, further increasing the debt until it reaches a critical mass.
Budget time to address technical debt…
Next, tech teams must purposely budget in the time to address technical debt, by:
- Setting aside a percentage of every sprint to allocate work to reduce tech debt.
- Conducting regular retrospective sessions with the engineers.
- Identifying the biggest system pain points and develop a long term plan.
- Taking the time to establish the strategic direction for the IT team.
- Transitioning towards the strategic goal one step at a time.
- Not being pushed too far off course when new feature requests come in, by keeping one eye on that long term direction.
Help make responsibilities clear and reduce complexity…
Be familiar with the concepts of domain driven design and microservices and where they may be able to help your organisation. They needn’t be applied to every situation, but we firmly believe in the value of taking the time to understand the domains of your business, and building strong boundaries and contracts between these domains. This, in turn helps make responsibilities clearer and reduces complexity.
Sometimes, technical debt can reach a point where the interest you are paying outweighs the cost of starting again from scratch.
At Judopay, we found ourselves in this position in 2018 and have spent the last 5 years rebuilding our core systems, transitioning from a monolith, to a microservice based architecture. It has been a long journey, but we have learnt a lot along the way.”
A better way forward…
At Judopay we also value rapid time to market capabilities, but have based our technology strategy on being able to deliver quickly in a consistent and sustained basis. While exceptions are necessary, we believe that applying a philosophy of avoiding needless complexity, maximises long-term agility enabling a business to quickly:
- Pivot in response to changing market conditions
- Roll out feature enhancements
- React to bugs
The next blog in our series will explore how we transformed our tech stack, creating Judopay’s Next-Gen Tech Platform.