COLAB27 - Web App

HomeShield

Redefining the way Americans care for their homes

Problem Background  

Imagine finally owning your first home. You've completed the paperwork, secured the keys, but soon questions start piling up:

How do I fix my garbage disposal? Can I manage my lawn and garden upkeep without breaking the bank? What exactly is a water heater flush, and how frequently should it be done? What is the difficulty level of a roof inspection? Should I hire a professional or do it myself? 

However, the complexity of these tasks, coupled with time constraints and a lack of expertise, leads to anxiety, financial strain, and diminished property value over time.

User Pain Points

  • Time Constraints: Juggling home maintenance with other responsibilities, such as work and family, can lead to issues being neglected and accumulating over time.
  • Lack of Expertise: Many homeowners lack the necessary knowledge and experience to identify and address maintenance issues promptly, resulting in costly repairs and decreased property value.
  • Financial Strain: The high cost of major repairs and ongoing maintenance expenses adds to the financial burden, causing stress and frustration.
  • Overwhelm and Anxiety: The sheer volume of maintenance tasks, coupled with uncertainty about how to perform them independently, contributes to feelings of overwhelm and anxiety among homeowners.

Why Address This Problem Now?

The timing to address these problems is ideal due to several factors:

  • Increasing homeownership rates: With more people purchasing homes, there's a growing need for solutions to streamline home maintenance.
  • Shift towards preventive maintenance: Homeowners are increasingly realizing the benefits of proactive maintenance in avoiding costly repairs down the line.
  • Advancements in technology: Technology now allows for personalized solutions and access to information, making it easier to address home maintenance challenges.

Research and Validation

We conducted an in-depth online survey for North Americans who were either homeowners or renting. We distributed these surveys via personal connections, LinkedIn, Co.Lab Discord server to homeowners or renters located in the US and Canada and collected 38 responses. 

Data analysis revealed that the highest number of respondents lived with their spouse or partner, and many also residing with children, highlighting the importance of family-focused maintenance features. There was a mix of respondents that were living alone or with other configurations (roommates or parents), emphasizing the need to be inclusive of various household types. 

Furthermore, the majority of respondents fell within the 30-59 age range and were mostly homeowners residing in single-family homes in suburban areas. This demographic profile indicated our primary target audience for our product.

User Feedback:

Cost was the most frequent concern, expressed in numerous ways:

  • The high price of major repairs ("Big unexpected expenses", "Expensive maintenance")
  • Ongoing expenses of upkeep ("ongoing maintenance and cost")
  • Difficulty finding affordable contractors ("how expensive it is")

Many users felt frustrated and overwhelmed:

  • Unsure how to perform tasks independently ("I don't know what to do")
  • Worried about things breaking due to neglect

Even when there was knowledge, time and energy were the major constraints:

  • "Finding the time and energy"
  • Large property upkeep is overwhelming ("So many options")

Landing on a Solution

Now that we had a deep understanding of our users' pain points, desires, and needs, we began brainstorming solutions as a team to form a great product strategy. Transitioning to secondary research, we shaped our product strategy and approach based on the insights gathered.

Our competitive analysis revealed a notable trend: proactive, scheduled maintenance wasn't a core focus of many larger platforms. Recognizing this gap, we proposed a combination of DIY content and a curated professional marketplace to build credibility and suit different customer needs. Subsequently, we prioritized these customer needs and created features based on technical feasibility.

Our developers, Adrienne and Nathanael, then meticulously planned out each of their technical tasks based on the feature they’d be working on, while our product manager, Kat, planned out the product tasks, overall facilitating effective prioritization and management.

Design and UX

Adrienne and Nathanael needed to start building as soon as possible and there was a lot of work for them. So, our designer, Polina, had important questions to answer first:  What screens should we design first? Did we need a visual identity, like a logo and branding? What would our overall design language be?

However, before we could proceed with our strategy, we laid down a sturdy foundation – a comprehensive design system. This design system would ensure consistency across all our screens. Given our tight schedule, we made a strategic decision to prioritize the desktop experience first and build a web application.

This allowed us to deliver the core user flow quickly. Our design system intentionally embodies our service's core values: empowerment, convenience, and peace of mind. Our color palette is deliberately simple: whites, neutrals, and strategic green accents for important actions. This deliberate choice aids in establishing a clear visual hierarchy, directing user attention effectively. Our layouts are meticulously designed to be clean and intuitive, ensuring users never feel overwhelmed or lost while navigating.

The overall aesthetic is designed to feel soothing and organized and mirrors the peace of mind you get from a well-maintained home.

The Solution:

HomeShield's primary user flow is structured as follows:

Homepage:

Our homepage details our method for creating a personalized maintenance list based on the user’s preferences and property type, emphasizing cost savings through DIY resources.We also offer a glimpse into popular maintenance tasks to give the user a preview of what their customized list will include. This simplifies the user experience and guides them quickly towards personalization.

Multi-Step Form with Guided Input:

Our onboarding process simplifies user input by breaking it down into manageable steps. Users select their property type - House, Condo, or Apartment, followed by indicating their amenities and any specific property requirements, such as outdoor areas or a garbage disposal.This guided input keeps users focused and reduces errors. Brief explanations alongside each question builds trust and motivate users to continue the process.

Clear Personalized Task Management:

Our personalized dashboard shows only relevant tasks based on the user's selections. Each task card has a consistent structure, featuring DIY difficulty level, category, and recommended frequency for completion. This design promotes fast comprehension and easy prioritization.

Individual Task: 

Upon selecting an individual task, users are presented with options to view a DIY video tutorial and access a list of required materials. We also provide a breakdown of the costs associated with DIY versus hiring a contractor, along with a list of recommended contractors. This design prioritizes clarity and ease of use, encouraging continued utilization of HomeShield.

Lofi Mockup: 

Hifi Mockup: 

Iterative Design Learnings

We gathered prototype usability testing feedback through user interviews with 8 participants from North America. Polina led the effort by prioritizing and categorizing each feature based on severity and frequency of issues mentioned by users. Using this matrix, we narrowed down our focus to three key options for incorporation into the launch: implementing a task frequency badge feature, introducing a "mark as done" checkmark functionality, and enhancing the homepage's immediate engagement. We were pleased to receive overwhelmingly positive feedback, with an average rating of 9 out of 10 from users.

Implementation Details 

Technical implementation
  • Where is it hosted? It’s hosted on Netlify and Render.
  • What is your tech stack? Our tech stack includes both JavaScript and TypeScript for front-end development, with React as the framework. On the back-end, we used Python with the Flask framework, supported by SQLite for the database.

High level journey of a request:
The user completes questionnaire -> User data sent to api -> Flask returns a task list based on user input -> React component maps over task list to create dashboard

Technical challenges

What was the hardest part of development?
  • Back-end: The hardest part was finding a suitable database provider for the small size of our product.
  • Front-end: Having integration issues with POST/FETCH requests.

Does your app have any scaling issues? 
  • Back-end: While SQLite is our database of choice due to its small footprint and the small size of our application, it could cause scalability issues as the memory footprint grows with the database. 
  • Front-end: Regarding scalability concerns, the majority of the frontend is already established, and with the task display being efficiently mapped over for rendering, scaling it should be straightforward on the frontend. Adding in new tasks and images as well might be a bit tedious, we would like to find a way to automate the process.

What are some key takeaways?
  • Back-end: The need to fully mapping out the data that needs to be stored in the database in order for the application to operate. Understanding what data needs to be stored, how it will be used and how it relates to other data points allow a more simple approach to writing the code that builds and interacts with the database.
  • Front-end: Understanding the importance of Tailwind CSS for designing responsive user interfaces to cater to a wide range of devices and screen sizes. Recognizing the significance of collecting user data and crafting user stories to understand user needs, preferences, and pain points. Utilizing this information to prioritize and develop core features that align with user expectations and enhance the user experience.

Future Steps

Recognizing the personal relevance of this service to our own needs, we want to try to keep going to its ongoing development with the aim of utilizing it ourselves. Additionally, the positive reception and feedback we've received serve as further encouragement to continue our efforts.

Videos

Learnings

Product Manager Learnings:

Kat King

Improved Iterative Skills: Each week, I picked up valuable skills like managing one-week sprints and using Agile methods for quick product iterations and timely feature delivery.  Data-Driven Decision Making:

During our primary research stage, I learned to find important insights from user data to shape our product strategy.  User Insight Development: Lastly, conducting user feedback sessions helped me develop hands-on skills to understand user behavior better with our product.

Designer Learnings:

Polina Vinnikova

Seeing through different lenses: Learning to see my design choices through the eyes of developers and product managers made me a better designer. Teamwork and agile methodology: I loved working within an agile system!

The daily standups, regular meetings, and retrospectives kept us focused and helped us learn from our mistakes quickly as a team. Collaborative workflows: Tools like FigJam helped me lead collaborative sessions on brainstorming, feature prioritization, and usability feedback.

Developer Learnings:

Adrienne Daniels

Throughout my experience, I gained valuable insights into product development by actively contributing to a cross-functional team. Working with Agile Methodologies provided me with a structured framework to effectively manage projects and adapt to changing requirements, fostering a collaborative and iterative approach to development.

I developed a comprehensive understanding of how the role of a Software Developer integrates into a cross-functional team, where collaboration, communication, and shared ownership are key principles driving success.

Developers Learnings:

Nathanael Turley

&

Cross-functional Teamwork: Through my first experience on a development team, I've learned the power of cross-functional teamwork. Working closely with our product manager and designer, I realized how combining our diverse skill sets can efficiently drive the creation of a Minimum Viable Product or MVP.

Importance of User Stories: Learning how to break down user stories into executable technical tasks is essential in software development. It improves understanding, focus, collaboration, and progress tracking throughout the development journey. Feature Prioritization: “I've learned that feature prioritization is vital in software development. It helps allocate resources efficiently, ensuring high-value functionalities are delivered first. This approach maximizes product impact and enables effective adaptation to evolving requirements.

Full Team Learning

Overall, our team journey was both challenging and immensely rewarding. As we faced strict deadlines and limited time, we dedicated long hours and made personal sacrifices to develop our product. At times, some of us even faced imposter syndrome and made us question our own abilities.

However, through our hard work, we gained invaluable experiences and had the opportunity to collaborate within a cross-functional team. We learned the significance of asynchronous updates and maintaining constant communication. We also learned that great products are built by teams, not individuals. Through this all, we were able to transform a mere idea into a full MVP in just 7 weeks.