Smart Pension

Kasia Kramnik

Smart Pension is a high-scaling fintech company that has inspired a new approach to pension systems in the UK and abroad. Once their concept of an auto enrolment product proved a huge success, the software team started growing exponentially. The only way to keep up the pace and quality was to hire developers externally and leave further recruitment to an experienced provider. Here’s how Smart Pension ensured quick growth and top software quality by joining forces with Code & Pepper.

About Smart Pension

Smart Pension is a perfect example of fintech revolution brought to the areas normally operated by state institutions and banks. The platform offers automatic pension schemes based on a defined contribution plan, handling the whole process through a digital platform. 


Smart Pension, a UK-based workplace pension platform, started as a product dedicated to their domestic market, but it proved to have the potential to conquer global markets. The new ambitions were followed by an increased demand for new employees – in 2019, the in-house development team growth exceeded 400%. At this pace, the company needed to find new sources of employees with appropriate skills to avoid compromising the product quality. 

Solutions for Smart Pension

“The fast fish eats the slow fish” – agile teams for fast-paced growth

In today’s business, the size doesn’t matter as much as the speed of development – even a small player can win with a big enterprise if it reacts quickly to the changing market. As a consequence, such companies need to find ways to optimise their performance and maintain high standards. One of the ways followed by Code & Pepper and cultivated in Smart Pension was agile team management with such elements as:

  • a dedicated product owner that stays in touch with the client’s team and is available for constant communication
  • project management based on Kanban, put together by a dedicated Agile lead supporting the teams in all locations
  • self-organising development teams working independently, but keeping each other up to date with their progress

Currently, the team built by Code & Pepper is working from two different locations (Warsaw, Kraków). They are fully synced with the core team in London, participating in online meetings on a regular basis.

Strict product requirements vs. customisation

As a fintech product, Smart Pension faces the necessity to comply with strict regulatory requirements. More importantly, the evolution from a UK-based workplace pension to a globally adaptable platform requires constructing features that are highly customisable. To resolve the two matters, team built by Code & Pepper in Poland worked hand in hand with Smart Pension engineers to create an advanced pension forecaster. It is based on complex conditions, which results in just the right level of flexibility to adapt the platform to different regulations.

Continuous deployment for irresistible code quality

Smart Pension has cultivated a strong developer community with high standards in terms of code quality and development process. There was no other way for Code & Pepper but find skilled developers and quality assurance specialists who would follow the client’s requirements including:

  • Clean code – universally compatible with previously developed branches and easily maintainable
  • Continuous deployment – the new branches are merged 20+ times a day
  • Focus on testing – the code features nearly 100% test coverage

Code & Pepper have been instrumental in helping us scale our Engineering Team.  
By building dedicated teams of Ruby Engineers for us they have helped us hire highly skilled engineers into our business.

Martin Warner, Head of Talent at Smart Pension

Technologies and solutions for Smart Pension


Code & Pepper Services for Smart Pension

Extend your team with the people you need

See next case study

Flex Funding

Smart UX and UI design brought to life with Angular for profitable investing and lending

Copenhagen, Denmark
UI/UX Design, Web Development
Angular, Frontend


NoMo is a mobile app for personal finance management – it calculates daily available funds using the customer’s bank data. With personalised in-app communication and focus on regular bank customers, users in the UK can spend their money more consciously and efficiently. Find out how we took care of NoMo’s end-to-end development with the use of iOS, .NET platform and API integration.

About NoMo

The idea behind NoMo is one of those you would call simple enough to become a game changer: provide a 24/7 private finance assistant to everyone, no matter the account balance. The application eliminates banking jargon, overwhelming numbers and other factors of the financial world that scare most of bank customers away. It recommends daily spending limits and shows financial performance based on data extracted from the user’s bank account. The role of Code & Pepper was to develop a high-performing application that will process banking data swiftly and securely.


NoMo owners struggled with their backend and the existing version of iOS app. The code in Java turned out hard to maintain while the part in Objective-C required several improvements. Our key challenges included:

  • rewriting and unification of the back-end code using .NET
  • fixing the issues with Objective-C
  • improving the software architecture
  • finding an optimal cloud solution to keep the application data safe and sound

Code & Pepper provided a team of experts responsible for different elements, including a mobile solution architect, iOS developer, back-end developer, and project manager. Here’s how they handled all the issues and shipped a revived version of the NoMo app.

Solutions for NoMo

Hexagonal architecture in Microsoft Azure

The next thing on our to-do list involved the design and deploy of an optimal cloud architecture. We upgraded the monolithic architecture to the Ports and Adapters pattern (also called hexagonal architecture), which improved the clarity and overall quality. The new architecture was deployed to Microsoft Azure with Azure Notification Hubs used for sending push notifications to iOS devices. We also handled all the DevOps part of the new architecture implementation.

New back-end code in .NET

One of the first significant changes we made in NoMo was rewriting the Java backend in .NET. It seemed natural to adapt the backend to the rest of the app’s code structure – the DirectID Bank Data API, which integrates with banks using Open Banking API, was written in .NET, a cross-platform development framework created by Microsoft. That’s why the new backend was implemented using .NET and programmed in C#. 

Tidying up with Objective-C

Another issue to tackle regarded the iOS code written in Objective-C, including many overengineered elements affecting the application’s overall performance. Instead of rewriting the whole code in Swift, the final choice was to add new features and improvements to the existing code.

We value Code & Pepper for its proactive attitude, responsiveness and transparent way of working. It is reliable and dependable company that we can recommend for other business entities to cooperate with.

James Varga, CEO & Founder at The ID Co.

Project management and cooperation

While working on NoMo, we shared the roles with the client in the development process. The product requirements were not fully described, so product ownership stayed on the client’s side. They also took over the tests of the application with the use of existing bank accounts. 

Technologies and solutions for NoMo

Microsoft Azure
Banking integrations

Code & Pepper services for NoMo

Step up your mobile development game

See next case study


Why nearshore IT outsourcing can work out with an independent team – and how to get it right

London, United Kingdom
Team Augmentation, UI/UX Design
.NET, Angular, Asset Management, Frontend
This website stores cookies on your computer. These cookies are used to improve your website experience and provide more personalised services to you, both on this website and through other media. To find out more about the cookies we use, see our Cookie Policy.