Monday, June 21, 2010

How to Hire a Programmer by Derek Sivers

My buddy Matt Koidin who runs TeamRankings.com forwarded on this excellent post on hiring a developer by Derek Sivers. I'm posting this here because I've recently gone through this process so I kind of know what I'm talking about. In addition, I've had a bunch of friends pitch iphone apps to me recently. These friends are like me, they have a little dream, something that would make their life cooler, and just want to see it built. They're willing to throw a little cash at it too. This post is a must read for you, friends. :)

One of the most important things he advocates is sketching out the basic functionality ahead of time and telling the developer exactly what he needs to build. This is incredibly important for the developer but also for you, who will be functioning in the Product Management roll. There is a very good chance that you don't know exactly what you want to build. Writing and sketching it out is VERY IMPORTANT so you don't have wicked scope creep.

This was a huge problem on LuvvBugg because I continually wanted to build more functionality into the product as we went. I drove my partner Ashish beyond crazy and he was completely justified in his frustration. LuvvBugg was my first project like that so I was learning as I went. It will be tempting to increase the scope because the market will be moving as you build the product. Do not increase the scope. Get the product out the door and working before you do anything to increase functionality.

For Ben's Friends patient to patient support networks we kept everything incredibly simple and I realized how important that was, both from a scope creep perspective, and also because you know you really have something if people are using your baseline product. That's the case with Ben's Friends and it's totally invigorating. It prevents development fatigue to see people using your stuff and loving it. As I told Matt recently with regard to his side project, once you get a little critical mass using your service/product, it becomes incredibly addictive. The email thank you's are enough on their own to make you become borderline obsessed about it. At that point, you will have actual people telling you what they want you to build for them. It's way easier to incorporate other people's good ideas than trying to project what you think they might want.


One other tip, talk to all the smart people you know who should have an opinion, before you start building. On a little side project called Popcorn that I'm building now, I talked to Matt, Jeremy Downs, Dave Abramson, Mark Himmelsbach, John Hamilton and Alex Bain exhaustively before building. You'll flush out all your ideas in those conversations, they'll tell you what you are missing (which is probably 50% of everything) and you'll have some compadres to share progress with. If you want to get really crazy, build a Google Doc that captures all the constructive feedback you get. Aggregate it and then invite all the friends who contributed to it. This can be invigorating for your feedback providers, because they can see what everyone else is suggesting. It makes it a lot more fun and they can then build on other people's ideas.

Oh yeah, definitely post it on Elance. Awesome network of developers and easy to manage. That's where I found my man Nick who has built a kick ass prototype of Popcorn. For the curious folks out there, Popcorn will be unveiled probably in a month. Stay tuned.