I was explaining how Zerocracy works to one of our prospective clients yesterday. He texted me today: “[At Zerocracy] there is no commitment and anybody is free to leave any time, so the risk of entrusting a highly important project to such a platform and failing to deliver it on time is very high. We will develop it on our own with hired developers who will have salaries, and I’ll be architect and project manager, that way it will be under our entire control.” I think this word “control” he used deserves a comment.
First, I know how much we hate the word “control” when it’s being applied to us sensitive and fragile individuals, also known as computer geeks. We don’t want to be under anyone’s control. We also don’t want to control others. We prefer to think that things just move forward on their own, not because someone stays on top of them and controls them.
However, this is an illusion.
We and our projects have to be under control in order for the projects to be completed.
OK, replace it with managed, organized, or (I love this word) orchestrated.
The bottom line is: you control it or you lose it.
What does control technically mean? According to Wikipedia, it means “setting standards, measuring actual performance and taking corrective action.” What are the corrective actions in the context of people management? There are two: rewards and punishments. In order to keep even the most talented people under control, we have to reward them for their successes and punish or fire them for their failures.
The question is how you do that. How do you reward and how do you punish?
Even if you don’t want to admit that you do it, you still do. You reward and you punish. How does it happen in a traditional management model with the “hired developers” my prospective client was talking about? I’ve explained it already in a few blog posts. How to Pay Programmers Less and How Do You Punish Your Employees? are probably the best two of them. Managers invent nice words for these things, but in reality it’s still the same carrot-and-stick, only with no predictability and no explicit rules.
However, if you think that you can control professional programmers using the methods explained in my blog posts above, you are mistaken. We are way smarter than you. We know how to pretend to be working, while doing something else. We know how to create an illusion that we are loyal to the project, while searching the market for a new job. We know how to organize our time such that you only get ten percent of it, if you are lucky. We know how to manage you, our stupid managers.
As our manager, expecting us to be under control and loyal just because you hired us with monthly salaries, you are demonstrating only one thing to us: you have no idea how to manage senior developers. Instead, we will manage you. You will be under our control, not the other way around. If you are lucky, the project will maybe see its end. But in most cases this doesn’t happen.
Do you want to know what real control is? Read this Policy, which is how we control programming in Zerocracy. That is the level of control true professionals enjoy. That document, fully supported by our automated chatbot, guides every small piece of reward and punishment a programmer may have on a project.
This is what true commitment means for our guys: personal and explicit responsibility for every single step they make. This level of commitment is incomparably better than what you will likely find when hiring full-time 9-to-5 office slaves employees.
What are they really committed to? To giving you a month’s notice when they finally find a better place to scroll through Facebook eight hours a day?
Seriously?
Who really is in charge, you or your boss? #codeahead
— Yegor Bugayenko (@yegor256) October 7, 2018