15 Jan

Finding a Developer

I was expecting the process of finding a developer to include browsing lots of Elance profiles while trying to determine how a bulleted list of skills translated into an actual web application. Luckily for me, I never had to do that.

 

It Started With Teaching

When you teach, people will listen. Giving away information for free builds a following of people who want to help you. Since this project is public, thousands of people are following along to see how it turns out. Many have offered to help in some way. The point is that by sharing what you know, as I have done, you give yourself a competitive advantage. I’m sure that will help many times throughout this project, but it really helped when finding a developer.

In my first post I mentioned I planned to hire a Ruby on Rails developer. I planned to go on Elance or another site, not thinking that I might find the developer I needed just by writing that. Seventeen emails from Rails developers later, I realized a job posting wouldn’t be necessary. But 17 people is a lot. Where to start?

 

Narrowing The Field

First I added a “Ruby” label in Gmail so I could keep track of all the conversations. Then I waited. My focus the first week was on finding and validating the idea, so I basically ignored all the emails from developers (sorry guys!) until I was ready. Once I was committed to an idea, I started to wade through all the emails.

Out of the 17 replies, three were not a good fit. I sent them a quick email thanking them for their offer, but that I was going a different direction. With 14 remaining (Yea, progress!), I had to narrow the field further.

When finding people to work with, a simple email isn’t much to go from, so I needed to hear more from everyone. I wrote out a quick email and copied and pasted it to each developer, with a few personalized areas depending on the previous conversation. Here’s a sample of one:

 
Thanks for your offer! I am still looking for a developer. Could you answer a few questions so I can get a better idea of your experience?

  • How would you implement a multi-tenant model in a SaaS web app? Have you built one before?
  • What’s your preferred method for implementing recurring payments?
  • Have you worked with email service providers like MailGun, SendGrid or Postmark?
  • What hourly rate would you charge for this project?
  • Do you have any experience writing A/B testing software?

Thanks. Look forward to talking with you more soon!

-Nathan

Those questions aren’t particularly clever or anything, just things I wanted to know. Also, reading the responses would give me an idea for how they think, what type of person they are, and if I’d like to work with them. Basically, I needed more material from them, and this was the start.

Here are a few things I was looking for:

  • How do they talk about areas they don’t know? For example, most had never worked on A/B tests.
  • What services are they already familiar with?
  • Have they even built a SaaS app before?
  • Will they anticipate issues common with recurring billing? (expired cards, plan changes, etc)
  • Do they sound like a person I would like to work with?

Thinking on it now I should have added one or two more especially dumb questions just to see who would take the time to teach me such basic stuff, especially since I am working on learning Rails.

From that email eight of the 14 responded. Six never got back to me, which was just fine. The problem was that the eight who did reply seemed quite good. They were developers who had written guest posts for popular sites, spoken at conferences, and had quite a bit of experience. I emailed back and forth with a handful asking more questions and learning more about them.

The Short List

Next I added another label in Gmail called “Best” (it was a sub-label under “Ruby”). These were the people whose responses I liked the most and who seemed the most likely choices for me to work with, though I still continued discussions with everyone in case my first impression was wrong.

By this time in the process I had a pretty good idea of what my app was going to do and had built wireframes for the major screens. I stored these wireframes in InVision (which is a great tool), so I could just share that link, along with a feature list for the MVP (Minimum Viable Product) with each developer.

I sent this out to everyone and asked for quotes. Since the feature list was in a Google Doc I could sometimes see six or seven people reading through it at the same time. Everyone just showed up as anonymous users, but at least it let everyone know I was talking with a handful of developers.

The Quotes

The quotes that came back ranged from people saying they would build it for free (sometimes for a cut of revenue) up to $40,000. Since I only allocated a budget of $5,000 to get started (something that I will run into quite soon), the high end bids were obviously out. Most bids came in between $3,000 and $7,000.

I chose a developer who was even cheaper than that.

Skype Calls

The next step was to have Skype calls or further discussions with each developer who returned a quote. I had four Skype calls and exchanged emails with three others. All were good and had reasonable bids. Thanks to everyone who took the time to talk with me!

For people I really liked I forwarded the conversation to Brennan Dunn, who is advising me on this project. Brennan is a talented Rails developer himself and has hired a lot of developers over the years. Having his opinion gave me confidence that I was hiring the right person.

If you can’t evaluate code quality for someone you want to hire, I recommend that you have a trusted senior developer advise you on that process. Then for your new developer’s first few weeks on the project, have your advisor review each check-in to make sure the developer is as good as you first thought.

Eagerness

The developer I hired is young (still in high school), so he has the least amount of experience of anyone on my short list. I think some other people would have ignored him because of his age, but I am not that old either, so I know what it’s like to be in his position. So I evaluated him fairly, regardless of age, and he is a really strong developer. Once I made the decision to ignore age, who to hire became a much easier decision.

Like many people I started building websites when I was 13. When I was 15 I graduated high school and started to make my money freelancing. At 17 I dropped out of college to focus on designing websites and software full-time. A year later I was hired to lead the software design team at a startup that eventually grew to nearly 90 full-time people.

There are a lot of people who hired me based on ability, ignoring my age, and I really appreciate that. So it would be hypocritical of me to not do the same.

That’s it!

That was the process I followed. Hopefully it helps. We jumped right into building the application last Thursday and have made really quick progress. I actually exceeded my 20 hour limit by 2 hours because I was working so frantically to get markup written so that I wouldn’t be a bottleneck.

Speaking of which, let’s review the time spent for last week:

  • Learning Rails: 2 hours (not nearly as much time as I would have liked to spend)
  • Design: 5 hours
  • Development: 6.5 hours
  • Planning: 7 hours (mostly on finding a developer)
  • Idea Validation: 3.5 hours

Total: 24 hours (22 when you take out time spent learning Rails, which doesn’t count)

Looks like I already broke my 20 hours a week rule. Oh well. Last week I worked less and there are some upcoming weeks that I will be on vacation, so I’m sure I’ll be below the limit there as well. I guess it shows that I am more committed to making this project a success than I am to following my arbitrary rules.

I have spent $479 so far on development, so I have $4,521 remaining. A lot more of that will go quickly…

926 people are following the Web App Challenge by email. You should too, with the form below.


Enjoyed the article?

My best content on design, marketing, and business. Delivered each week for free.

We won't send you spam. Unsubscribe at any time.
Enjoyed the article? Follow me on Twitter or with RSS.

11 Responses to “Finding a Developer”

  1. Hey Nathan,

    Really enjoying the sneak peak you are providing into your product development process. I’m curious, I note you are spending time learning Rails yourself but you’ve also hired a dev to help build your MVP. Had you always planned it this way (i.e. to hire a developer rather than building the MVP yourself) or is this an early product development process pivot :)

    Ed


    • Nathan Barry says:

      I want to learn Rails myself, but I’m not willing to wait that long to release a product. Which is why I am doing both simultaneously. I find it best to learn on actual projects, so this has been really helpful.


  2. I just wanted to thank you for not ignoring the developer because of his age. I’m a 17-year old web designer and developer (also still in high school) and a lot of potential clients lose interest when they find out my age. A positive result of this, though, is that the clients I do end up working with are almost always nice and enjoyable to work with and judge me by my work, not by my age.

    Thank you for writing these posts. I also have an application in mind so it’s really interesting for me to see how you handle this.


  3. I think you’ll find the process of teaching yourself + working with another developer really rewarding. I’ve done that a few times when learning various languages (have done it with both PHP and Rails).

    It was priceless to be able to peek into other dev’s code and, more importantly, their dev process.

    Keep it up!


  4. Evaluating a developer is definitely not an easy task. There is a great conversation going on about how hiring designers is easier because some designs can be completed within an hour, but even the simplest dev project will take a few days.

    That being said if you do know how to program or can at least read some code…you should always ask to check out a potential developers GitHub, Bitbucket, or Coderwall accounts. This will give you an idea on the quality of their code, what projects they have been involved in, and how helpful their code or tips are.

    Very curious to see your unveiling!


  5. [...] will fit. Coding should start to take over all my time soon enough! As a side note, it looks as if Nathan Barry is off to a flying start! He commented that he “should have an MVP ready to release way ahead [...]


  6. Could you expound on the time you spend validating the idea?


  7. Hi Nathan – first time commenting on your blog. I’ve been lurking for awhile but just wanted to say that I really enjoy the honesty in your posts. I’ve hired elance dev’s before with mixed success, but have never tried a US based developer because I didn’t think I could afford one. Really surprising that you’ve been able to get several offers within the 3-7k range.

    Looking forward to hearing about how the project turns out!


  8. Jeremy Somerville says:

    I think hiring a young developer for this is actually pretty smart (I am 19yo dev, so may be biased here). There’s the obvious advantage in cost and the reality is any developer, regardless of age, can be good or bad. In fact people my age are really the first generation to grow up with computers as a common household item which no doubt makes it easier to learn. So I applaud your decision to go with the younger option, it’s something many businesses are afraid to do.


  9. Rocky says:

    Nathan,

    The last person I know who graduated from High School at 15 was in Jamaica where you can do that, and he’s almost a billionaire. I’m probably not the only one curious as to how you graduated at 15?


    • Nathan Barry says:

      I was home schooled and motivated. I’ll write the full story sometime.


Leave a Reply