Challenges and solutions
When we started the project, the MVP was already there. Implementing a project with a preliminary MVP has both disadvantages and advantages. On one hand, many developers prefer building MVP from scratch to avoid working with a code written by somebody else. Such MVP might have legacy code and bad architecture that would create problems for scaling up. On the other hand, with MVP in place, it’s simpler for developers to understand ideas and user stories, especially when dealing with a complex fintech product, like CityFALCON.
Any project at Sloboda Studio usually starts with our meticulous analysis of customer’s business model. CityFALCON, a financial news aggregator, creates a new market. It aims to democratize the financial news industry and “Bring Bloomberg to the consumer”, giving all investors and traders an equal access to financial information. As any innovative product, it poses many challenges, requires flexibility and super efficient solutions. That is why, first of all, we had to master all the intricacies of FinTech field within the shortest possible time to better understand the nature of the project, avoid unnecessary amendments in the future, and build an efficient architecture from the very beginning.
We did our best to learn basic characteristics about financial assets. Working on this project, we had to think not only as developers, but, to some extent, as financial experts (or financial analysts). For us, it was crucial to get ourselves adapted to the business processes of the client, providing full-scale support to CityFALCON, concentrating not only on ongoing tasks, but on the entire product.
We use Agile practices (standups, retrospective, backlogs, etc.) to ensure timely and efficient implementation of all project’s features. Moreover, our client has direct access to all the developers in the team, and can assign them tasks himself. This partnership approach helps us earn the customer’s trust, maintains positive atmosphere, ensures rapid skills development, and keeps our developers strongly motivated while creating extra value for the customer.
We also work with the distributed team of non-tech staff from India, Israel, Australia and Vietnam, who help Ruzbeh with content management and marketing.
As we started the project with the already built MVP, we knew we would face scaling issues. As soon as first users appeared, number of records in the DB increased a hundredfold, and many shortcomings of the old front-end became obvious, combined with back-end rendering and a lot of asynchronous JS. To eliminate the scaling problems, we added several servers to the DB, reducing the burden on the main server. We also reduced the time for requests processing and the number of requests, added caching of the most frequently used data, and used a load balancer for the web-servers. We took measures to filter spam bots and block useless crawlers. Another solution that helped us avoid scaling issues was splitting the application into separate components (Enterprise API, web, processing engine).
Our solutions were put to the test during Brexit, when the number of DB records rapidly grew by 6 million within several days. We passed this test successfully with our product processing 100 articles per 1 second. Thinking mobile, we also helped to develop CityFalcon mobile app. It offers:
- Up to 10 watchlists with up to 25 financial assets. Your watchlists are synchronised between the app and web-version
- 2000+ financial assets – stocks, commodities, forex, indices to choose from, and the number is growing each day. Customise the news feed as you like – e.g.
- top stories from the last day, latest streaming news, exclude/include tweets.
- 30+ languages