Tuesday 25 February 2014

How to start a startup without hiring developers first.


First hire your product team. You're looking for the following skills, ideally in the order below. How many actual individuals is up to you and your budget, but avoid conflicts of interest, especially between product management and marketing, graphics and user experience.

  1. Product manager
  2. Product marketing
  3. User experience designer
  4. User interaction designer
  5. Graphics designer
  6. Prototype builder
  7. Business intelligence specialist

Then set them on their voyage product discovery. Let them explore for awhile. Build paper prototypes. Fail. Build design prototypes. Fail. Build an alpha tester base. Then you can start hiring your first Scrum team of 5-9 individuals, and this could be months after you've got your product team. This team should contain the following skills, again ideally in the following order.

  1. Scrum master
  2. Developer in test
  3. Data analytics engineer
  4. QA engineer
  5. Developer
  6. Release engineer

Your scrum master gets to work with the product manager on the backlog, and helps hiring the rest of the team. The developer in test starts setting up automated testing frameworks so that the developers have it there day one. This is also true of data analytics, who should be ready to provide an easy framework for the devs that supports multi-variant testing and the BI specialist is happy with. Get your manual tester in early, and you want them to have plenty of experience with spotting edge cases and confident enough to challenge the product team on their decisions before the developers have worked on story. Then, and only then should your developers start on product stories, so it's only at this point you need straight up developers. While the release engineer skill set technically comes after this, you'll need it at the end of your first sprint.

Don't have probation periods, because you're good enough at hiring to not screw up so badly that a week's notice is more important than showing new starters you value them day one. Give everyone laptops so that they can pair work, be that designing or programming. Set aside focus periods [No meeting Friday / no comms between 1pm-4pm ]. Make meeting agendas mandatory, and default them to 30 mins, not 1 hour. Teach everyone, including HR & admin Agile, Scrum and Lean. Don't skimp on fruit, water, tea & coffee. Start with test driven development as the very first lines of code your team writes. Do informal code reviews. Have information radiators, that actually work, sprinkled about. Make business and performance stats available to everyone, easily.

Then sit back and watch luck be a huge, but ever so slightly smaller, part of your success.