APRIL 25, 2019
8 min read
“I have learned that success is to be measured not so much by the position that one has reached in life as by the obstacles which he has had to overcome while trying to succeed.” — Booker T. Washington
Reading the personal success stories of well-known people is enjoyable, interesting, and so inspiring. However, there are two points that readers need to keep in mind while reading. The first one is that you will never know the real conditions and pitfalls the person have had to achieve that success. And the second notion is that you can’t apply that experience in practice to your life. A lot of people and companies speak about the challenges they accomplish. Reading this we get more motivated and ready to take actions. But still, how many opportunities have we let to pass by? Many. Among the main reasons, there may be a wrong team, wasted time, and inability to bear risks.
The reason we would like to speak about the challenges here is the project that we are working on right now. Dashdevs company develops Dozens — a challenger electronic money and investment firm. However, it is fair to say that this project stimulates us as a company every day. It’s been a year since we’ve started working with the product. Nevertheless, it seems that we have been working in the digital branchless banks’ niche for ages. The big-scope project aroused from the original small client’s request, we took this chance, and Dozens had already shaken up our lives.
Let us tell you a little bit about us, it will help you to understand the scale to the full extent. We, as a software development company, has been already for 9+ years on the market. Since our first day, we, in a company, have chosen the strategy for growth. To put it in words — take a challenge, achieve it, and have fun. Every project brings new knowledge and a new experience. We are using scientific approaches to improve the quality of product development. We apply our expertise to different spheres and markets. This strategy helps us to increase the advancement of solutions. Some of our results are here.
In the spring of 2018, we got a rather small request for the development of a landing page. However, this project began to expand fast. In a month we had a request for iOS and Android native mobile applications, the orchestration layer, and back office panel. Everything must be carried out on a turnkey basis.
- Have we created a challenger banking platform before? No, but we had fin tech experience in our pocket.
- Did we have a description of the scope of a product? Broadly speaking, yes.
- Did we have a full ready-to-use design? No.
- Was it challenging for us? Yes.
- Was technical responsibility that we have taken a bunch of risks for us? Yes.
We weigh up the risks and decided to dive head-on into this product. We created the design for mobile applications (iOS and Android). We designed the architecture of the system in general. The next hard issue was to negotiate with all third-party services and partners. The total number of integrated partners is more than 24 at the moment. All of them had different requirements, and it was crucial to make them work together. We would like to emphasize the dedication and hard work of the clients’ team. The banking sphere is a new field for most of them. Yet, the idea of Dozens actually touches their heart — Dozens will earn in case customers earn. They do nothing by halves. They spent days and nights digging deeper into understanding the market and make a great product. It is amazing how the idea can give a jump start to the team!
There are thousands of banks in the world. It is precisely for this reason we were sure in the achievability of this product. But we faced a bunch of unexpected obstacles. Every product development is challenging to a certain extent. That’s why we were ready to overcome any possible issues.
So, if you are thinking about jumping in fintech, you need to be ready to meet these impediments.
Architecture and management approach to integrations
First of all, every current account must work with card and payment processors, payment systems, card issuer, KYC/KYB processors for releasing the basic functionality of payments. All of them have different requirements for an API and opposite management approaches. There appeared two main issues that blocked the development for some time.
The environments and management approach
Let’s start with the first one — development environments. As far as all you know, the development process requires at least three different environments: for development, testing, and production. Most of our integrations have only two environments: development/test and production. The first thing to check with the environments was to get access to them. Some of them are chained. We could not access the original environments until we got access into the partner-environment. We became aware of it when it was too late. For some environments, it is required to pass penetration testing from the provider’s side (from one up to three weeks in some cases). With a little delay, but we succeed. The environments were set up. However, what would you do if you find out that the list and the structure of API calls are different for testing and production environments? We’ve found this out by cut-and-try. We deployed features on the production, and they did not work. Not a single person from the integrated service’s side has ever told us about this. It was frustrating.
Another big issue with the partners was the so-called managers-driven development.
During the call, the managers of integrated services nodded that everything can be done. We have started the development on our side, but then figure out that our requirements could not be implemented on their side. We needed re-develop everything on our side. Bear it in mind, this situation is worthy of a separate article.
Developing workforce capacity
We start development with a team of 20 people dedicated to this project. Needed to mention here that Dashdevs is not the mono-client company. Starting development of Dozens, we had 30 different products in ongoing production at the same time. We could not just redistribute resources from other projects. This action could bear down the quality of the company outcome. Сonsequently, we start to hire new people for the company. We increased our team in 60 people with the middle-senior level of expertise in 3 months. Our additional advantage hither was that we had already systemized the workflow for development. Precisely this system approach simplified the process of on-boarding for newcomers. Each new member started working with the committed team with the established speed. As far as we had a solid basis, the scaling up and ongoing improvements were smooth and productive.
Synchronizing the parts of the system
The fintech, in essence, contains the Mobile application, the orchestration layer, and backoffice.
By the way, the backoffice is the workplace for support, treasuries, complaints services. They need to have exclusive access and specific features to be able to manage the internal processes in Dozens.
However, the biggest challenge with such a structure like a bank is to check how every change can influence all the rest of the system. For example, if some API requires additional information, we need to add it to the iOS and Android mobile applications, store this information in our database and change the representation of the information in admin panels and Zendesk help plugin. The very soul of the butterfly effect.
Reprioritizing and increasing of the scope
The described startup has begun with the idea — a bank must earn only if the users earn.
We needed to check this hypothesis. There were a few options to test it. A client’s team has created the Community — 300 potential users of the banking application. Dozens’ product team spoke with people about their needs and pains. They received feedback. After the first version of the design completed, we created a clickable prototype. Thus, the next step was the number of focus groups. The Dozens product team did their best while testing the prototype and improved the design. As a result, we figured out that none of our hypotheses was precise. Some of the features are more valuable for the client and business then we thought. And the community generated new ideas all the time. We needed to reprioritize them for development. The most significant result was that the main idea of the application captured the minds of potential users. They liked it. They were waiting for the application release at Google Play and App Store.
Dozens is an application with an attractive design solution as you can see. Though, we started the development of mobile applications without a finalized design. It was a conscious decision of the Dozens’ CTO — Igor Tomych. We had a hyper-tight deadline. If we wanted to fit in, we needed to deal with design imperfections. The only solution here was to agree on the list of the screens and all the elements for these screens. The rest of the style could be changeable. So the designers changed the style guide and icons 3 times to elicit the final design. The versioning system for the design was applied.
We described our design process improvements in this article — How to stop losing designers time.
The results of this product are undoubtedly impressive. Dozens is not only a product. It is an off-the-shelf business system. Dozens applications are in the App Store and Google Play. The most valuable in the creation of this product is the dedication of teams. Product team, design team, development team — we all work as one structure. They put their hearts and souls into Dozens. We understand that working on the project like this is arduous. It takes a lot of responsibility and involvement. The development team works under huge pressure because they are working with real users’ money. Not everyone is ready to take responsibility and expose himself to the risk of making mistakes. Not everyone is prepared for this challenge.
And at long last, we overcame the challenges with our partners. Most of them are really supportive and always in our corner.
In general, we’ve obtained a wealth of experience with this project. It is not good or bad. It is just the experience that allows us to move faster and with better quality.
The most challenging thing for us was to make a decision to jump into it. We are inspired that our experience and fintech background helped us to make the right choices for such a challenger beyond the challenges.
“Without continual growth and progress, such words as improvement, achievement, and success have no meaning.” just as Benjamin Franklin said.
We are very grateful to the clients that help us to succeed.