See CodeMonkey. How is this different from people who do CowboyCoding? Much of the description in CodeMonkey seems to overlap? ''Both do it bad, but at least cowboys ''enjoy'' programming?'' { Yes, probably they both enjoy programming until someone reads or tests their code } I think of it as a variant of the "PlugCompatibleInterchangeableEngineers" AntiPattern -- different in that the victim of being treated as a GruntProgrammer is only allowed to write code; they're not allowed to think about design or user requirements -- that's someone else's job. ---- I think the difference between a people who do CowboyCoding and a GruntProgrammer is that cowboys actually do accept responsibility for their work and do write amazing programs: it's just not something you'd like to maintain. A GruntProgrammer does the minimum necessary to keep the job, and wants someone else to do all the thinking and accept all the responsibility. "That's not my job" and "I did exactly what I was told to do" are grunts' typical responses to all questions about their work. --KrisJohnson ---- I would describe the GruntProgrammer as the programmer constrained to only coding and has no other input into the product. They are often products of the old unimaginative industrial giants. Relegated to their position by over-specialization of tasks. Requirement techs gather and archive requirements. Architects make Power Point slide and Viso diagrams. Team leads do the designing. Coding is done by GruntProgrammer s. It is kind of a ProgrammingChainGang. Do this work like this, use these algorithms, call the classes this, etc. Creating this organizational structure leads to low TruckNumber s. -- DaveHickerson ---- Think of the grunt as the SoftwareJanitor. A grunt is the one who does the routine, unglamorous work. A good grunt is worth their weight in gold. In war, don't drop a planeload of generals into the fire--drop a planeload of grunts. Good, battle-hardened grunts are the best. Similarly, don't want to send the PrimaDonnaProgrammer in to do a grunt's job. It can pay well to clean up other programmers' messes. * Depends. In Warcraft III, a general is preferable in battle to a grunt. Whereas in real-world BigCorporation, you definitely don't want to send Bill the CEO to do the job of Joe the coder. ---- In my opinion GruntProgrammer?s mess up the code in their own, not understandable way. We have a couple of those at work and they let the others work extra hours by not doing their job in a responsible way ---- Excessive use of KludgeItTillItWorks ---- BetweenaRockAndaHardPlace - a PointyHairedBoss above you and mostly GruntProgrammer s reporting to you (all the company can "afford"). ---- How odd - to me, GruntProgrammer means someone who does the HeavyLifting of producing code, rather than drawing diagrams. SomeoneHasToDoTheWork. ---- Where does the negative meaning for GruntProgrammer come from? In the article "Getting Things Done When You're Only a Grunt" http://www.joelonsoftware.com/articles/fog0000000332.html by JoelOnSoftware it has a positive meaning. In military world too. ---- See also BadProgrammer VeteranProgrammer GruntWork ---- Poor management makes a programmer a (derogatory) grunt. A GruntProgrammer is not a BadProgrammer. I am a GruntProgrammer and proud of it. I spend most of my time cleaning up the messes created by those with ideas well above their station.