Corporate Developers are Tools
First let me give my definition of Corporate Developer:
A software developer who is employed by a company that provides products/services that are unrelated to the development/sale of software.
Now let me explain what I mean by Tool:
A resource or implement that facilitates work.
And as I define them you could imagine that the largest percentage of developers fall under this definition. By and large they are a part of the IT department.
Corporations or companies that employee these tools dictate how and why the developer builds the software. The why part of this is usually in an effort to streamline other work or create a service their customers use directly (like a website for a bank). The how part of this is what I’m writing about and the part that might make developers “tools” in another sense of the word.
Most often in IT departments there are managers making the decision on what products or technologies are used by IT developers. Depending on the manager, these decisions are based on smart analysis of the technology or on the influence of a sales rep (Strippers and Steaks). A lot can be said about the competence of a manager by these decisions. But I don’t want to focus on the manager here (Zed does a good job of that). I’m after the developer.
What is the developers responsibility in some of these decisions? Should they sit back and accept their fate? Is it smart to go out and get certified in all the whiz-bang technology that the IT manager chose?
A good developer will be able to research and investigate technologies that will help them do their job better. Why shouldn’t they? It’s their job. The developer is doing the work and really should dictate the how. At least they should be capable of influencing the manager. They should be able to program in many languages and be competent in many paradigms so they can canvas the horizon for the best technology. If you’re an expert in one technology, like a certified Microsoft developer, how will you ever know there are better resources out there? I’m poking at myself here and saying I used to fall under this scrutiny.
Go and read up on a language you have never used before. Do some research into open source projects. Quit buying the books from that vendor your company uses. Listen to people who use different technologies than you do. Work on something for your job on your free time using a different language, then show you’re co-workers and your boss. Don’t be a <insert language here> developer - be a software developer.
If you don’t, then you’re just a tool.
Category: Work