In my last post, I wrote about one reason why I think startups are more productive than bigger companies: employee empowerment. Today, I want to post a second one: sole responsibility. To many people working in big companies, the following made-up conversation may sound familiar:
- Jane (Project Manager): Have you finished the task I had asked you to do on project X?
- Joe (Backend-Engineer): Yes, I have done my part.
- Jane: What do you mean, “your part” ? Is it done or not?
- Joe: I have done the backend programming, but somebody from the frontend-team needs to do the frontend. Come on, you should know I don’t do frontend, Jane!
- Jane: And did you ask someone over there for help?
- Joe: not really, I have done my part, remember?
- *Jane – leaves in agony to look for a frontend team member to help*
- Jane: Mike, can you or somebody from your frontend-team help me with this?
- Mike (Frontend-Engineer): sure, what do you need?
- Jane: I need feature Y for project X – and Joe has already done the backend for it, apparantly.
- Mike: sure, I can help you there. But what I see here from Joe’s spec is missing a few pieces, can you tell him we also need a data source for address data?
- Jane: Mike, come on, don’t you think you can find a solution more quickly if you talk to him directly?
- Mike: *sigh*. Oh well, will do. But while I do that, please make sure we get a UI-design for the feature ASAP, otherwise I cannot start anyways. Oh, and make sure to tell a tester I will need some time from him to test this in all browsers!
- Jane: *stares at Mike* – and while I am at it, shall I ask Sue from operations to get you a coffee or do you need any other help?
- Mike: now that you mention Sue – don’t forget she needs to adapt the FAQ’s when I am done!
- Jane: *passes out*
Some will say this is the job of a project manager. For some employees in big organizations this will be so normal that they don’t even notice how ineffective it is. In a usual startup, the conversation would be different. Or in fact: there would not even be a conversation, usually. There would probably only be Joe that was assigned a task from his boss. And Joe would know that he is the one that is solely responsible for getting the job done – and that there is nobody else around to help! Startups require generalists way more than bigger companies. And generalists are usually not quite as good getting a specific job done than specialists – but they are one hell of a lot faster. Not because they are better – but because they get the task done by themselves and without requiring a lot of alignment. As we can see from the conversation above, communication between specialists takes time – time that often does not add to the value of the product. And let’s face it: often the result a motivated generalist gets is still sufficient to meet the business’ needs. Sole responsibility and the knowledge that there is nobody else there to help you is key to getting stuff done faster.
Last but not least, how does this help you when you are NOT working in a startup? There are ways to emulate this and the agile movement gets this right, I believe. Cross-functional teams are a way to install this sense of responsibility – not in an individual, but at least in a team. The main rationale is to make it clear to the team that there is nobody outside of the team that can help them. And that is enough to motivate them to stop playing the kinds of games we see in the conversation at the beginning of this post – but get the stuff done completely instead.
One more remark: I am in no way leaning against specialists in computer engineering. What I cannot stand is the conversation above, though: where the specialist uses his position to deflect work. If you think somebody else is better suited to do a part of the task you have been assigned – talk it out with him or her directly!