Like much of the country, I was bit shaken by the 2016 election. It seemed clear that the rights of many underrepresented Americans were going to be challenged in the near future, and I wanted to do something to help the organizations that worked to protect these rights. The standard paths to helping seemed limited to (a) making a donation or (b) volunteering data entry or phone banking time.
I thought there might be an opportunity to help these organizations build better tools to amplify their voice, manage their information, or engage their communities. The goal of Project 501 was to provide a path for individuals to volunteer their professional skills to help non-profit organizations.
I started Project 501 while I was working at Catalant. Catalant is a platform for enterprise companies to connect with independent business consultants for project-based work, and there were already 30,000 independent experts competing for work on Catalant.
There were obvious parallels between Catalant and what I had envisioned for Project 501, and I thought it made sense to position Project 501 as an offshoot product under Catalant. This seemed to make sense for a few reasons:
The simplest form that Project 501 could have taken would have been two forms (one to collect volunteer info and one to collect project info) and a newsletter. I didn’t think that would be compelling enough to pitch to Catalant, so I decided to build out a platform with a simple set of features:
I had a good amount of borrowed knowledge from working on Catalant, so I was able to quickly mock up a set of wireframes to guide my development of this project.
Once I had a rough idea of what I was building, I whipped up a rough style guide (just a few font and color choices), and then started building the platform.
Rails made most of the required features pretty straightforward to build. I used the Devise gem to create a sign in / sign up / forgot password flow. All users joined by default as volunteers, but they had the option to create or join an organization, and then post projects on behalf of that organization. Volunteers who expressed interest in a project were associated to the project through an Applications table, allowing me to provide a dashboard for organizations to easily review all candidates for a project.
The trickiest piece of the platform was the discussion tool between users. I probably should have looked for third-party services to do this, but ended up hand-rolling an inbox. I setup a Conversation model which took two users as participants, and a conversation could have many Messages. I also setup Sendgrid to send an email to the recipient each time a message was sent.
New organization form
List of active projects
Project detail view
Conversation between a volunteer and project owner
All in all, the initial MVP took me about three weeks of nights and weekends to build. Once I thought the platform was stable enough, I tossed it up on Product Hunt to get an initial wave of users. Within a month, 500 volunteers had joined the platform, and 20 organizations posted projects looking for design, development, and marketing help.
I had a few conversations about the platform with key stakeholders at Catalant, but it became clear that we didn’t share the same vision. Given the demographic of the initial audience, I decided to narrow the scope of Project 501 to focus only on design and development work, which ultimately helped clarify the platform’s position.
Around the same time, two partners at Y Combinator started a related platform called Tech Reserve. The team at YC and I had a shared goal, and decided to join forces. YC had way more potential resources to throw at this, so I put P501 on hold while I focused on trying to build up Tech Reserve.
Ultimately, we found that we were most limited by our ability to play the project management role that these organizations needed to lead their volunteers. In order to be successful, Project 501 / Tech Reserve needed a dedicated ‘account management’ team (preferably with an enterprise sales background) to build relationships with non-profit organizations, help them define their project needs, and manage their volunteer designers and developers.