Ride the waterfall. Take your project. Analyse it, design it, implement it, test it, fix it, change it, almost test it again, deliver it. Take the fucking support calls.
Request a fucking change. Chain it in paper and process and professional prose. Ambiguous, contradictory, laborious language larded with jargon. Give a fucking estimate.
Pick a number, any number. Lie your fucking tongue out. Tell 'em it's crap. They don't fucking care and slash just your quote in two.
Slave away at your miserable job, marching away for the mistakes of management. Find out that the customer doesn't want it. Fuck 'em, It's been signed off. Hate those words. Rage at the fucked up fools.
Complain and get told it's the way it's done. You're just a fucking programmer who needs to face certain fucking business realities. Embrace legalism and arguing about whether it's supposed to be a button or a fucking hyperlink.
Blame your teachers. Blame UML. Blame lack of fucking Z-specs. Become an academic. Preach personal software process to apathetic students. Teach Eiffel and Haskell and cower behind your desk every time your hear a knock. Demand change requests before you give a fucking extension.