This entry was written more than 2 years ago and the information may be out of date
A Genie developer is one that will only do exactly as they are told. There is no critical thinking (or if there is its kept internal and never shared with the client) or clarification of the request or its knock on consequences. What you ask for is what you get.
Very similar to the Genie from the old myths, it goes something like this, Aladdin rubs the lamp and is granted 3 wishes:
Aladdin: “Genie make me the richest person in the world!”
*Poof! Genie turns everything into gold...everything*
Aladdin: “But..but...this isn’t want I wanted...I can’t eat gold food, my family are all statues…”
Genie: “But master I did as you asked. Are you not rich?”
Aladdin: "Put it back!"
*Poof! Everything returns*
Genie: "Now you have one wish left..."
We've had clients who have had work done by agencies outsourcing to Genie developers who we then take over from. Its always fun to hear their reaction when quality work gets delivered or we ask for clarification to end up at a better solution. We've worked with Genie Developers directly too.
How they end up being like that can be tricky. It seems to be a mixture of lack of experience (or skill), excessive process and cost/time pressures from their company. Alternatively it can come from aggressive "we pay you to do as we say!" stance from some customers who don't like paying for them to dig deeper in an effort to control costs at obvious expense of quality or care, never let spreadsheets solely dictate what "good" looks like.
If you don't give developers the time and space to do critical thinking they have to end up doing simply what is asked and no more. Often what is asked for is not the real problem that needs solving and additional insight arises as the problem is worked. If this pressure becomes the norm then good developers leave. Good developers like being creative and actually feeling like they are fixing real problems, not what someone thinks is the solution to a problem which isn't.
Someone made an accurate diagram describing Scrum! 🥳 pic.twitter.com/UR5q4q1ciD— Martin Konicek (@martinkonicek) July 6, 2019
How to fix Genie Developers?
If your a client of an agency that suffers from Genie Developers? Then that is simply the way it is, that agency is probably price lead (or profit lead) and its a net result. You could ask to get someone else more senior on the case but it will cost more and that senior person will likely be overworked or indeed might still end up being a Genie Developer. You might have to go elsewhere.
If you have Genie Developers within your own agency/company? Then you have two options. The first might seem obvious to just get rid of them and lay them off. That might be the right choice but first look at the surrounding environment, could that be the cause of their actions? Are you pushing too hard to "get work done" rather than "get good work done"? Are you chasing the wrong metrics? Are you asking for more through put rather than more quality? Do they have the training and systems in place for them to do their job well? Are they over worked? Are they working on a "difficult client" who requires some hard boundaries. Explore these angles before you simply sack them, could be they are more likely to be causes than you might care to admit.
If you are a Genie Developer? Well done for recognising it. Either find an agency that rewards that way of working (they do exist) or change how you like to work. Ask for more time on jobs, ask to speak to the client directly to get to the bottom of the real problem, start adding some value rather measuring your work day by how many issues/cards you can complete. If your boss won't allow you to do that then maybe its time to look elsewhere and expand your horizons.