Killing the ASAP culture

Jan '14

All developers working in a product based startup know what I am talking about. The As Soon As Possible culture. As you know, I have been involved in some startups (and quit them). In these past experiences, everytime I was discussing with our "Product Manager", all features should be done As Soon As Possible.

Announcing a feature before hand to customers, partners, beta testers or even friends led us to state a date. We built expectations and raised the pressure on our shoulders with no reason.

The ASAP Culture gives a constant sense of emergency. It's a sweet mix between "You are late" and "Do it at any cost". Doing things at any costs is exactly what it is, it will get costly. Maybe not immediately, but after a while, the costs will start to emerge. The quality will be lacking, some work will be redone because of the shortcut previously taken, bugs will be found (hopefully by you and not your customers) because of untested code. If too many bugs are found by your users, they have been disapointed, leading to customer service. Without counting the potential toll on the team that has been working on your product. Hopefully, they are still motivated and haven't accumulated a lack of sleep.

ASAP culture triggers releases too early. When a feature has been released too early, on top of hurting customers and the team, the worst thing that a management can say is : "Version 1 was crap, OK ... But Oh Boy, you will be amazed when Version 2 will be out". Let's think about what that sentence can trigger in the head of people that are listening. It doesn't tell your potential customer to buy into version 1. It tells them to wait for version 2. Most chances are that, if you have fucked version 1, you may fuck version 2 as well (considering that you have kept the same ASAP strategy). You have instantly lost your potential customers and you also have lost you existing customer (you just released 2 half-baked releases, your product is basically a mountain of crap).

What can you do about it ?

When developing a product, the best that you can do is to actually develop a product that is good, polished, with a lot of tiny features that make your users happy. You are selling a product and you want to sell a superior product. Selling a superior product will not only make you proud, but ease the job of your sales people, help the job of the CEO when recruiting (btw, is your CEO recruiting all the time? If not, you may ask yourself why.). Having a polished product will also help your development team to survive in the long run instead running into an ever growing list of bugs. Don't get confused between As Soon As Possible and As Soon As You Can.

It has been said before, I know, but the only thing that you can do is too work on small, iterable, chunk of work. And iterate on them as long as you feel unsatisfied. When you (and your team) are satisfied about what you have done, then you can think of releasing what you have done to a group of priviledge users (your beta users). These users only will tell you if you have taken the good road. To push your team that they have to release something awesome, tell everyone that you will blog about it and make a public announcement.

By endorsing such a culture, you will nourish a sense of excellence, that will make your team proud and other want to work with you. This will ease your team and get your product in a lifting spiral. I know that this takes time and that time is money. But selling a half baked product will not get you any further that not selling anything at all. And you may risk to lose your team because of the frustration and the lack of sleep that this way of working induces.

Take your time to do things right.