Product Experience

Many individuals lack understanding of fundamental financial concepts such as budgeting, saving, investing, and debt management, to address this pain point. We aim to develop a comprehensive and user-friendly product to track personal expenses, savings, and investments for users. The product features focuses mainly on tracking expenses, savings and budgeting to meet users financial goals and make informed decisions.


Problem Space 

Many individuals lack understanding of fundamental financial concepts such as budgeting, saving, investing, and debt management, to address this pain point. We aim to develop a comprehensive and user-friendly product to track personal expenses, savings, and investments for users. The product features focuses mainly on tracking expenses, savings and budgeting to meet users financial goals and make informed decisions.

Problem Background  

Between 1997 and 2007, average undergraduate student loan debt rose from $9,250 to $19,200—a 58% increase after accounting for inflation. Average debt for college students graduating with loans rose six percent in just one year between 2006 and 2007, from $18,976 to $20,098 (Reed 2008). Recent survey results also suggest that these debt loads are causing anxiety among young people and influencing major labor decisions: a 2006 USA Today/National Endowment for Financial Education (NEFE) poll of young adults ages 22 to 29 found that, of those with debt, 30% said they worried about it frequently; 29% had put off or decided against furthering their education because of debt; and 22% had taken a job they would not have taken otherwise because of debt. There are other potentially costly consequences of accumulating high levels of 4 debt early on, such as bankruptcy (Roberts and Jones 2001). 

User Pain Points & Research Insights

Using quantitative analysis, we conducted  interviews with 9 users in total to understand their pain points as stated below.

  • Budgeting: Balancing between necessary and discretionary spending.
  • User-Friendly Tools: She prefers intuitive tools that integrate seamlessly into her daily routine.
  • Unpredictable Income: Finds it challenging to stick to a budget when income varies significantly, such as during her time working as a server.
  • Lack of Comprehensive Budgeting Tools: Finds current banking apps insufficient in providing detailed budgeting features.
  • Overspending Temptation: Temptation to overspend on dining out or shopping.
  • Categorization Inaccuracies: Inaccuracies in automatic expense categorization in apps.

Solution Explanation

1. Tracking Expenses:
  • Scenario: A user links their bank account and credit cards to track expenses in real time.
  • Definition of Done: The app successfully fetches transaction data, categorises expenses automatically, and displays them in an easy-to-read format. Users can manually recategorize expenses.
2. Setting and Managing Budgets:
  • Scenario: A user sets a monthly budget for different categories (e.g., groceries, entertainment).
  • Definition of Done: The app allows users to input their budget limits and tracks their spending against these limits, providing real-time feedback on budget status.
3. Saving for Goals:
  • Scenario: A user sets a financial goal, such as saving for a car or paying off a student loan.
  • Definition of Done: The app helps users allocate a portion of their income towards their goal, tracks their progress, and provides suggestions to adjust spending to meet the goal.

Lofi & Hifi Mockups
Iterative Design Learnings

Technical implementation

  • Frontend Frameworks/libraries: React, HTML, CSS, Bootstrap, Redux/toolkit/query, chart.js / react-chartjs-2 
  • Backend Frameworks: Postgresql, Django, Ninja JWT, Python
  • Detailed Technical Implementation of PennyAM Project on AWS: View here
  • Technical Challenges of Implementing PennyAM Project (on AWS): View here

Future Steps

We hope to continue with the project and build more features along the way to resolve financial struggles among young professionals. We learnt that customers would want a product that is user friendly and able to track their expenses.

Learnings

Product Manager Learnings:

Mercy Ojini

Co.Lab was exciting for me, having a real life scenario and working along a cross-functional team to build an MVP was the highlight. With so much enthusasism and a truly dedicated team, I learnt that it is always easier to start with the basic features and put users in mind when working on a product.

Designer Learnings:

Grace Gwe

Grace Gwe: as I delve deeper into the world of app design, I've come to appreciate the invaluable role of the feedback loop in our process. Working closely with developers and product managers has taught me the importance of open communication and iterative design. By constantly seeking feedback and refining our approach, we're able to create a product that truly resonates with our users. It's a humbling experience to realise that mastery in this field isn't about knowing everything upfront, but rather about embracing the journey of continuous learning and improvement. Each iteration of PennyAM is a testament to the power of collaboration and the value of a feedback loop. By actively seeking input from all stakeholders, we're able to identify areas for growth, address potential issues, and ultimately deliver a product that exceeds expectations.

Designer Learnings:

Jo Sturdivant

  1. Adapting to an Established Team: Joining the team in week 6 of 8 was challenging, as I had to quickly adapt to existing workflows, dynamics, and goals. This mirrors real-world situations where you often integrate into teams mid-project, and flexibility is essential.
  2. Work-Blocking for Efficiency: With only two weeks to complete the project, I learned the importance of a structured work-blocking system. This approach allowed me to manage my time effectively and meet deadlines under pressure.
  3. Making Data-Driven Design Decisions: Unlike my past projects, I had to rely on research conducted by others. This was a valuable experience in using pre-existing data to guide design decisions, helping me focus on the core insights without starting from scratch.

Developer Learnings:

Victor Bonaruk

Victor Bondaruk: Throughout the Penny America project, I gained invaluable experience working as a backend software developer while collaborating closely with a frontend developer, another backend developer, UI/UX designer, and product manager. Although my primary focus was backend development, I also took on the challenge of improving the frontend and deploying the full-stack application to AWS, which greatly expanded my skill set. One of the most significant learnings was mastering the Django framework, particularly integrating complex APIs like Plaid and implementing secure JWT authentication.

These technologies were mostly new to me, especially dealing with access tokens and the Plaid API, and working through their intricacies deepened my understanding of secure API development and user authentication.  This experience helped me build a strong foundation in backend development and secure data handling. Additionally, I had to step into the frontend development space, learning and applying React Redux to manage application state effectively. I redesigned several components to behave differently and provide enhanced analytics to users.

This hands-on experience with both backend and frontend development deepened my understanding of how these layers interact and the importance of creating a cohesive user experience. Deploying the full-stack application on AWS was another critical learning curve. Managing the deployment of both the backend and frontend, ensuring they worked together seamlessly in a production environment, and securing the application with SSL/TLS encryption and a custom domain, https://pennyamerica.com, taught me the importance of infrastructure, cloud services, and scalability considerations. While I primarily worked with a single EC2 instance, this experience exposed me to the foundational principles of deploying scalable applications, preparing me for future scenarios where scaling might become necessary.

Overall, this project was a comprehensive learning experience, helping me grow as a full-stack developer and equipping me with the skills to handle both backend and frontend challenges, as well as the deployment and integration of a complete application. The collaborative nature of the project also reinforced the value of teamwork and effective communication in delivering a successful product.

Developer Learnings:

Vanady Beard

&

As the back-end developer, I learned how important it is to create efficient and reliable systems that support the entire application. This experience also taught me the importance of optimising the database and ensuring the backend is scalable and easy to maintain.

Developer Learnings:

Stephen Asiedu

&

As a back-end developer, I've come to understand the importance of being familiar with various database systems and modules. This knowledge enables me to build diverse applications and maintain versatility in my work. I've also learned that the responsibility for making the right choices rests on my shoulders, guided by my best judgement.

Developer Learnings:

Spencer Kim

&

Unavailable

Developer Learnings:

Maurquise Williams

&

  1. Process of Creating an MVP: Developing a Minimum Viable Product (MVP) taught me how to focus on delivering core functionalities balancing between essential features and avoiding scope creep.
  2. Collaboration in a Real-World Tech Setting: This experience taught me how to collaborate efficiently in a fast-paced tech environment, keeping the team aligned and productive, even while working remotely across time zones.
  3. Sharpening Critical Thinking and Problem-Solving Skills: This experience honed my ability to think critically and solve problems efficiently. By tackling challenges and finding quick solutions, I sharpened my decision-making and troubleshooting skills in a dynamic, real-world setting.

Developer Learnings:

Jeremiah Williams

&

All in all this experience was very awesome I learned that in coding with others being transparent is key

Developers Learnings:

Justin Farley

&

I learned how important communication is when working with a team. Communication provides understanding, advice, ideas, and much more. While working with the product team, I’ve found that communication keeps everything flowing smoothly. Working with a team also showed me that every member brings something different to the table and we all have to work together in order to align and meet our end goal.

Full Team Learning

As a team, we were able to work collaboratively and achieve the group goal to build a MVP. We believe everyone role is unique and important for the over all sucesss.