droanify - fun app to reduce your loans
Student loans are impacting so many people in so many ages. With a desire to use creativity and technology to help in some way, suddenly a cool and fun idea came up while playing with Plaid's Liability product sandbox.
What it does
Droanify allows the user to make it fun, challenging and rewarding to reduce or payoff one or more student loans, credit card debts or other loans. Friends can join the challenges in very cool and creative ways to make it faster to lower your debts.
How I built it
droanify is built as a client-server application. The client part is a single-page web app built with React accessing a server built with Node.js and Express. The Plaid API requests are initiated by the user in the client, but go through a separate API on the Node server. The server makes the corresponding requests to the Plaid API host. The client only connects to Plaid using a drop-in module from Plaid that provides a secure, elegant authentication flow for users to connect their bank accounts to Plaid. Hosting everything on Heroku made it easy to deploy after new code changes, much thanks to Git and Visual Studio Code. There are three apps running on Heroku. Apart from the Node.js server and the client-hosted code (a Heroku app was created with a static buildpack especially made for React apps), a PostgreSQL server was created for persistent storage of user and app-related data in droanify.
Challenges I ran into
Understanding how to use the Plaid API was very challenging and took time. Especially for someone who has not worked with FinTech before. Evaluating which hosting platform to use also required some time and effort. The goal was to have short develop-and-deploy cycles. Started with a simple Firebase application set-up. Kept struggling with the not so trivial Plaid documentation. Then found a good container-based application example from Plaid. Decided to aim for Kubernetes on Google Cloud Platform. Finally went with hosting on Heroku. A lot of time went to searching for information and troubleshooting DevOps tasks.
Accomplishments that I'm proud of
Having decided to go with an idea that potentially could help people, especially young people, to get more financial freedom in their future. Proud of never giving up. Told myself while hacking the final nightly hours that “if there’s a will, there’s a way” :-)
What I learned
Security can’t be underestimated. Connecting to an API that allows your application to access real financial data of many users really demands high software quality in your app. Was more a reminder than new learning, but opened up some new thoughts about whether AI can discover new vulnerabilities in FinTech, and mitigate the risks. A lot of responsibility on app developers. Finally, it was really awesome to get some hands-on experience with financial application development. Prior to this, I had too much respect and fear to code a finance-related app. Not as much anymore :-)
What's next for droanify
Analyze the market to see if there is enough demand for droanify. Starting to look for initial capital to cover unexpected (but positive) sudden increase of users which leads to higher server and cloud cost. Monetization features and additional gamification features are already on the droanify backlog ;-)