It takes a special breed of stress-resistant, calm and strong-hearted people to work with code day in and day out. Not enough drama in your work life? We’ve collected a few lifehacks that will even piss off experienced developers. If you want your team to generate the heat of a small nuclear power plant in your team during the run-up to a new project, read on and take notes.
Hold as many meetings as possible and spam up your chat rooms
Communication is key, right, so the more calls you make, the better the result will be. More interaction means the manager keeps abreast of how the project is going and the developers get constant feedback. After all, writing code is easy and developers are masters of shifting their focus and getting right back into their workflow. All they need to do is get back on top of a mountain of data, get their head together and start coding. So never be afraid to tear someone away from their work, especially for something urgent and off-topic. Developers never let the details slip from their minds so they won’t make any mistakes.
Demand a detailed prediction of the outcome right from the start
A good way to get a developer’s blood pressure up is to ask for an on-the-fly prediction on a new task. Development is not a mechanical job, in which labor costs are directly tied to productivity. It is a thinking, often creative process, in which it is not always possible to find an effective solution on the first attempt.
So… every task a developer has should have a strict deadline, preferably yesterday, conversation over. Put your mind to it, you whiny slacker.
Don't give any time for refactoring
Who doesn’t love a challenge? Developers just love dirty code where there are no indents or functions and variables are named in local slang. It's great if a project has a lot of quick fixes with comments on the nature of syntax rather than the purpose of the code. Development is a creative process, that's why the code should be unique, with a flicker of individuality. And any changes can be made by hard-coding or just rewriting everything from scratch.
Feel free to change the brief whenever
The nightmare for any developer is a project that never ends. There's nothing better than changing the goalposts every week, reprioritizing tasks and adding new features for the product on the fly. It keeps you motivated and forces you to work efficiently. In fact, developers love to rewrite or even totally throw away pieces of their code, they just don't like to admit it. They're introverts, remember?
Ask for as much documentation as you can get
Cooks don't wash the dishes so why should developers write documentation? Take a look at any open-source project and it's obvious that documentation is the last thing on the developers’ minds. If there is no technical writer with development experience on the team, documentation is going to be a sore spot. The only solution is practice – you’ll have to ask the developers to put aside their code and do some documentation. First, documentation for the API, then for the users. Of course, it should have accessibility and screens.
Incorporate as much 3rd-party software as possible
In contrast to the point above, sometimes you have to work with software that doesn't have coherent documentation. What could be more annoying than trying to use someone else's software or new libraries without understanding why half of the functions in the API are necessary? It’s like navigating a minefield, where you need to get to know the terrain by stepping through carefully and seeing what happens. Then spice things up with deadlines and a constant stream of calls. After all, anything worthwhile will be hard to master, so obviously the project needs a ton of foreign libraries, scripts and applications.
Get rid of the sysadmin already
Developers love to work as sysadmins because it allows them to get away from coding for a while. Moreover, if a person understands the code, then he or she will also be good with the hardware. Developers are always interested in monitoring the state of the server, local network and all the computers used by the team. To prevent developers from getting frustrated, you need to pull them away from their usual tasks and ask them to optimize the database or deal with RAID array desynchronization. And ask them to fix the kettle, preferably remotely.
This advice is not for you?
Joking aside, all these lifehacks are good ways to get your team to lose a talented specialist. If a company really values its developers, it values the hard work they do and tries to make it as easy as it can.
For example, when developing our control panel, we pay a lot of attention to access rights, backups and security to make all the changes to the project as painless as possible. To see what we mean, check ispmanager, a hosting panel for Linux out for yourself.
Leave a comment about what pisses you off the most in software development.