NoMo

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.

Challenge

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

dot-net Created with Sketch. .NET
Objective-C
Microsoft Azure
bank-integrations Created with Sketch. Banking integrations
dev-ops Created with Sketch. DevOps

Code & Pepper services for NoMo

Step up your mobile development game

See next case study

LUSID

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

Nimbla

Invoice insurance may not sound like a breakthrough, but it becomes much more powerful thanks to InsurTech solutions. With Nimbla, companies can check potential customers credit rating and eliminate risky decisions. Read on to learn about the solutions Code & Pepper contributed to the platform, including UI/UX design, end-to-end development, and cloud architecture.

About Nimbla

Nimbla takes factoring services for small and medium businesses to the next level. Apart from invoice insurance, it provides users with a possibility to view the credit rating of their customers in order to prevent losses and ensure safe cash flow. The platform is cloud-based and accessible both from web browsers and mobile devices (iOS and Android). The goal for Nimbla is to facilitate and speed up the insurance proceedings for companies of all sizes.

Challenge

Initially, we worked on one part of Nimbla, which was a monitoring solution for codes and policies for invoices, making them all viewable and accessible in one place. For this stage, we delivered UI designs based on frameworks received from Nimbla. The first completed project encouraged the client to continue working with us on further challenges. We went on with the designs and started the development, which included:

  • Implementing library components
  • Incorporating features such as tables, buttons, menus, etc.
  • Deployment to cloud environment

Solutions for Nimbla

The team of 6 included full-stack and front-end developers as well as DevOps and cloud experts. The whole app architecture and code was built from scratch by Code & Pepper. Before picking the technology stack for every project, we discuss different possibilities and analyse the pros and cons before we propose our choices to the client.

Reusable UI components

UI components are implemented using React and ReactStrap. All components are reused across multiple applications, which is why there’s a point in keeping a separate repository and make sure there is a relevant API defined to avoid hard dependencies with any other application.

Tailor-made technology stack

We replaced commonly used technologies with new solutions, which proved to be a better choice for Nimbla. Here are a few examples:

  • GraphQL (instead of RestfulAPI) – a more flexible API with frontend in control, a type system and out-of-the-box API documentation
  • Koa (instead of Express) – the next-generation framework for Node.js
  • TypeScript (instead of pure JavaScript) – helped us catch bugs early thanks to strong/static typing

Scrum project management

To keep the communication and development progress in check, we are strong supporters of Scrum methodology and fluent communication between the client and the team. Thanks to daily updates, sprint planning and retrospectives we are always on the same page. We stick to selected communication channels – JIRA and Slack – which help us find important information quickly and prevent chaos in cooperation.

Code & Pepper provides high-quality, reliable code and designs. Flexible, responsive, and dedicated to client satisfaction, working with their team continues to add a lot of value to the business overall.

Aurélien Bonnel, CTO at TradeCrediTech (Nimbla)

Technologies and solutions for Nimbla

dev-ops Created with Sketch. DevOps
cloud-infrastructure Created with Sketch. Cloud Architecture
graph-ql Created with Sketch. GraphQL
React
Node.js

Code & Pepper services for Nimbla

Want to create an app your customers will trust?

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