There are two kinds of companies in this world: The kind that sell you software, and the kind that use software to sell you something else.
There’s also the PGA. Someone forgot to inform them about the technology revolution.
The companies that sell software are easy to spot. You see their products in stores that sell… software. The companies that use software to sell you something are everywhere else. The golfers are on the links, chasing balls and cursing the gods.
Both kinds of companies have a bottom line in mind, they just think there are different ways to get there: Software companies know that good software (or a cornered market) is the key to making lots of money. Those other companies figure that software has something to do with making more money, but aren’t quite sure how that works. They aren’t even sure how to handle software teams.
And you have software developers caught in the middle.
We love what we do. In the majority of instances, we started programming or tinkering with computers when we were young, and it made us happy. We kept doing it. Lawyers can’t file a brief at age 5, but kids can program at age 5. When we grew up, we figured that everyone would see how much we like software and just leave us alone to make it. They had other plans. Meetings, diagrams, excel spreadsheets, quarterly reports, and cost/benefit analyses.
You show them great software, and they want you to make one of those things I just talked about, and try to fit the software in it somewhere, as if it were a line-item on a spreadsheet, or a font of magic in a diagram. In a meeting, it’s just a lot of buzzwords: We’re going to synergize our multiple offerings across the blogosphere with social media while using diverse delivery platforms to ensure a higher conversion rate. Or something.
Then, they pat you on the back, and tell you to go make their dream a reality. Then they leave for the golf-course. You sit down, read through piles of reports, looking at snazzy diagrams, and staring at numbers some accountant told you you’d have to meet.
It’s just about at this point where it hits you: They have no idea what it takes to bring pure thought stuff into something that ships and doesn’t suck. They have the gold, they make the rules, or so the conventional wisdom goes. You start banging out functional requirements, technical specs, and if you’re lucky enough to have a UI guy, he does the user interface stuff, and you two collaborate. If you have a team, you divvy out the work, collaborate on the design if needed, send the questions back to the customer. He’s probably on the golf-course with your boss, or he is your boss.