A review of 2022

Nino Ulsamer
StashAway Engineering
12 min readJan 1, 2023

Aaaaand we’re back! 🎉 After two agonizing years of working from home, our offices are finally fully open again, and we were able to hold non-virtual offsites and meet teammates from other countries in-person with whom we had only chatted via video-calls before.

StashAway offsite in Singapore

It is important to take a step back from time to time and reflect on one’s achievements over a period of time. This post attempts to summarize the value we were able to deliver to customers throughout 2022. I want to give a massive shoutout to everybody at StashAway — it’s amazing what we were able to deliver in a difficult and demanding environment! 💪

2022 in particular held a lot of challenges for StashAway as a company, and more importantly, the team. Global stock markets were in turmoil due to rising inflation and the outbreak of war in Europe. Venture Capital funding for young companies like ours became more difficult to obtain.

Throughout the year we therefore were even more laser-focused on what matters most: to build a world-class customer experience (=UX) on rock-solid foundations (=Investment products, Operations) such that clients entrust us with managing their wealth in the long-term.

Investment Products

In 2022, we delivered on our promise to strengthen our investment offerings within the five countries we operate in. These financial products are primarily focused around enabling clients to personalize their investments further, and rounding out our product suite for different macro-economic environments.

General Investing powered by BlackRock®

We partnered with one of the world’s leading asset managers, BlackRock, to bring a new set of portfolios to our clients. In addition to our existing risk-focused ERAA investment portfolios, these new portfolios aim to provide broad market exposure across four risk levels (Conservative, Balanced, Aggressive, and Very Aggressive) and allow customers to further diversify across different investment strategies.

Risk level selection for BlackRock®-powered portfolios

Flexible Portfolios

For clients who want to customize their portfolios or investment strategies even further, we launched our Flexible Portfolios. As the name indicates, these portfolios can be fully customized from a selection of asset classes. They can be created from scratch or follow curated templates such as a World Index Tracking or Passive Income template.

Flexible Portfolio asset allocation adjustment

StashAway Simple™ Plus

To complement our existing cash management product, StashAway Simple™, and to harness the current interest rate environment, we launched StashAway Simple™ Plus, which in exchange for a slightly higher risk (read: longer recommended investment horizon!) offers a substantially higher projected rate of return.

Comparison of StashAway’s Simple™ products

StashAway Reserve

An exclusive offering for Accredited Investors in Singapore, StashAway Reserve, was one of the main priorities for the team working with our higher net-worth clients. With the launch of Reserve we introduced three new offerings:

StashAway Reserve Look-and-Feel
  1. Angel Investing: in collaboration with XA Network, a large business angel network in South East Asia, Reserve clients can get exposure to promising early-stage start-ups in the region that are supported by senior executives from Google, Grab, Netflix, and more. Individual investors will typically otherwise not have access to such exclusive investment opportunities.
  2. Private Equity and Venture Capital: similar to Angel Investing, this product gives access to an asset class that previously required large minimum ticket sizes that made it difficult to build a diversified investment for most private investors.
  3. Crypto exposure: as an add-on to our General Investing portfolios, Reserve clients can choose to allocate a portion of their portfolios to crypto as an asset class.

Stay tuned as we continue iterating on our investment product offering throughout 2023 and watch out for more exciting developments coming your way!

UX, UX, UX

As a StashAway client or follower you are likely aware of our focus on usability and convenience. Simplicity of use actually means that we are managing complexity on behalf of our clients, without compromising on quality. This is one of the underlying principles that allows us to deliver transparent access to state-of-the-art wealth management. It is something we are never going to cease focusing on, especially in 2023.

It would be impossible to list all the constant improvements that the team has delivered throughout 2022. Some of the examples are:

Mobile Codepush UI

When updating a mobile app, there are two ways of doing so: going through the respective iOS and Android app stores, or “pushing” the code directly to the already installed app. The advantage of doing a codepush is that it is a lot faster, because the typical reviews happening when a new version of the app is published inside the app store can be skipped. Such speed can be important when certain timely updates are required, for example because a critical bug has been fixed.

While previously the app was simply restarting without further explanations, earlier in the year we implemented an interface that explains that there is an update ongoing and shows the progress.

Codepush UI

Thailand NDID

Similar to Singpass in Singapore, our clients in Thailand can now verify their identity digitally — by approving a request sent from StashAway to their bank’s mobile banking app.

Thailand NDID approval

StashAway Academy featuring Nir Eyal

Wall Street Journal bestselling author Nir Eyal shares powerful, science-backed techniques that help people manage distraction and accomplish their goals. It is part of our education efforts with StashAway Academy to help people make sensible financial decisions in their lives.

Nir Eyal in StashAway Academy

New website and logo 🤩

In the beginning of the year we went through the monumental effort of relaunching our website (both the underlying tech stack, as well as the design) and to swap out our logo in what it felt were 100,000 different places. The results though are amazing, and I am very proud to share the screenshot of our revamped website below.

StashAway website featuring client testimonials

Engineering uncovered

This wouldn’t be a worthy engineering blog post if we didn’t also talk about some of the technical advances the team has made along the way while delivering all of the customer-facing features mentioned above.

Addressing tech debt

This is the bread and butter of any serious engineering team. Tech debt is sometimes accumulated on purpose because we want to launch a feature faster, taking shortcuts that we know we will have to address in the future, and sometimes it is accumulated due to lack of attention on parts of the code base, bad technology choices, poor planning, or unforeseen changes in team structure.

Unsurprisingly, the largest amount of tech debt has accumulated in our two oldest and largest services — the appserver that has been serving customer-facing APIs from day 1 (previous article on appserver refactoring), as well as the trading system executing all of our orders and rebalancing our portfolios (previous article on how our trading system works). They have suffered the most from heavy feature development, often under time-pressure, in early times when the future of the company was still uncertain.

In 2022 we decided to systematically address four of our larger services that have accumulated a larger amount of debt.

  • Appserver: serving all customer-facing APIs means that this service is covering a very wide domain and became very difficult to maintain over time. Instead of doing a full rewrite we decided to pull out domain by domain into smaller services whenever we touch particular features. We now have for example broken out a risk recommendation service, a notification service, a funding service, among many others. These new services follow best practices that we have established as part of our Responsible Service Ownership initiative (to be covered in another blog post).
  • Trading system: we have in the past talked about the advantages of the event-sourced approach we have taken to build our Trading system that manages our portfolios, cash movements and trading activities on a daily basis. Some of the downsides of that approach are now starting to become more and more evident: with an ever-growing event log it becomes harder and harder to effectively manage entities, and the need to handle all prior versions of events means the complexity of the system is always increasing, never decreasing, making it difficult to maintain.
    In contrast to Appserver we decided to go for a full rewrite here, because we wanted to swap out the technology stack entirely, and rely a lot more heavily on workflows (more on those later).
  • Admin: this is an internal system that our CX and Ops employees use to handle customer requests and supervise cash or trading operations. What makes it different is that it needs to connect to a large number of other services and domains, surfacing their respective information. Often it became a bottleneck during feature development, because it was maintained by a central team that got overwhelmed with incoming requests, and rarely having the chance to improve the existing features in Admin.
    Our new Admin core platform takes a different approach to solving that problem: we want to give the responsibility of designing Admin pages to the Squads that are owning the respective domains from which data needs to be pulled. We have a central Admin core team that builds generic components that can be used by other teams and easily stitched together to build nice-looking interfaces and workflows.
  • Webapp: as the name indicates, this is the web version of our product. Because of the prevalence of our mobile app it has often become an afterthought in product and engineering efforts.
    We have therefore re-platformed our web application to a modern tech stack and are currently running surveys and A/B tests to better understand how customers are using the web application today and what their expectations are. We considered anything across the spectrum from completely abandoning the Webapp to having full feature parity with our mobile app, and will most likely settle somewhere in the middle where we can ensure the web application complements the mobile app nicely.

API Gateway

In parallel with the refactoring of Appserver (see above) we started having more than a single service exposing APIs to the web and mobile apps. Logically, this now requires a single point of entry, typically referred to as an API Gateway that routes incoming requests to other services and can perform some general features such as authn, audit logs, or rate limiting.

We explored solutions such as Kong and AWS API Gateway but ultimately decided to roll our own implementation of an API gateway, because it gives us the flexibility we desire while keeping things relatively simple for the time being. We may come back to this decision in the future if necessary, but for now this solution works well for our use-case.

Fluxifying all the things

Along with an increasing number of new services that need to be deployed, the team needed a better way of automating deployment pipelines and improving things such as configuration of environment variables and secrets management, to give more power into the hands of developers instead of all requests having to be routed through the platform team (which quickly became the bottleneck).

We decided to go with an GitOps approach using Flux and over the course of the year made significant advances with its rollout, such that at this point most services are deployed via Flux into our K8S cluster already.

There are many advantages that our new setup offers to engineers, some of which include: preview environments, auto-deploy on merge to master, env variable configuration in the service repo, decentralized secrets management, and more.

Datadog

Another focus area for the platform team in order to empower product squads to take ownership of their services in production was to improve observability. We introduced Datadog to give teams a central place where they could see service logs, metrics, build dashboards and configure alerting to their needs.

The platform team also configured several dashboards and alerts that come “out of the box” for each new service that gets spun up, which greatly increases teams’ confidence to release to production — a requirement for a successful CD setup.

Rundeck

Yet another tool that our platform team introduced in 2022 that is hard to imagine life without is Rundeck. We have configured it with several generic jobs such as performing a cURL request within the cluster, or running a SAGA workflow based on a provided CSV file to mass execute certain endpoints or database calls.

A Slack-based approval system is built-in so that requests raised by a developer always have to be approved by somebody else after reviewing the request — an important requirement in the regulated environment that we are operating in.

Workflows

As mentioned already during 2021’s review, we have invested quite heavily into Temporal as a platform to orchestrate workflows that span across multiple microservices.

This focus has continued and in fact we’ve doubled and tripled down on it: the rewrite of our Trading system is based on workflows to manage things such as the rebalancing of our portfolios, or the depositing of funds. Other complex business processes such as the monthly fee charging or AML list screening during the onboarding of customers have also been built using workflows.

To support all this, the team has also built a number of internal tools that can be used to administrate and supervise workflow execution easily.

Data, so much data

Over the course of 2022 we have also made some significant advances when it comes to dealing with data. The focus can be split into two parts: building a data product that can be used more independently by business stakeholders, and enhancing our product analytics capabilities.

Data product

In order to promote a data culture in the organization, we want to enable stakeholders to work with data independently. This helps them do more explorative work, and also forces them to dive deeper into the various challenges that evolve around data.

While previously we relied on Metabase as an open-source tool for anyone to write SQL queries against our data warehouse, this requires a deep understanding of the data model as well as SQL skills, both of which require a fair amount of specialization and cannot be expected from a regular business stakeholder. In this setup, the data team serves a high number of requests from business stakeholders and prepares dashboards and analysis for them.

While it worked initially, this approach doesn’t scale well and doesn’t allow the data team to focus on more important things that help to develop data capabilities of the organization, because they are stuck serving stakeholder requests.

Therefore, we decided to roll out Looker which requires some effort from the data team to prepare various Explores which then, however, can be used independently by stakeholders to build their own dashboards or run their own deep-dives and analyses. It’s a more user-friendly experience and as such reduces the number of requests the data team has to serve directly, and rather establishes a data product that stakeholders can use themselves.

So far the feedback has been positive and we continue moving more and more of our data reporting to Looker.

Product Analytics

With some of the time freed up by moving to Looker, the data team revamped our approach to event tracking inside Snowplow and the way we collect data to allow the product team to build funnel analyses inside Looker and better understand customer behaviour in the web and mobile apps.

This is essential to have more visibility and feedback as we run more and more experiments and build products in a more incremental way to better serve our clients.

We are looking forward to a successful 2023 with the usual ups and downs it will bring — our product roadmap is packed with exciting things, we continue to make foundational improvements to the way we build our product, and we push the boundaries of the impact our organization can deliver every single day!

If you are interested in joining our team, please check out our careers page!

--

--