Stop me if you’ve heard this one before: A developer walks into a business meeting and an argument ensues. The developer is furious about being asked to cut corners, write shoddy code and generally hack bits of software together in a way that makes a cheap plumber look good. Meanwhile the other side of the table is furious about the slow pace of development: the developers are spending weeks or months with no new features being shipped and nothing changing. The two sides have very different viewpoints on the best way to be successful.
Unfortunately, this isn’t a joke and there’s no punchline. It’s a very real problem in many companies. One I’ve seen many times. The business technology divide splits too many companies in half.
From talking to people on both side of this split it come down to a lack of understanding, neither side “gets” the other. Each side has a different set of basic assumptions they’re operating from, assumptions about value generation, accountability, professionalism, motivation and many more. It’s worth taking a quick overview of the areas where these differing assumptions come up. Needless to say this isn’t a complete list, nor is any point true in every (or even many) companies, rather its a range of the sort of issues that might come up.