Finding a technical co-founder is like online dating: too many guys and not enough women, except you skip the engagement and jump straight to the wedding. Often times, what’s really being asked is “How do I learn about starting a company?”. Check out the title of this hugely popular Quora question: “I am a creative guy with a startup idea. Where is the best place to find a rockstar developer to bring it to life?” There are 35 answers and it has been viewed 19870 times. The wording of this question reveals a troubling conceit–the idea that once you have an idea, all you need is to hire a few monkeys to code it up–then profit! The world is richer and more complex than that, my friends.
1 is the Loneliest Number
Apple had Steve Wozniak, Google had both Larry Page and Sergei Brin, Facebook had Mark Zuckerberg. It’s hard to build successful technology companies without a strong technical co-founder. You really need the wide range of talents from a Marketer, Product Manager, and Designer–it just so happens that the 1+1 combo of a business founder and technical founder can condense this set of skills into two people. With freelancers and advisers, you can keep the team size to two longer, but you’ll be hard-pressed to find a single person that does it all.
Be honest with yourself first so you can be honest with others. Rate yourself on a scale of 1-10 for this role. Figure out what strengths you bring to the table and what’s lacking. Are you ready to be part of a 1+1? Most likely, this means you’ll be solely responsible for the business side of things including marketing, sales, legal, etc. Should you find a co-founder or should you join a startup to learn some skills first? If you’re not a superstar business guy, you will not get a superstar technical guy to work with you, so have realistic expectations.
Highly sought-after women generally don’t need online dating. A great engineer will have six-figure offers from Google and Facebook on the table. For them to pass on those jobs is like ditching a millionaire for a struggling writer. You better be Ernest Frakking Hemingway carrying a dead lion you just killed with your fountain pen. I suggest you make friends with as many technical people as you can. Go to meetups, conferences, Startup Weekend, etc. Make connections on Twitter and through your extended network. Meet your neighbors who may be trying to build the next Instagram (engineers tend to tinker too much and ideate too little). At some point you’ll realize why the term “rockstar developer” is so passe. If you need some technical advice, introduce yourself on Twitter–I go by @mankindforward.
Startup Weekend puts your team in the same room for a reason: to facilitate real-time collaboration. With the right setup, your team can develop a web application live. Let’s assume you have a mixed team including developers, designers, teachers, and entrepreneurs. Assume everyone has a laptop on the same network. Using git and Ruby on Rails (the example can apply to any source control and web framework), you could have each laptop run a local web server. Everyone would be able to connect to any team member’s server and view the application as it changes with every code tweak. Now the developers can build the infrastructure and add styling, the designers can drop in images and icons, the teachers can edit the content, and the entrepreneurs can proofread the text and give feedback on design–all at the same time.
This is possible today because my team did it in a limited way. The designers didn’t run their own copies of the server but merely connected to one of the development machines to view the live changes. Teachers and entrepreneurs watched changes happen live as well, suggesting content and copy fixes in realtime. Furthermore, although some team members did not change the code directly, with minimal setup and training, I believe anyone should be able to easily update content or copy at least since web frameworks strive to separate logic from static content. With this level of collaboration, product development can happen in real-time.
Startup Weekend is a battle. There is no time to familiarize yourself with tools in the heat of battle so be prepared to use what you know best and leave everything else at home. Let me familiarize you with my weapons of choice:
- Google Docs (real-time collaboration) – Essential to working well as a team
- Skype (chat) – Sometimes you do need to IM even if you’re in the same room
- Github (source code management) – Code as a team
- Ruby on Rails (web framework) – Build your core apps quickly
- Bootstrap (UI libraries) – Style your apps quickly
- Heroku (cloud hosting platform) – Deploy your app quickly
- Unbounce (landing pages) – Have a non-technical person setup a landing page
- Prezi (presentations) – Powerpoint is for losers
- Dropbox (cloud storage) – Share files within the team
The tools you use can depend on the composition of your team. For example, if you don’t have enough developers, consider just using Balsamiq to create mockups but spend more time on doing customer validation and putting together a winning business model. Tools will get better over time so stay ahead of the game by taking the time to checkout the latest and the greatest. If a tool just isn’t getting it done, it’s time to find a better one–if you can’t find it, maybe you should build it.