This is a mobile version, full one is here.

Yegor Bugayenko
21 March 2018

Zerocracy: A Project Manager That Never Sleeps

I've been in the software business for almost 30 years. I wrote my first piece of code when I was 12. Since then I have been programming and managing other programmers, hiring and firing them, planning projects and their budgets, finding and losing customers, investing into software teams and losing my investments, even teaching others how to manage software projects. What is my overall impression? It's a pain. I think I've found a solution though.

Software projects fail. Most of them, anyway. Miserably. They run out of money, they produce software that doesn't work, they miss deadlines, they lose key people and fall apart, and so on. Why does it happen? Not because programmers are stupid, nor technologies immature, and not because hardware is unstable.

They fail because we don't manage them.

We miss important data, we lose track of events, we don't pay attention to risks and threats, we don't plan time and money, and we don't do many other things that PMBOK says we have to do in order to keep a project under control.

What do we do instead?

We rely on our innate hierarchical instincts and hope for the best.

Here is what I mean by that. First, we put a group of people together, also known as programmers. Then, we tell them how important the goal is that they are going to achieve—develop a software product. Then we make sure they know who the boss is, by paying them by the hour. Finally, thanks to their upbringing and education, they "do the right thing" and software gets created. Maybe. If we are lucky.

This is exactly how it has worked in the Animal Kingdom, for millions of years. In order to survive, mammals create hierarchies: the strongest males are on top, others do what they say. If they don't obey, violence helps. Scientists think that humans are also very hierarchical creatures—we feel discomfort if we don't know who the boss is, who to submit to.

Thanks to this hierarchical instinct, just like lions, wolves, and monkeys, we manage our projects using force. We, unlike the animals, don't use physical violence anymore, at least not in the software business, but we have a huge arsenal of more sophisticated punishment methods.

They do work.

However, due to the complexity of our profession, the quality and efficacy of the results we observe are very low. The CHAOS Report (2015) by the Standish Group says that "software development projects are in chaos, and we can no longer imitate the three monkeys—hear no failures, see no failures, speak no failures." The report also demonstrates that as a result of this chaos we have restarts (94% projects!), cost overruns, and time overruns. The report also says that technology incompetence is the root cause of project failures only in 7% cases. In almost all other cases the management is the source of the trouble.

We, at Zerocracy, believe that in the 21st century programmers (and not only them) deserve a better and a more effective replacement for this "monkey management." We believe that the software development world needs a management model which is based on people's professional merits, instead of on their ability to play the alpha/beta games.

Zerocracy offers exactly that: Zerocrat, an automated project manager, which communicates as a chat bot and tells programmers what to do. It replaces a traditional "boss in the office," distributing micro tasks among programmers, validating their results, paying them, and calculating schedule, budget, and scope predictions. It does all the routine jobs a professional project manager should do on any project, but rarely does do because it's so boring. It doesn't look boring to the robot though.

Zerocrat is a project manager that never sleeps. It doesn't make mistakes, doesn't forget things, and doesn't accept excuses. It also doesn't know anything about hierarchies. It manages programmers only by their merits, which are visible via objective metrics. Thanks to this, programmers become their own bosses, reporting only to a soulless piece of software, which acts according to a very strict policy.

The policy of Zerocracy is based on XDSD principles, which were introduced in 2010 and practiced since then on many software projects. The principles have proved able to seriously increase project predictability, decrease costs, and enforce quality of code. Also, they boost the motivation of the type of programmers, who like the idea of being their own bosses.

How many of those people are out there on the market—the future will soon show us.

Speaking philosophically, while it's a common belief that in the future AI-powered robots will do what we want, we believe in the opposite: Robots will tell us what to do. Management is what computers do better, while writing code, drawing diagrams, growing flowers, or cooking a soup is what we, humans, do better and actually enjoy doing. We believe that in the future computers will help us organize ourselves by taking the routine part of the management on themselves.

Zerocracy makes the first step in this direction.