For the past four months I’ve been working as a software developer in a small (around 10 people) Agile team. Over the course of a usual 8-hour working day, we pair-program for around 6 hours; the rest of the time is divided between discussion, housekeeping and the occasional short meeting (two stand-ups of about 5-10 minutes each a day). As far as longer meetings go, we have one planning meeting and one retrospective per two-week iteration.
At our stand-up meetings, the business analysts tell us what they need us to be working on, and we decide amongst ourselves how to break the work down and share it around. Consensus is usually reached fairly rapidly, although if there are disagreements we will sometimes agree to break off and discuss the best approach. We usually settle on whatever solution seems easiest to understand and communicate within the team: the emphasis is on enabling work to proceed rather than arriving at an optimally elegant design.
This is far and away the most productive of all the working arrangements I’ve experienced; also the least harassed, the least beset by irrelevancies. To me it seems incontrovertibly obvious, proven beyond any reasonable doubt, that agile methodologies succeed by revoking managerialism, dismantling its paranoiac and anti-productive patterns of organisation and replacing them with working practices that solicit and presuppose the intelligence and motivation of workers.
Managerialism sucks the life out of a body of working people, and profoundly subverts the proper sense of accountability that motivates them to do their jobs well. It creates its own necessity by installing incentives and disciplinary structures that assume the worst of people, and are reinforced by the very failures they induce. It is, in short, a recipe for disabling institutions and running down services, for depriving workers of agency and confining their productive capacity.
There is more demand for this under capitalism than you might suppose. Efficient production is not a primary goal of capitalism, but merely one of several possible ways of achieving its actual goal, the securing of profits. Managerialism is a security mechanism: it prevents the relations of production within a system from being unduly disturbed by the productive forces they harness. Under the managerialist (or “market Stalinist”) regime, boredom and inefficiency are not the price paid for control, but the very means through which control is realised. They are not unintended consequences of the heedless pursuit of profit, but directly serve the purpose of keeping profit in the “right” hands.
Agile methods of software development establish, within the context of a small team of programmers, a kind of localised anti-managerialist utopia: an image of what working life might be like for everyone if its practices and purposes were not deliberately and systematically misaligned. There exist pockets of privilege in which a good many of the manifold insults and idiocies of capitalist realism are, without much strife or ceremony, simply rescinded in the interests of getting things done. The lesson here is not that everybody adopting Agile will magically transform capitalism into something nicer, but simply that it’s demonstrably not true that no workable alternatives to managerialism exist, or have been imagined, or are currently being practised by anyone in what idiots like to call “the real world”.