The Project: EARN is a national nonprofit that sparks financial capability and prosperity for low-income working Americans. The organization’s mission is to break the cycle of poverty for low-wage workers by helping them save and invest in their futures. As the nation's leading microsavings provider, EARN provides families with the tools to build wealth and achieve life-changing goals such as saving for emergencies, college, buying a first home, or starting a small business.
EARN is undertaking the next phase on the development of its micro-saving Web application and associated Websites, Web applications and Web services. EARN’s most pressing business goals include:
- Continuing to optimize the web application and websites to increase the number of clients converting to use our products and services
- Creating custom builds and building out enhanced features to accommodate specific partner/pilot requests, including an administrative portal for partners
- Integrating our systems with other organizations’ APIs
- Evaluating and improving our existing database structure and design
- Improving data access for relevant stakeholders, including internal staff and external partners
- Maintaining systems to ensure dependability and security
- Launching a mobile app version of the product in IOS and Android
Archer Software provides a team of qualified engineers to deliver the project scope. The team included a Principal Technical Architect to lead system design decisions and provided technical specification to the team.
The program is simple. Clients apply online, link their own savings account at one of 18,000 banks, set a personal goal, make deposits, and earn rewards. EARN is currently partnering with over 25 organizations throughout the country to offer the SaverLife (EARN SaverLife Savings Program) to their clients via our standard offering along with unique customized portals providing various incentive structures and program requirements based on partner specifications.
EARN’s Web applications are built using Python and the Django framework with some asynchronous part written with Aiohttp framework. The applications are hosted on Amazon Web Services. The application system is built using REST API. As a FinTech application, the SaverLife is entirely secure, using HTTPS, encrypted data and following the OWSAP standards. The project uses an agile Scrum methodology. All project tools are accessible via the public internet. For planning, requirements and issue tracking we are using Jira and Confluence OnDemand. Web site production, test and development servers and systems are hosted on Amazon Web services.
Technology wise we keep the infrastructure up-to-date and use the most recent stable versions of frameworks and.libraries.
Quality is preserved by combining high unit-test coverage and manual testing.
High-frequency delivery (few times a week) is being done with help of GitFlow and automated creation of test instances with selected code on demand.
- Over the last couple of years we build numerous custom programs and deep integration with 3rd-party services to collect comprehensive data about our users.
- Now the system maintain requests of 137000 users and dozens of millions transactions.
- As amount user data grows, we started straggling from long-running operations so the decision was made to move towards asynchronous operations using Aiohttp framework. Currently we use webhooks and async methods for the heaviest integrations (receiving user bank transactions, sending email notification etc.).
Tools and Technologies:
AngularJS 7.1 / Python 3.6 / Django / Aiohttp / PostgreSQL