Effective Software Shops Never Lose Sight of the Ball
It’s easy for a software team to become so mired in their daily concerns that they lose sight of the ball. What is the ball in Softwareball? Let us answer with another question: Why do people work in a software shop?
Most people work in the IT industry because it can be a reliable way to make a living. Making a living requires a paycheck. This paycheck is the difference between hackers coding on their own time and professionals in the software industry. Where does this money come from that ends up in your bank account? The customers, of course. You’ve probably heard a million times about the importance of the customer. That’s because it is true. This is particularly difficult for techies to swallow sometimes because most of us get into this business because we love the code. We’re not interested in business or sales. This accounts for the cultural rift between the business side of a company and the technical side. Ask yourself, how often do you see the salespeople chumming around with the geeks? No, not often. The reality is that it was very likely a meeting of a salesperson and a geek, somewhere, at some point, that made your company possible and/or continuously successful in the first place. It is the salesperson’s job to locate customers and keep the business aligned to serve them so they are comfortable purchasing from your company. Everything we do in this game of softwareball serves no other purpose than this. No customers, no revenue. No revenue, no IT shop. No IT Shop, well, you get the idea…
So what is the ball in Softwareball? What do we need to keep our eye on the most?
The Customer.
Here is where is gets complicated. In an IT Shop, there are many ways in which we keep our eye on the customer. We do it first and foremost by aligning the shop with the customer needs. In software procurement, product management, analysis, and gathering customer requirements, we set the U.S.S. IT Shop on the bearing of serving the customer. This alignment happens within certain parameters, certain restrictions decided by the management in your company: Budget, schedule, and scope define the playing field for each game. Business and technical managers wrangle back and forth to define this field.
Analysts and testers serve the customer by remaining focused on the all important question: “How can we ensure that the software meets the customer’s needs?”.
Project managers ask “How can we serve our customers without running out of time or money?”
Developers and designers ask “How can we build this product so that it serves the customer reliably today and allows me and others to work efficiently on this project in the future?”
Architects ask “How can we design the foundation so we may build products on top of it to serve the customer effectively, allows for reliable product growth, and creates a natural, efficient workflow for the developers?”
As these different folks go off to do their jobs, the word “customer” may actually be used infrequently in their daily routine. We are building software, after all, we are not salespeople or therapists. What happens in an effective shop is that the idea of “customer service” is ingrained and innate in even the most technical and esoteric tasks.
Effective IT shops never lose sight of the ball, their customer.