There are many ways you can grow in your job. But the very first thing you should do to improve your chances for job advancement is to study your companys business processes.
Ive been observing corporate programmers in action for more than forty years . Ive worked in billion-dollar companies in which I knew virtually every corporate computer application the company used. I call that overview the comprehensive, or single persons, view of a company, and I consider acquiring this overview vital to the success of every programmer. Most of the people profiled in this book have acquired this comprehensive viewthey understand every computerized job in their company, and how it relates to the company business processes. To be a super-programmer you should learn so much about how businesses operate that you can acquire a comprehensive view of a corporation with hundreds or thousands of computer users. You canover time, with focus and curiosity understand virtually every important computer application, even in a large company. That broad picture of the company will give you a perspective that is invaluable to corporate management, whose jobs are becoming more and more dependent on computer- related information.
Unfortunately, as most of the experts I have interviewed for this book point out, it is rare to find programmers these days who have an adequate knowledge of how business works (or, indeed, who even believe they need to acquire that knowledge).
Gene Bonett is founder and president of Xperia, a software development and consulting firm in Allentown, Pennsylvania. As a first-generation corporate programmer, Gene has seen it all. I spent about three months in Vietnam, he says. When I got out of the Marines at age 24 I didnt have a clue as to what I wanted to do with my life. Then he discovered information technology and programmingand worked his way up from computer operator to owner of a software firm that employs 42 people.
So Gene has more than thirty years worth of perspective. Ive been appalled, he booms, that Ive been unable to find anyone in the IT department at any of my fifty-five client companies who has the ability to take a customer orderwhether it has been sent electronically or taken over the phoneand walk that order through every aspect of that business until the product is shipped and the invoice hits the accountsreceivable system. I have not found one yet. But thirty years ago, programmers in IT departments would have been able to do that.
That is true: Thirty years ago, when the IBM/360 (an early computer mainframe) was just starting in most companies, the people in every IT department would accompany the systems analyst to the various departments that were being automated. The IT people and the analysts would observe the work of those who were performing the business functions and learn from them about the steps they were taking to do their work. We did all that systems design for the first time, taking all the department paperwork and translating it into computerized applications.
Now, three decades later, virtually all of the basic business applications have been computerized. Whats now being done is perhaps more sophisticated, but the programmers work only with little pieces of the application. Programmers focus now on whats already running in the IT department, so they dont have to go out to the users and learn new things. Consequently, they do not really understand each particular aspect of the business.
The problem with that is that the needs of businesses change everyday, Gene points out. So programmers have to understand business applications to make changes correctly. The department stores are forcing things on apparel manufacturing that were never done before, including extensive quality and compliance issues.
I find that in IT departments there is a lack of understanding of ITs role in the company, as well as what the company is trying to do and what information it needs to accomplish its mission.
IT departments are often narrowly focused on technology. They play in the technical sandbox. Decisions are made that dont adequately support the companys business requirements.
If you are a skilled IT person who doesnt routinely go out and interface with users in every department, as programmers did thirty years ago, how can you learn business applications?
Thats where individualism comes in. The individual takes the initiative to go out and sit with someone in a department and say, ˜What do you do, and how do you do it? That door is still not closed to the people in the IT department. Programmers do have the opportunity to move in and out of these departments, at least in a small company, at will.
Not only Gene, but other experts Ive interviewed for this book suggest that programmers take courses in accounting and economics at night, in the continuing education department of your local college. At the very least, you should get an accounting package for your PC (like Quicken or One Write Plus) and do all your personal accounting on that.
Corporations do these things on a bigger scale, utilizing the same techniques, keeping track of the corporate Ins (with ADD) and Outs (with SUBTRACT), with the occasional MULTIPLY and DIVIDE thrown in. This simplicity applies across every corporate business function.
But youve got to be familiar with the flow of work, and how things are done at every stage.
Corporate programmers have the power and the position to think creatively about solutions that could be very valuable for their companies, and then to implement them. Just ask yourself, Where is my company spending a lot of dollars? and What do I see that frustrates me and hinders me and others the most, and wastes our time? Those have been key productivity questions for many years, and you are uniquely qualifiedand in a positionto correct them, particularly if you get out of your IT office and visit the remote locations of your company. That is where the business functions critical to your company are taking place.