At Develop.Software, we turn your vision into reality with cutting-edge software solutions tailored to your needs. From sleek mobile apps to robust enterprise systems, our expert team delivers innovation, reliability, and scalability—all on time and within budget. Let’s build the future together. Your success starts here!

Gallery

Contacts

Tầng 3, 45-47 Nội Khu Hưng Phước 2, Phường Tân Phong, Quận 7, Thành phố Hồ Chí Minh, Việt Nam.

+84 909-628-803 (Vietnam)

Published:
June 24 , 2025
Category:
Design / Ideas
Client:
Oceanthemes

Simply DMS

n Canada, individuals with money but limited knowledge or confidence in making profitable investments often choose to deposit their funds with investment funds or banks. These institutions manage and invest the funds on behalf of the clients, aiming to generate returns. Confidential is the company which works with the other fund management company to provide the tool to display, manage and visualize their fund management. There are a lot of sub-system inside of the application but mainly it’s Engine and Evolution.

Evolution: EVO is a desktop application designed for money and data management, widely utilized by investment funds and banks. It features modules for analyzing portfolio data, providing end-users with detailed insights into their investments and profitability. Additionally, EVO automatically generates comprehensive financial reports—quarterly, monthly, and annually—offering a clear overview of cash flow. The application continuously evolves to adapt to market demands, ensuring customer satisfaction by meeting new requirements.

Engine: The Engine is a core feature of Confidential, responsible for calculating investment data, profits, and other financial metrics. The formulas employed in these calculations are highly intricate, necessitating the programmer’s expertise and specialized knowledge.

The client set up an Offshore Development Center with Saigon Technology to help develop Engine and Evolution. Our ODC services delivered tailored solutions to meet their business needs, backed by our exceptional technical expertise that drove the project’s success.

What The Client Required

Main Features

  • Portfolio Management System
  • Document Production
  • Admin panel
  • Investor relationship management
  • Multi-tenant support
  • Evolution

Our Technologies

Specifically, the Saigon Technology team utilized the following technologies for the project:

Old platform: solution based on premise architecture:

  • Angular 9
  • .NET 4.6
  • Signal R – UI to Backend communication
  • Modular
  • Modular / RabbitMQ – communication between services
  • MySQL / SQL Server
  • Teamcity

New platform: Technologies used for Azure solution:

  • Angular 9 + Nx.dev
  • .NET Core 3.1, 5+
  • Azure App services
  • Azure Logic Apps
  • CosmosDB
  • Azure DevOps

Challenges

  • Complexity of Formulas The data calculation formulas were extremely complex, requiring maintainers to have prior specialized knowledge or undergo extensive training. The limited handover time necessitated a quicker and more efficient approach.
  • The differing time zones required the developer to frequently have evening meetings to learn the system and collaborate with the client to fix bugs, leading to potential overwork and fatigue.
  • It’s flagship product, EVO, for money management presents numerous complexities due to its various business modules, many of which have outdated documentation, making it challenging for the team to grasp all aspects of the business.
  • Automation of certain logic and data capture from the engine side poses difficulties for QA in verification.
  • With millions of users, data security is paramount, requiring approval from the client’s managers to access specific modules/environments within set periods.
  • Members need to quickly acquire a deep understanding of finance and investigation techniques.
  • High security standards (ex: background check, working space’s camera access, private working space, VPN, IP address striction)
  • Zero downtime, the faulty operation must be found before the client alerts.
  • Large team size with different positions and levels.

Solutions

  • A senior developer was assigned to learn the source code, initially fix minor issues, and gradually tackle more complex logic bugs. By learning on the job, the senior developer quickly acquired the necessary knowledge.
  • Designated one senior developer as the primary contact for after-hours meetings and client communication. This senior developer would delegate tasks to other developers.
  • Developers would prepare discussion content before each meeting to minimize downtime and expedite the meeting process.
  • Regular meetings with customers to discuss and train on the business, sometimes requiring confirmation of calculation results.
  • Self-learning based on existing systems. Provided list Q&A to PO to have further understanding
  • Team training and thorough impact analysis discussions before introducing enhancements or bug fixes.
  • Due to security concerns, members must work remotely and log in to the client server, which may inconvenience the QA team.