me

/

projects

/

routines

Routines

routines

This was my biggest project at HMB. Routines were a way for users to automate different actions in their bank account using IFTTT like logic. I was in charge of planning and building most of the frontend and backend architecture and worked closely with design and product to get routines off the ground.

Routines were built and updated via a complex graphql schema that autogenerated typescript types and form validation. Users configured routines and when saved our backend processed business rules to make sure that the routine was acceptable. The basic concept of routines was to empower users to automate their financial habits and plan how to utilize their funds ahead of time.

Routines were made possible by the backend core migration of 2022. Our new elixir based architecture was event-driven and for the first time we could process transactions in real time. One transaction or balance change could spawn multiple routines and we utilized a job-queue system called Oban to handle the concurrency and tracing for each job. Each routine had a trigger and an action. The trigger was connected to a given event in the system and would go off whenever we detected an event that met its criteria. The routine job would then queue the routine’s action which would get processed through its given command.

The hardest challenge with Routines wasn’t the complex rules engine or the business logic, it was managing customer expectations. We set out to make sure that every Routine ran the exact way that a customer would expect, it would trigger at the precise event they configured and it would carry out the exact action they defined. After the rules engine was built a significant amount of time and discussion went into each trigger and action. Through employee and customer beta testing we were able to make sure that everything was intuitive and that a user never felt like they lost control of their account. This attention to detail was a key selling point of Routines as no customer would buy into a system that felt chaotic or risky.

My thoughts

Routines were well loved by HMB customers and employees alike and truly felt like a feature that had not been attempted before. While the product itself was successful HMB unfortunately had to shut down its consumer platform before we could see its long term impact. I would love to build something like this again and I desperately miss the 20+ routines I had running to automate my own account. If you are building or are interested in building something like this please contact me!