Hello! What's your background, and what are you working on?
I'm Emma Lawler, the co-founder of Moonlight. I lived in San Francisco for four years, working as a product designer at startups like Fitbit. In May of 2017, my co-founder and I quit our jobs and left the Bay Area to live in cities around the world and build Moonlight.
Moonlight is a professional community of software developers. Our mission is to help the world work together, and we do that by matching companies and developers for work. We started the company two years ago, and today remain a bootstrapped, two-person team that is ramen profitable.
Initially, we were making money by adding a markup on transactions going through the marketplace. We realized that people were using contract jobs on Moonlight to hire full-time, so we re-launched Moonlight as a membership community. Now companies pay a recurring monthly or annual subscription to get access to developer matches, sourcing tools, and our weekly invoicing product, but it’s free for developers.
Since launching the subscription membership, we’ve seen 19% week-over-week growth in paying subscribers, and a 79% increase in engagement.
What motivated you to get started with Moonlight?
Before we started Moonlight, my co-founder Philip was working on the last startup he founded called Staffjoy. He was able to hire senior engineers from companies like Uber and HotelTonight by bringing them on as part-time contractors. He learned that engaging candidates before they were ready to switch jobs let everybody decide whether they liked working together with less pressure.
After talking through some initial business ideas, we bought a domain and made a simple landing page on Squarespace with a Typeform where new users could join. We emailed 1,000 software developers and asked them to join Moonlight to make money doing short software projects. We had an 18% conversion from cold email to sign-up, which validated our original hypothesis. In comparison, Staffjoy’s outbound emails had around a 0.5% conversion rate to sign-up!
For personal and professional reasons, Philip and I were both looking to leave the Bay Area to live and work as digital nomads. Moving between Airbnbs every couple of weeks meant that we needed to build a business that we could run from any time zone. These constraints forced us to develop our tools to be remote-friendly and asynchronous.
What went into building the initial product?
We started Moonlight as a marketplace to help developers find part-time projects to make money in their spare time. Developers would sign up and give us their work preferences and background. Companies would post jobs to find developers to hire.
The first version of the “product” was a manual process that we hacked together without writing a line of code. We hooked our existing Typeform sign-up into Zapier to notify us about new projects. Then, we would make a Google form to collect proposals and email it to matching candidates from our spreadsheet. Once the client hired a contractor, we made a developer timesheet using another Google Doc, manually issued weekly invoices using Paid Labs, and sent payment to the developer using Payable. We processed our first $100K in gross merchandise volume before automating anything. We made money by adding a 15% markup on top of each invoice sent by developers.
After issuing our first few invoices, we knew that we needed to automate the process, so we started designing and building an app. We first made a new homepage to replace Squarespace. Then, we slowly started replacing Google Sheets and Typeforms with code. First, we built developer onboarding, then we coded an integration with Stripe Connect for payments, then we built developer profiles and search, then we added invoicing, and then we added the company sign-up. Along the way, we published each part of the app as it was ready, so our site was a hybrid of manual processes and automated ones.
In March of 2018 (about nine months after getting our first paying customer), we launched Moonlight on Product Hunt. Developers could apply to get job matches, and companies joined to post jobs. Once a project started, Moonlight managed weekly invoicing and payments.
How have you attracted users and grown Moonlight?
When we launched the web app in March of 2018, we used a combination of Product Hunt, Hacker News, and our mailing list to get sign-ups. Our user base of developers and startup founders spend a lot of time on internet forums, so we’ve had repeated success on those channels.
We’ve seen steps in engagement from each launch. Looking at our data trends around new customer sign-ups is always a great reminder to do public launches frequently throughout the year. That first Product Hunt launch in March of 2018 led to the most sign-ups we’ve had in a single day. We continue to launch major updates or products on Product Hunt (always using the Ship feature to plan ahead). We detailed our launch process in a guide to creating a customer sticker pack.
We also do weekly content marketing pushes for continued engagement throughout the year.
Recently, we launched a feature called Broadcasts, which sends alerts out to companies when developers who match their criteria are actively looking for work. This kind of content gets high engagement from both companies and developers because it’s something they can’t get anywhere else. Email marketing has been essential for increasing our network effects and keeping existing users engaged in the community.
Our core marketing arsenal includes:
Weekly newsletter: Each Tuesday, we send an email to all developers and hiring managers. It’s half manual and half algorithmic — we write a personal intro for each user group, and our system generates customized matches and updates for each user.
Moonlight Blog: We do interviews with developers and companies in the community, write about exciting trends in technology, and share best practices around distributed work and hiring.
Headway Updates: As we iterate on the Moonlight product, we publish changes to Headway. A cadence of updates keeps us motivated and lets our community know what we have been building.
Weekly social media posts: We have a social media content calendar to keep us on-brand and posting several times throughout the week.
Community forum: We have a Slack community that mirrors into the Moonlight app. We built this tool on top of Slack because our users were already spending a lot of time there every day (read more about it here). Eventually, this will turn into a more significant Moonlight forum to help remote companies and workers access a distributed community.
Referral Program: We have a referral program where we pay users to refer new clients (and send swag when they refer new developers). Referrals help us grow a more sustainable network of people who will stick around long term.
What's your business model, and how have you grown your revenue?
Moonlight has been self-funded so far, which means revenue has always been a core focus for us. The need for a constant stream of money has forced us to stay lean and find the most straightforward ways to gain traction.
When Moonlight launched, we were processing payments from companies to developers. We were adding a 15% markup to the price of each hour worked. Companies were paying us, but revenue was inconsistent. Some weeks we made way more than we needed to survive, and other weeks we barely met our targets. This revenue strategy also required us to control the work process and spend a lot of time keeping people inside the marketplace.
We also started seeing companies use Moonlight in a way that we didn’t anticipate. They were using Moonlight projects to evaluate developers for a week or two before extending a full-time job offer.
Toward the end of 2018, one of our most engaged customers wanted to hire three developers within three weeks. He proposed that we give him unlimited access to hiring in exchange for an annual membership. We tested out the yearly contract, and found that it increased engagement, allowed the company to hire multiple developers, and made us their first choice whenever they needed to hire.
This success prompted us to change our pricing model from a markup on payments to providing unlimited access as a subscription. Now companies can join Moonlight as a monthly or annual membership.
With this change in pricing, we’ve been able to grow Moonlight as a product rather than a marketplace. The funnel from sign-up to paying is much simpler now. Because there are no per-hire costs, hiring managers treat Moonlight as a primary hiring tool, rather than a backup. Our numbers reflect it, too — our MRR has nearly quadrupled in the last four months.
What are your goals for the future?
Moonlight’s mission is to help the world work together to build the future. We hope to see every knowledge worker join our distributed community. We are starting with software developers, but plan for it to grow into all industries where people are working online.
This year we will be launching product improvements that will make it easier and faster for companies to hire. We are working on smarter tooling systems, so distributed teams can consistently source candidates, develop a long-term hiring strategy, and see data around their job posts and communication.
Another focus will be on improving the developer community. Whether someone is ready for a new job, needing to learn new technical skills, or looking for remote co-workers — they can find it on Moonlight. Partnerships with companies, coding schools, co-working spaces, and open-source projects will all be part of our strategy.
The switch to a membership-based subscription model has allowed us the freedom to think more long-term about what the business can be. We’re excited to help customers reach their goals in whatever way possible, without controlling their use of our tools or relationships with other members of the network.
What are the biggest challenges you've faced and obstacles you've overcome? If you had to start over, what would you do differently?
Companies and developers are good at working together, and they all have unique processes that work for them. We spent over a year trying to convince companies that they should work with contractors on short projects using our managed system. When we listened to our customers, we learned that they needed a more open, transparent platform. This learning led us to the membership model, which has opened up so many more exciting opportunities.
Now we try to get on the phone with as many users as possible each week. We do this by embedding a Calendly form into different flows in our onboarding process. The human connection has made it easier to align our incentives and product timeline with our users. Happy customers create network effects, too!
Have you found anything particularly helpful or advantageous?
We are lucky enough to be living the remote lifestyle that we promote through our brand. So we are building Moonlight for ourselves. We started as the first developers on Moonlight, and now we hire through the community. We build no-code solutions when possible, and we are strategically building a distributed company. We share our learnings with people and help them meet their goals in any way possible.
Both Philip and I have a background in technology, but we have learned to lean heavily on our interpersonal skills. When working on a distributed team, communication skills are just as essential as technical ability. Here are a few books that have helped us hone our communication skills and influence outcomes more clearly:
Never Split the Difference: A book that will help you negotiate and influence outcomes in any situation. Great for sales, salary negotiations, and product discussions.
Radical Candor: A framework for communicating with team members that enhances your ability to empathize and figure out personality types.
Remote: One of the first books we read about how to grow and manage a distributed organization. Written by the Basecamp team, it’s a must-read if you’re planning to work remote.
What's your advice for indie hackers who are just starting out?
My advice is to validate your idea before writing a line of code. You can get pretty far and start making revenue without automating anything. Even if you are a technical founder who can code, there are manual ways to make sure you’re making something people want before sinking time and resources into the solution.
It’s rare that a business will take off without a lot of iteration and analysis of user behavior. If you’re creating a service (like Moonlight), do the work yourself to get your first customers. And, if you’re building a consumer app (like Instagram), make a prototype using email or SMS and test it with your friends. You’ll learn a ton in the process, and end up with a much stronger MVP that works.
Before hiring a developer or building the technology yourself, check out MakerPad. They’ll help you figure out how to validate your business with no code. Simple tools like Zapier, Airtable, and Stripe can let you prototype an end-to-end user flow that makes money in a weekend.
Here are some books that are great for learning how to build products iteratively:
Sprint: A five-day framework for testing and launching new products or features from the Google Ventures design team.
The Lean Startup: Strategies and case studies to help you iteratively test hypothesis and launch extremely minimal MVP products.
High Growth Handbook: Gain insight into what it will take to go from a tiny startup to a large organization. Learn what it took to get there. We learned how important it is to constantly experiment with pricing.
Where can we go to learn more?
Please leave comments below with any questions or feedback!
—, Co-founder of Moonlight
Want to build your own business like Moonlight?
You should join the Indie Hackers community! 🤗
We're a few thousand founders helping each other build profitable businesses and side projects. Come share what you're working on and get feedback from your peers.
Not ready to get started on your product yet? No problem. The community is a great place to meet people, learn, and get your feet wet. Feel free to just browse!
—, Indie Hackers founder