SVEA EKONOMI • CASE STUDY
Expense-sharing made easy with Svea Payd
Leading and designing backend system for Svea’s promising new app “Payd”.
We helped Svea develop their promising new app “Payd”, which enables people to share expenses and settle debts – in an easy and effortless way.
Svea Ekonomi is one of Sweden’s leading providers of financial and administrative services. A partner in payment and financing with an entrepreneurial mindset.
“Payd” is a product designed and developed by Svea Ekonomi, but there are not many visual graphics connecting them – “Payd” is built to be presented by its own brand.
Leading and designing backend systems for Svea Payd mobile app.
It started with building an MVP – then iteratively improving it – with decisions based on user research.
Just like with many startups, it’s essential to have an agile way of working – and make continuous adjustments based on changing requirements.
A test-driven and agile approach with several backend releases every day.
Frontend development (WordPress campaign page)
To enable quick releases and a constantly changing set of requirements, we work agile (Kanban) and test-driven with fully automated release processes.
Currently, the backend team is composed of two team members, Christoffer and Tommi, both experienced VNTRS developers.
They were involved in grooming sessions and planning meetings and thus have been involved in shaping the app.
Some of the technologies used to build backend systems with Svea Payd:
A functional-first programming language on the .NET platform with an algebraic type system that is great for domain modeling.
Onion architecture provides a clear separation of layers that improves testability and maintainability.
Event sourcing ensures that all changes to the application’s state are stored as a sequence of events.
This helps us act on events, for example, to send push notifications or emails, build statistical views, and/or present event logs in the app. This also helps us troubleshoot errors by replaying events to the specific point in time where the error occurred.
The backend consists of several independent services that communicate asynchronously by publishing and subscribing to events using NServiceBus.
A ubiquitous language between users, developers, and domain experts helps give a clear understanding of the domain, and facilitates communication between teams.
Other technologies used
Event sourcing, CQRS, Domain-Driven Design (DDD).
Programming language: F# (.NET Core).
Database: Microsoft Sql Server CI / CD: Azure Devops and Octopus deploy.
This project is an excellent example of how VNTRS agile and test-driven approaches can be applied just as successfully in larger companies.