Before you go, check out these stories!

Hackernoon logoWhat I learned about building a roommate matching website without a tech background by@wu12345

What I learned about building a roommate matching website without a tech background

Author profile picture

@wu12345Daniel Wu

A reflection on building and managing a product

What is Welcome Home (V2)?

Welcome Home is a website that connects high-quality roommates with similar living habits. Housing is absurdly expensive in coastal cities, but having roommates can save you >20% on rent on higher-quality rentals and can build a social support system critical for mental health and opportunities.

But it’s hard to find good roommates because Craigslist does not vet quality roommates and you can waste a lot of time finding people with the same set of location and living habit preferences on Facebook or As a result, Welcome Home helps you use your first- and second-degree connections — verified by linkedin, facebook, and past references — to find compatible roommates easily.

While I built out the initial prototype myself, I’m currently working with freelancers. Given that I’ll be working at a law firm, I’ll have less time to dedicate to the project, but I still believe that there is potential in helping people build healthy communities in their home, which is currently a frustrating process to build.

Note: this is a second iteration of Welcome Home; the first iteration dealt with modular furniture. I decided to pursue this in order to get at the same problem of reducing rent but attempted the simplify the problem and solution.

Why Roommates: Good Personal Experience + Problem Fit

I built Welcome Home because of my experiences as a resident adviser for Harvard undergrads. Lots of my residents complained about finding housing with roommates, and how time-consuming and awkward that process could be, especially when it led to roommate conflicts later. Being a Millennial renter for the last 6 years, I had plenty of friends who struggled with the same things and echoed the complaints of my residents. Finally, as a resident advisor at one of Harvard’s largest dorms, I got to see the community living experience firsthand. Having roommates is the name of the game on campus. I navigated roommate disputes, helped create community norms, and organized events.

Testing that the problem — finding vetted roommates — really exists

Initial Interviews

To set the stage, I started by talking to a few friends about how they found their roommates and how difficult it was for them. Most commented that if they were just moving to a new city or if they didn’t have a strong network, it was time consuming to search and find a roommate. I discovered that people preferred to use their personal networks first (by messaging people on facebook and others), posting on their facebook wall or in facebook housing groups, and using craigslist, if all else failed. Craigslist was the last choice because people on there get a bad rap.

Social Listening

I wanted to confirm these thoughts with a broader sample size. I analyzed quora posts, reddit posts, and other articles online searching “roommate finding tips.” I synthesized the most common concerns in a spreadsheet.


I discovered that people were scared of craigslist for several reasons:

1) People approach craigslist cautiously because they’re trying to find ways to verify tenants. In my analysis of comments about craigslist, I discovered that these were the main strategies people used to protect themselves from bad tenants or roommates. The numbers represent how many people used that strategy.

Common ways people verified their tenants or roommates.

Here are some representative quotes

  1. Don’t be won over by an applicant’s smile and charming personality. Performing a background check will alert you to problems that can be easily hidden during an interview.
  2. NO WAY NO WAY don’t find roommates on craigslist…not unless you can afford an EXTENSIVE background check on someone. People are WEIRD< CRAZY< and just plain scary a lot of times.

Using Buzzsumo, I looked at the most shared articles about Craigslist were not positive.

2) People waste a lot of time on craigslist trying to avoid scams or low-quality messages.

Common complaints about roommates and tenants online

Here’s what some people had to say about using Craigslist

  • “Honestly I’m super happy I was able to find this house because digging through craigslist was a nightmare. Lots of listings without pictures, some listings not in english, lots of listings without relative locations listed. Also lots of craigslist listings that are spam-posted with different wordings/phrasings. Also lots of rooms listed as rooms that are just living rooms or shared bedrooms”
  • “I get bombarded with low quality responses. I mean one sentence responses, responses that sound “shady,” people who sound irresponsible”
  • “I get so many junk replies it seems like I’m getting no qualified tenants.”

3) People wanted compatibility

Common solution to the desire to find roommate compatibility.

Representative quote:

  • Sure, people can still break rules etc. but if you bring up these ideas when you are considering someone for a roommate, you can avoid people that you won’t enjoy living with!


Next to Craigslist, facebook is a huge substitute, especially if people prefer to go through their existing network to find a roommate first. But I saw major complaints there as well.

  1. Facebook isn’t designed to help people find roommates easily. People wasted time emailing back and forth about life habits and verifications. There’s no easy way to filter compatible roommates by location, dates, costs, and neighborhoods.

Here’s what some people had to say:

  • “Super hard to do this when you don’t have any friends who are also looking”
  • “Some people have different living expectations/desires and it can be hard to harmonize location/price/space/amenities/etc.”
  • “In response to the use of facebook groups: *people are not responsive; *you don’t have a way to search for locations or cost; *you can’t find features of a room, like air conditioning easily”

Roomi and Roomster

While these two services focus on posting listings, they categorize themselves as roommate apps. So I decided to check them out. While there are at least 20+ roommate apps, I focused on Roomi and Roomster because they were the market leaders.

Some people also seemed to be scared of these services. Here are some snippets of people’s thoughts on these services. The reviews below have to be taken with a grain of salt for several reasons: (1) I can’t locate the original reviews anymore and (2) it’s a small sample size of people who self-select to give negative reviews of these platforms. Clearly, there were people who had bad experiences on these platforms.

  • Roomi: “it seems over 90% of the listings are most likely spam or are perhaps even manufactured by Roomi to give the appearance of active users.”
  • Roomster: “they have a myriad of fake postings on Craigslist that get you to signup and then nothing ever happens. And if you research, there are numerous accounts of people being misbilled and overcharged when they decide. STAY AWAY FROM THIS APP AND SITE AT ALL COSTS.”

A search for “roomster reviews” led to many of the following tidbits:

After downloading and examining Roomi, I also noticed many Roomi posters had unverified postings like the following and detailed very little about life habits. In my efforts to fact-check the reviews above, I noticed Roomi was clearly not addressing my target renter’s issues with verification and social proof.

Other substitutes and roommate apps

I examined other substitutes, like airbnb and video interviews. I left those out in this write-up due to space constraints. In addition to those substitutes, I examined dozens of roommate apps by downloading them and rating them myself because there wasn’t enough data online about these apps.

Snippet of apps compared along major features important to users.


Based on this research, I realized that that a product had to build on the painful weaknesses of Craigslist, Facebook, and top roommate apps like Roomi/Roomster.

The concerns focused on two features: (1) Verification — building trust that users were who they said they were and were high quality and (2) Good UX — the site had to be designed so that users weren’t wasting time re-hashing the same details, like location, rent ranges, and life habits.

Furthermore, I was keenly aware that I often did not have the background story of those complaining on these forums or on product review sites. But the data I obtained did not contradict my belief that this product would be especially useful for movers to new cities or those with more limited social networks in those cities. Some examples included: newly graduated students, summer interns, and students going to colleges that did not provide housing (for instance, this is often the case for graduate students). As mentioned previously, because of how close I was to campus life, this was also a demographic to which I had easier access.

Testing the solution

Interviewing people and researching the process of how people found roommates generated a lot of ideas for a set of features that could help these users.

Feature Prioritization

I spent the next couple of weeks talking to more people (1) to confirm that this was actually a painful problem and (2) asking these people — often students — to prioritize the feature list I brainstormed based on the key pain points I uncovered.

I conducted a ton of interviews (over 100) and asked if they’d sign up for a service with the features they prioritized.

Then I synthesized my findings into a spreadsheet, discovering that certain features were clearly favored over others. For instance, most people scored seeing mutual friends as one of their top features (ie: a score of 2.58 on average, with 1 being the most desired), while having a mechanism to store video recordings of oneself scored 4.28, one of the lowest desired features. This data helped me understand what features were the most important, especially when I decided to build a product.

Google Adwords

For further validation that the problem was indeed a real one, and that the solution I was offering resonated, I ran a Google Adwords campaign. I targeted my ads on a young, urban demographic in cities like Boston and NYC.

I noticed that my click through rate (CTR) and conversion rate was pretty high, especially when I saw that comparable roommate sites got less than a 1% conversion rate, using Spyfu.

Here was Spyfu’s estimation that the keyword “Looking for roommate” had 1–5% click through rates, while my comparable ad using that keyword went to 11%. Granted, the samples sizes were smaller, but the overall rates seemed much higher than the averages I saw on spyfu.

Stress Testing Risky Assumptions

Finally, I brainstormed the riskiest assumptions that could make the proposed product worthless. I stress-tested these assumptions with various advisers and friends in the startup space.

Here were some that I uncovered:

  1. The pain point is not actually that painful because of the multitude of alternatives presented. Reason this is likely not the case: (1) I’m seeing enough content online about people pointing out how Craigslist is “nightmarish.” Plenty of people are resorting to alternatives, like background checks and references, to deal with the uncertainty of rooming with strangers. (2) Furthermore roommates are likely to just use all the methods at their disposal until they find a good roommate. As long as our solution is relatively cost-less, most renters said they’d be willing to try it.
  2. Given that this is a platform, can we actually get enough traction? Many craigslist competitors died quickly without being able to gain traction. (1) I’ll focus on targeting specific niches I have access to and (2) use referral marketing to increase our growth.

Building design mockups using Marvel App

To make this idea a reality, I started developing design mockups — inspired by Airbnb — and shared these design mockups with my friend who used these as a basis to code the website. Having these design mockups — as well as the research I did above summarized into a pitch deck — greatly helped in synchronizing the first build of the product.

Observing interactions in Marvel App

Using Marvel App, I observed a large number of interactions of my target demographic (renters and students). Based on these observations, I was able to determine sources of user confusion..

For instance, I noticed that users skipped over the initial information at the top regarding rent, location, and other facts — asking where to find it. I ultimately used icons for that top information so it would be more obvious for folks.

Building the website

I decided to code the website’s front- and back-end after my technical friend could no longer work on the project due to his imminent wedding. I created the following in Django, which captured and displayed information into a MySQL database. I learned to build in Django through a mixture of Team Treehouse lectures and help from friends and codementors. It was a hard couple of months, but the payoff was satisfying to see the website working.

One of the big sticking points for the working website was the sign-up flow. I used an existing library that let you authenticate using facebook and linkedin, but those pages skipped over the survey that users could fill out to show their living preferences and other rental requirements. Realizing the importance of the flow, I made sure that the sign-up relied on authentication and then immediately directed to that information because users were unlikely to fill that information again later.

Friends and Strangers have been responding positively

What’s next

This is the part that I’m currently on. I’m now testing the website further. I’m trying to catch additional bugs and then get users to sign up.

(1) Bugs and security. Having taken a few months off to prep for the bar exam and a break afterwards, I noticed that much of my Django learnings deteriorated. Because my day-to-day work as a lawyer will not involve coding, I hesitated as to whether to relearn Django. As a result, I’ll work with referred freelancers and am currently looking for a technical cofounder. I’ll focus my energies on product work, design, and front-end.

(2) Signing up users.

  1. After I fix any remaining bugs, I will follow Andrew Chen’s growth advice and Paul Graham’s user acquisition advice: start with the people around you, do manual sign-ups, and observe.
  2. By trying to find roommates in the Bay Area, I’ve met a lot of people looking for roommates and will build a vetted facebook group of roommates looking for housing. In my posts, I provided the same information in Welcome Home — such as life habits and rental requirements — and asked for references. By creating this free community, I can start providing value to renters, who can be additional users of the website.
  3. Finally, I plan on writing content that can provide value to renters. For instance, I can highlight how I overcame challenges building a roommate group in the Bay Area, and provide other tips and tricks that can assist renters who want to save money and build community.


(1) Simplifying and targeting an accessible market increased feedback cycles.

I learned from my furniture startup that these two things are critical.

  • Simplicity means reducing the number of disparate features offered in order to reduce costs and get a prototype out the door more quickly.
  • My market of graduating students and Millennials was accessible because I was a resident advisor for a Harvard dorm and since all my friends were Millennial renters who wanted to save money.

Due to my product’s simplicity and ease of access, I was able to get a lot of feedback and learn quickly.

(2) Spend even more time in the beginning brainstorming how to simplify and build a manual prototype.

In hindsight, I would have not even involved technology until later and pushed out a simple manual prototype early. For instance

  • I could have produced content and shared it with various student groups, built facebook roommate groups, and connected people I saw on various housing websites to each other.
  • I also could have used a google form to have people fill out basic preferences and create a searchable spreadsheet.

Initially we had the idea of sending out weekly emails, which deterred me from doing things manually because I thought sending out so many emails would be a logistical nightmare. If I had, instead, simply simplified the idea further (see above) and cut the idea of a weekly email, I probably would’ve done the manual job.

(3) Learn basic design and front-end development skills, which increases productivity and credibility.

  • Productivity. My sense of productivity went up dramatically when I learned to do the design, front-end, and templating work. Especially because many coders have specific strengths, if I’m able to take care of the client-facing code, productivity jumps dramatically. My partner who focuses on back-end can focus on doing what he does best, working with databases and servers.
  • Credibility. A friend who is a Google software engineer said: “ Wow your website is sick! I’m still impressed that you built this site by yourself btw from no knowledge.” A friend who designs for Hulu said: “ Yeah I’m really impressed you did this for fun on your own.” Both of my friends eventually helped me figure out prickly coding and design issues.

(4) Build more relationships with back end developers.

It was fun to work with my friend, who has been a software engineer for 5+ years. But given that he had a full-time job, it was hard to get things going more quickly. I brainstormed several options, and eventually decided to learn how to code back-end myself.

It was an opportunity to learn Django. But I burned a lot of time I could have otherwise used to keep iterating and grow the user base. Working with the backend server took a lot of time and a lot of debugging hell. Plus, after spending time away from coding in Django, I lost a lot of knowledge; it’s not like riding a bike for me, and it’s better left to those who do that work full-time. Here are some options I would’ve taken more seriously:

  1. Spend more time finding a highly-vetted freelancer. I was beginning to go towards this model and had some success with this. A freelancer helped me build some features that I had a hard time debugging.
  2. Spend more time building relationships with backend folks. I tried my network first and tried to get referrals to people working on projects, but it was hard to find people with free time. I could have spent more time on founder dating websites and going to meetup groups.
  3. In sum: I would’ve spent more time delegating the work, even though it would’ve been slower and time-consuming to test a bunch of relationships. During the time it would’ve taken the build the site, I could have spent marketing and getting users and their feedback. This underscores, again, the importance of starting with a manual MVP that you have strong control over.

☞ Agree or disagree? Feel free to follow me or send me a note in your Linkedin invitation here.


The Noonification banner

Subscribe to get your daily round-up of top tech stories!