I join this project in collaboration with Top Flight Apps - a high-end software development agency in Los Angles.
The project design phase is finished and they need someone to handle the product development phase for the "Machine Learning Credit Underwriting Engine" as well as the "Web Application" and "Mobile Apps".
The team is a mixed of US-based project managers, designers and remote developers in Romania. The clients are serial entrepreneurs in Princeton, NJ.
Based on the client meetings, product descriptions and existing design. I help to map out the product development roadmap and team composition.
We decide to go with a Python Flask Backend APIs, ReactJS Web Front and 2 Native Mobile Apps.
We break the project down into 2 phases:
- Phase I: ML Credit Engine, A Restful API and Web Front End Development
- Phase II: iOS App in Swift and Android App in Java.
Phase I: We have 3 members in the team.
- React.JS front-end is developed by a developer in Romania.
- Backend APIs as well as the Credit Engine is developed by me. I use Flask for the Backend API/Dashboard and Scikit-Learn/Tensorflow
- A data scientist from University of Wisconsin-Madison help to fine-tuned and optimized the engine.
After phase I, we will launch to app to get real users data and feedback before proceeding to phase II. I will be developing both iOS and Android Apps in Phase II.
Backend APIs is built in Flask by me with 2 main components:
- A Restful API with Swagger UI for API documentation and testing. Since the frontend dev is remote in Romania with a different timezone, a well documented APIs is a must so we decide to spend extra time on this. A well documented API will also help the project to be maintainable by different developers in future.
- An admin dashboard is also created using Flask-Admin so clients can view loan applications statistics and approve directly inside the web app. We use Plaid for financial data aggregation as well as ACH transfer and Intuit Developer for accounting data aggregation.
Machine Learning Credit Engine
We get our labeled data from Lending Club dataset. Using this 10 years dataset from Lending Club, we develop a model that converts a credit profile like number of credit accounts, total credit available, age of credit account, credit utilization, etcs into a Credit Rating of A-F.
Based on this categorization result as well other factors like social media influencers score, average banking balance as well as cash flow velocity, we come up with a final Gro Capital investability score.
So we end up with 3 different scores using 3 different machine learning methods. These 3 scores are presented to clients in their Dashboard. The final lending decision is still made by human via the clients' final approval in the web dashboard.