Serverless App Development With Real-Time Data
Discover how we developed a serverless solution capable of handling high volumes of data while staying cost-effective with cloud infrastructure.
Executive Summary
Achieving Real-Time Stock Data for a Realistic Trading Experience
Our Customer
Uptick Stocks is a US-based FinTech company that provides their users with a streamlined stock market experience. The Uptick Stocks application leverages real-time stock market data and gamifies learning and practicing stock trading to gain the highest profit with no risk to their real budget.
The Obstacles They Faced
Unrealistic trading experience within the application – users didn’t receive stock prices in the real time, but only the numbers from the latest prices update, which led to unrealistic stock experience based on delayed data.
Ensuring cost-efficiency of the app’s IT infrastructure – because Uptick was a product in its early stage, it was a key need to enable the further healthy development of the project.
How We Helped
We developed and implemented the solutions which enabled Uptick to provide a better user experience by establishing a realistic learning environment while effectively managing the application’s operational costs.
The Challenge
Data Management and Minimized Off-Hours Server Expenses
Uptick required a solution to enable real-time stock price updates, calculate user portfolio value changes, and provide real-time UI stock graph updates. The ultimate goal was rendering a lifelike and dynamic trading experience while keeping the operational costs of the solution as low as possible.
The primary challenge was to develop a scalable solution capable of handling a high volume of data (both tracked stock prices and the changes of those prices) while remaining cost-effective in terms of the whole app’s cloud infrastructure expenditure.
The second challenge was that the solution needed to ensure minimized server spending during periods when the stock market was closed, to make the application’s cloud infrastructure cost-conscious and optimized for resource allocation.
The Solution
Scalable Real-Time Data Processing System
Steps that were taken to achieve our goal:
- Utilize AWS services, such as Lambda, AppSync, SQS, Fargate, and a 3rd party financial data provider, to implement an efficient and scalable solution for real-time data processing.
- Implement AWS Fargate service with web-socket connection to data provider so as to track price changes for required stocks.
- Develop an AppSync API for trading/tracking symbols, with Lambda running only when clients are using the app in order to ensure maximum efficiency of using servers capacity.
- Subscribe to web-socket changes and recalculate user portfolios when clients trade stocks, triggering recalculation of AWS Lambda via SQS Event. This allows scalable, on-demand data processing.
- Establish GraphQL on-demand functioning subscription for providing real-time graph data, fed by data through AppSync Mutation Lambda. If no users are interested in particular stocks, there is no triggering or storing of data, which minimizes operational costs.
Serverless App Development with Real-Time Data – Architecture Diagram
Amazon Web Services Utilized
The Results
Based on the implementation we’ve provided, here are two substantial goals that were achieved by Romexsoft’s solution developed for Uptick:
- Providing a realistic and dynamic trading experience for end-users.
- Keeping application’s operational costs low.
Uptick’s major goal was to provide its users with a mobile learning app for trading that would enable them to buy stock with virtual money and take part in challenges with other players.
By implementing a solution that supplied real-time stock price updates, portfolio value changes, and real-time UI stock graph updates, Uptick was able to deliver a dynamic and engaging trading experience to its users.
Another important goal achieved by the solution was to keep operational costs low. By leveraging AWS services, such as Lambda, AppSync, SQS, and Fargate, the solution was capable of processing a high volume of tracked symbol changes while remaining cost-effective.
Additionally, by ensuring that server costs were minimized during periods when the stock market was closed and by establishing GraphQL Subscription, which works only on demand, the solution enhanced operational cost minimization, which is a key consideration for any business.
Why Romexsoft
Delivers Serverless App Development Services
Romexsoft is an AWS-certified Consulting Partner, trusted Software Development Company and Managed Service Provider, founded in 2004. We help customer-centric companies build, run, and optimize their cloud systems on AWS with creative, stable, and cost-efficient solutions.
Our key values
- Delivery of quality solutions
- Customer satisfaction
- Long-term partnership
We have successfully delivered 100+ projects and have a proven track record in FinTech, HealthCare, AdTech, and Media industries.
Romexsoft possesses a 5-star rating on Clutch due to its strong expertise, responsiveness, and commitment. 60% of our clients have been working with us for over 4 years.