Developers vs Managers Confrontation
One of the most frequent stumbling block is the project management bureaucracy. Should we accept or deal with it? How to avoid a loss of productivity and the resistance of developers while meeting all the requirements of a methodology used?
An ideal project management methodology shouldn’t show itself during the process of use. It must be as transparent and unconstrained as it can be. To achieve this, we need to remember that a person is very lazy by nature. Everybody without exception. And our brain is arranged in such a way that we always adhere to the strategy which allows us to achieve the desired point with minimal efforts.
Of course, it’s important what we mean by “desired” in a specific situation, but now we are talking about developers, so let’s focus only on their goals. And their common purpose, by definition, is realization of a particular task. And we shouldn’t doubt that it will be done in the simplest way which they will be able to find. Project managers are trying to cope with this human trait with enviable regularity and varying success.
So, the problem statement. Here’s what we have: a developer needs to do a task assigned to him with minimal effort. The manager’s goal: to introduce a system of tasks estimation and tracking for competent project planning.
It’s about time to remember about Agile.
Let’s make the developer to estimate time required and describe the solution before he starts working on the task itself. Let him also first defend his position at the meeting with colleagues and managers. Then every day the developer will write a report on the work done in a free form and commit the progress of the task.
Obviously, during the workflow a lot of problems and questions appear, which the developer wants to get answers for. And he, of course, looks for the easiest way to solve the issues. He initiates a personal conversation or contacts team members in another way.
After receiving all the answers, it would seem that, finally, it’s time to start solving the problem. But no such luck! The developer now needs to update the information about the task in the tracking system, add a report on all conversations and their results, change the status of the ticket and so on.
Of course, everything that the developer must do when the solution of the task is already known is perceived by him as unnecessary actions and the whole nature of the person goes against doing them. A thousand of reasons can be found why he needs to postpone the ticket editing for later, and why it is also catastrophically important not to change the current state of the task right now. The developer implements the task properly, correctly organizing everything in the code, but for the rest of work the forces and enthusiasm don’t remain.
A possible solution could be as follows. Hire a special person and give him a whip (figuratively, of course) to constantly check the relevance of the bureaucratic machine. For a misconduct the developer will receive ten lashes. The goal is achieved — developers are completely unwilling to experience the full strength of the whip on themselves.
A lack of such a solution is clear. Our developer drastically changes priorities. Now the main thing is to fill everything correctly in Jira, while the proper task realization, in fact, takes a back seat. As a result, an interest in the project is rapidly lowering, managers are trying to compensate for this with cash bonuses, that does not help anymore. Smart developers, who write good and correct code, leave the company. Just those, who want more money and agree to fill tickets, remain there. That’s why morning briefings become so boring and tightened.
Let’s think together about a better solution of this problem within the majority of existing companies and organizations.
The decision must be completely feasible, it shouldn’t require to shoot the entire team and recruit a new one.
It won’t also be very effective just to use electric shockers or something similar instead of whips.
We believe that the best approach would be to automate the most of manual routine tasks. Let project management software do them for you. Such a software can fill tickets up, commit time spent on tasks, calculate deadlines, and so on. Some kind of artificial intelligence can exempt developers and managers from these boring duties. And, as a bonus, reduce inaccuracies in the workflow.
What to read next:
- Methodologies: When Do We Need Them?
- Future of Project Management: Riter Development Strategy
- Why It’s Necessary for Today’s Business to Use Chatbots
Originally published at Riter Blog.