Building a startup: the beginnings (march – may 2012)

Three months has passed since my last blog post about the startup I’m working on. This period started roughly with one of our partners depart. It reduces our founder team down to two people. We had to lower down our expectations and things moved in a slower pace. To deal with that, we hired a consultant to help us. We succeeded in building the required infrastructure to serve our minimum viable product. This small victory gave us courage and led us to find people that could help us in the launch of our project. More details in the following.

1. Infrastructure

Startup is a lot of fun but it is also a matter of money. Because our business will be based on hosting, most of our efforts these last months were focused on the infrastructure. We had quite rough time : system administration is not our specialty. Which led us to hire a consultant to help us in this quest. We discovered the joy of virtualization, isolation, automated deployments… and met our goal by building a decent and simple starting infrastructure with perspective to build a more scalable one as soon as our customer base will grow.
What I learned from this is that your infrastructure should be led by automatization. Once you understand what should be done, make script of everything you do. Another advice I would give is that you should virtualize every installation to avoid breaking things on your host box. This has other advantages: you can sandbox installations easily, duplicate them or move them to another box quickly. Take also a look at Vagrant to experiment your script safely on your local machine.

2. Product

About the product itself, we made profound progress. Our code base grows fast and main components are there. We also set up a simple continuous integration process and got familiar with our technology choices. Next month will be focused more on software development. We will start our beta program with close friends, so we will be able to make the right choice about feature development.

3. New tools

By the way we added new tools to our previous list :
Jenkins for our continuous integration
Osqa Q&A (question forum) for our beta users to have a feedback place
Osqa Q&A for our team to make a dynamic FAQ of our tools.
Newebe for our internal social network.
Google apps for our mailing stuff.
Chosing and setuping tools take a long time, I wish I had a ready to go list and some magic stuff to set them up automatically (such as OpenVz templates for each common technologies).

4. Interns hiring

Benjamin, my partner, felt that we need more backup to deal with the amount of work. So we hired several people as interns from his former university to help us by doing technology studies and short developments. One of them will stay for a longer time and has great system administration skills. As you might guess, he arrived on time to consolidate our infrastructure and help us in a significant way on other system administration stuff.
As we have not yet an office space, for the moment every one will work from home. I hope it will be a great experience. I will provide feedback about that in my next startup blog posts.

5. Events

We were present at many great events and met a lot of people working in the same fields as us. What I learned, is that going to an event is always a hard choice. When you are there you don’t make direct production. The pros is that it provides opportunity to find collaborators and grab some feedback on what we are doing by explaining what we do. Moreover events can teach various helpful subjects and make you discover new technologies.
My advice would be to not go to all of them, and try to go there with a goal in mind (learn something, intensive networking…).

That’s all for now. In my next startup posts I will tell you how our beta program goes, what our product does and how we organize with our new development team.