Developer

IT pros and developers: Are they becoming one?

Guesting in Career, TechRepublic blogger Deb Shinder wants to know what you think about the blurring line between the duties of IT pros and those of developers. Read Deb's take and see what you think.
In this guest post from a regular contributor to TechRepublic, Deb Shinder, she wants to see what you guys think about the blurring line between the duties of IT pros and those of developers.

--------------------------------------------------------------------------------------

In the early days of computing, there was really only one category of "computer professional." Some had formal education in computer science and some were self-taught. Some called themselves programmers and some called themselves hackers. But almost all had a similar and very broad skill set: they fiddled with hardware; they wrote code; and they set up, configured, and ran the programs written by themselves and others.

More and more, it seems IT pros are being expected to learn programming in order to do their jobs.  The trend seemed to start with Exchange 2007, which frustrated many IT pros because they found that the old ways of doing things using the graphical interface had disappeared, requiring you to use PowerShell cmdlets and scripts instead. For those who came over to Windows from the UNIX world, this was a welcome development, and some Windows admins took to the new command line environment like fish to water, but others were less impressed. I heard over and over the mantra, "The whole reason I like Windows better than UNIX is because of the GUI! I want dialog boxes, not a command prompt!"

In fact, I knew some small business admins who stuck with Exchange 2003 and didn't upgrade for that very reason. However, they soon found PowerShell extending its tentacles into other parts of their administrative worlds and to them, this represented a giant step backward. Most acknowledged that it was great to have that tool, but they resented having their graphical tools taken away, and felt they were being dragged, kicking and screaming, into the "dark place" they thought they'd left behind when they left DOS.  It wasn't always a typo when they wrote about "PowerHell."

Two different skill sets

To understand how frustrating this turn of events can be for an IT pro, let's put it in terms of the medical profession. Asking IT pros to program is like asking general practitioners to perform surgery. One is not better than the other but they involve different skill sets.

IT pros tend to be more people oriented, good at dealing with end-users and understanding computers from the user point of view. Developers are often more like the folks in scrubs, who just want to get in there and work with the internal organs (the code) and think in programming language - and don't understand why everyone else doesn't, too.

Also like surgeons, many developers seem to think they're better, smarter, and more valuable to their organizations than the mere IT admins. And that idea is being reinforced by the push to make admins learn programming skills. Those who don't do well at it feel that they're inferior to those who do, discounting their own specialized skills and talents. The move to the cloud by Microsoft and other major tech companies is causing IT pros to feel even more abandoned. In fact, many are wondering if their jobs will all go away when the cloud settles over everything. Developers will obviously still be needed to create all those cloud apps, but if organizations dismantle their on-premise IT departments in favor of cloud services, they won't need anyone whose expertise lies in administering, maintaining and troubleshooting servers and software.

And some feel that there has been a noticeable lack of love for IT pros coming from Microsoft recently, as the company goes "all in" with the cloud. Some are talking about leaving the tech business altogether. Others are just waiting and watching, full of anxiety about what the future holds, and wondering whether we're headed back to the time when working with computers meant you knew how to code.

Summary

Of course there are some people who are good at both programming and IT administration. I know multi-talented folks who went to both med school and law school and are just as at home in a courtroom as they are with a scalpel or stethoscope, but they're few and far between. IT pros and developers have peacefully coexisted for many years, but that seems to be changing. What do you think?

About

Debra Littlejohn Shinder, MCSE, MVP is a technology consultant, trainer, and writer who has authored a number of books on computer operating systems, networking, and security. Deb is a tech editor, developmental editor, and contributor to over 20 add...

42 comments
tpilgrim1
tpilgrim1

Typical "code monkeys" have a superior mindset which management does not like. I myself have been a developer for 15 years and in the past 5 years, spent time getting Project Management experience. I am a programmer yet I can speak on a technical level as well as an executive level which is very valuable in todays market. Code Monkeys need to lose the attitude and learn that they are also expendable. :)

Tony Hopkinson
Tony Hopkinson

How could anyone who calls themself a developer, whether I would or not have missed the fact that they are considered expendable? Developer, is basically a modern term for analyst/programmer, a role that became prevalent as languages and environments became far more powerful in descriptive terms and computer time became much cheaper. If you want a fall back position employment wise start brushing up, you appear to have forgotten one or two fundamentals over the last five years..... When you live in a glasshouse chucking bricks about is foolish.

tindo57
tindo57

I am sad to say I agree, it is inevitable, with Web 3.0 and the pervasive Web, An IT professional simply cannot just be an administrator, but s/he also has to make all the bits and pieces work together...

Imprecator
Imprecator

Calling someone who makes scripts to automate systems management a "Developer" is akin to calling a janitor a "Maintenance Engineer". Even in the old "dark" days when "Servers" were called "Mainframes" and were sold by the company everyone loved to hate those days (that would be IBM for you "Digital Natives") The sysadmin was called a "System Programmer" and automating repetitive administrative tasks by using what we call a "scripting language" these days (anybody ever heard of something called REXX?) was expected. ANY SYSADMIN worth his/her salt MUST be able to handle scripting. Microsoft is putting emphasis on it because people who have to deal with a farm of 100 servers NEED scripting tools to manage those beasts, because "The End-User" of a server OS IS A SYSADMIN. And SysAdmins demanded the capability of automating routine tasks instead of going through a GUI that required interaction every time.

gdewrance
gdewrance

I have seen "programmers" try and ghost a machine or repair other users machines and fail. Then asking me to do it. I think we should stick to what we do best. I'll stick to administration e.g. VBScripts, powershell, SQL, Exch, AD, etc and the programmer can write programs so I can play games at lunch.

Tony Hopkinson
Tony Hopkinson

who wrote powershell, sqlserver, admin tools, exchange, AD etc. What will they be doing? Being guilty of thinking you will be good at one thing because you feel you are, at another is hardly a programmer only fault is it Mr Kettle?

The 'G-Man.'
The 'G-Man.'

Hence the problem with many developers (and some IT pros as well)

Tony Hopkinson
Tony Hopkinson

and some of us are right as well... :D There are a lot of people whio aren't developers or IT pros who are given jobs because they are cheap as opposed to capable. Bigging themselves up so they can argue from authority when caught out, is the only option the halfwits who hired them left them as a way of keeping their job....

RayJeff
RayJeff

I haven't had the please of writing a script on a job. I've tried to put myself in the mindset of writing a script, but for some reason, my mind wants to do hardcore programming. Not that I couldn't write a script, just never had a need to do so. Does that make me limited?

gypkap
gypkap

I have worked in Oracle, VB, Access, Javascript, Lotus Notes, SQL Server, HTML, and other environments over the last 10 years. I just use the right tool for the job and get the project done. So does any other developer.

Englebert
Englebert

Especially in the world of contractors, your employer may ask for help at any level, and any position. I have done development, Project Leading, QA, documentation, user training, BA work and so on. The analogy to the medical field is not entirely accurate. In this case they are not working with machines and numbers, they are working with actual human flesh and bones. One mistake and someone dies or debilitates.

Tony Hopkinson
Tony Hopkinson

I've worked in environments where a mistake can kill or harm someone. Not the point though is it. IT pros whether they devlop or not are closer to GPs than brain surgeons. Unless you want to count swapping a processor out. :p

earagon
earagon

I agree, that to begin with, they were one. I believe that they should be one. It would be beneficial to the IT pro/Developer since they would always have a job to do and something to fall back on in any other case.

JimWillette
JimWillette

Even within the developer ranks there are different skill sets or aptitudes that come into play. I don't want designers fixing code because they are tempted to rework / redesgn it rather than simply fixing what is broken, and in the process introducing more bugs than are fixed. I find designers make poor testers as well; they don't seem to have the thought processes that allow them to write good tests. I'm not picking on designers. I wouldn't want the reversal of these roles for different reasons. I'm sure you can think of a few more examples. Thanks for a thought provoking post.

kpthottam
kpthottam

GUIs are meant for endusers, why pay top dollars for a person who calls himself ( herself) an IT pro , but who can't create a simple script ? Frankly writing scripts isn't hardcore programming BTW. These people aren't being asked to do Object Oriented programming. To me these people were never IT pros since clicking around can be done by the enduser as well.

adamblevins
adamblevins

I've been in IT since the early 90's. Once a scary thing for most folks because they had no experience with computers, most people now understand basic computer usage. Also, some are willing to dig a little deeper and attempt admin tasks, as mentioned by KP above. That is great.... until something goes awry, which it inevitably does. Then they are calling in those "Faux Pro's" to save their butts. My point is, common tasks have become Wizards that anyone can click through. Users are able to click the menus, but they still won't have the technical knowledge to work through the techie parts.

mysterchr
mysterchr

It's interesting that I came across this article today since yesterday I had interview with a company who wanted a system engineer to run their test environment. I would be there to maintain the environment and test all the new programs as well as correct any mistakes in the code. Now it may just be me but shouldn't that be the job of the developer? I mean I have no problem testing the software and maintaining the environment but if you want me to correct there code then I should be making developer bank not just sys engineer money. So I can see where you are coming from with companies trying to merge IT pros and developers into one. The problem with it is they are two different skills. The IT pro has his own list of coding languages he has to know. He has his own list of things to keep up with. And so does the developer. They may both work in IT but it's on seperate sides of the feild. I worked for a software company awhile back, they had dozens of developers. For the most part those developers didn't have a clue how to do my job. Because I've spent my life and career learning how to do my job, just as they've spent there life's and careers learning to code. So I agree with the author their trying to force us to join forces but it won't happen the way they want it to, and in the end we will be left with a huge mess to clean up.

dhearne
dhearne

First, your definition of an IT Pro is just a tad off. People who define themselves as being good with people are either HR professionals or managers. If you cannot use PowerShell (or similar scripting technology), you are not an IT Pro. Second, the trend has always been for the business to flatten and shrink IT as much as possible. Unless the business is based upon writing code (like a game design studio) IT represents a cost that must be minimized. That means less people doing more things. Many small organizations have an IT guy (or girl) who does everything from desktop support to convincing the CEO to buy different hardware.

IndianaTux
IndianaTux

I recieved my degree in Computer Programming about 4 years ago. Through one of my instructors, I got my foot in the door of an SMB - as an Infrastructure Technician. I worked in the company for several years, waiting for something to open up as a developer, but nothing ever did that fit my skillset. I work for a different division of the company than when I started, as IT as a whole has consolidated and then diverged to align with the business units. I now am not only an Infrastructure Tech, supporting PCs, laptops, smartphones, etc., but I also now develop and maintain our business unit's external website, which is coded in VB.NET. Knowing both roles has been invaluable to supporting both roles, as the knowledge base sometimes has some overlap. Knowing how the software works helps me to explain to my end users the nature of some of the issues they see, for example. There is definitely a growing need in the industry for IT pros and developers to wear the same hats, and I expect the trend to continue.

maus_69
maus_69

There are waaaaay more roles out there than admins and developers.

squamata
squamata

Adapt to changing market demands and stop complaining. And it's not completely true what you're saying. Many things were not possible to achieve using GUI even before. Especially if there was a complex issue to be solved within some services running in your infrastructure. So ... yes - if you don't know a bit of programming(scripting) you will not be a good Admin.

jmarkovic32
jmarkovic32

I don't adapt to unreasonable demands, I push back. I don't want to be a developer. Development and IT are two different disciplines. Next time you are at the doctor and he refers you to a specialist, tear up the referral and demand that he adapt to your needs, stop complaining and fix your issues!

s.goel
s.goel

Following the definitionsof an IT pro and a developer, I see myself firmly in the developer seat and I depend on our IT pro counterparts to ensure that the IT infrastructure is in top condition in order that systems continue to be available to me to do my own work - I have great respect for the skills/interest that I myself don't possess or care to develop. If its a service one's providing - IT pros and developers need to co-exist. Even with the cloud technology coming in, I think we'll still need our IT pros.

e24k
e24k

I hate what's happening, I love admin not coding. Can't we both exist without being one.

Etimbuk
Etimbuk

IT pros and developers are two different skill sets as indicated but the market today requires them to be one.

tctm
tctm

Is it really such a bad thing for IT pros to learn a new skill? Are they not used to that already?

mysterchr
mysterchr

You tell me if it is such a bad thing. I mean IT Pros are expected to keep up with every peice of software in their organization and ones that could possibly fit into there organization. They have to keep up with the updates how those updates impact on the computer as a whole and how those updates mearly impact on the program that is being updated. IT Pros are expected to keep up with networking, and all if it's previous present and future incarnations. We're expected to keep up with security. Now I understand developers have to keep up with the ever changing security but they only have to keep up with the changes that effect their program, IT pros have to keep up with your security flaws as well as all the other programs in there organization. I do not intend this to sound like a critizsm at all only an observation. MOST devolpers not all but most only have to deal with the outside world and how it relates to the program they are working on at the time. Where as IT Pros have to keep up with that program as well as all other programs in the "vacinity" So do you think the IT pros really need to be loaded down futher?

jmarkovic32
jmarkovic32

IT isn't one big umbrella kind of like medicine isn't one big umbrella. Trying to get a systems engineer to learn programming is like trying to get a brain surgeon to learn to be an OB/GYN and deliver babies. Programming isn't a skill, it's a discipline that requires intense education and training. I'm a Network Engineer, but I have a CS degree and I hate scripting and try to avoid it at all costs. Unlike a developer who has a deadline to develop and test, my stuff has to work YESTERDAY.

bergenfx
bergenfx

I think we need all kinds. Speaking from the product / application development side of the non-equation we definitely need members with skills and knowledge of internals for things like portability and optimization, but the real gap that is hard to fill is between the domain (knowledge) problem and the software (implementation) solution. If you are developing an mCAD platform, for example, it really helps to have (either or both) developers who can get their heads around solids and surface modeling, etc, along with mechanical engineers who have a talent for abstracting the mCAD domain in a way that helps to represent it in software. And by the way, most development teams I have had the pleasure to work with were populated largely with outgoing people who thrived on interacting with others to gather requirements, not to mention engaging with each other in sometimes raucous fashion to assert, negotiate and refine designs and likewise with integration.

rarsa
rarsa

In my department there are about 50 developers (about 60 analysts and then mgmt) but 92 systems (systems consisting sometimes of multiple applications). Some are doing development, some are doing support. So infrastructure, source management and all the scaffolding have their own groups. And of course with the move to outsourcing, some are leaving as the role of Integrator do not attract them. So, no, the roles are not merging. The roles may be changing.

jtdavies
jtdavies

Your example should read - Asking IT pros to program is like asking general practitioners to perform wart removal surgery. Messing with scripts is not real programming.

Orodreth
Orodreth

Even though there's many out here, for instance, consultants who can perform both. I see IT Pro as IT management, those most likely to deal directly with upper business managers or contract signers. The last time I checked most businesses want a clear separation of IT Pros (IT managers) from developers. Two reasons, its easier for management to speak to management, and for management policies to be pushed downstream onto developers. The article talks of end users, but the End Users are the business management not necessarily a system's users.

RayJeff
RayJeff

"The article talks of end users, but the End Users are the business management not necessarily a system's users. " Am I guessing that you are saying that the article should've been more specified in talking about the different types of end users? Because end users aren't just upper management.

Tony Hopkinson
Tony Hopkinson

for decades in the UK. My first ever application for an employer (1987), started with three people, now I develop for thousands and met I've a few hundred of them face to face. Did you mean to imply that developers aren't in IT and aren't professional by the way? You are confusing roles. A developer does analysis, design, and programming. More powerful machine, more powerful languages with more powerful abstractions freed us up for that. When we 'just' programmed, designers did the abstracts, our job was to make that work on a machine. Possibly a very specific one. As the profession has progressed we have got further away from the hardware and much neaer to the people. Programming is not language, it's not a machine, it's not an environment. They are all tools. Programming is way of defining a problem, it's a skill. You either have it or your don't. If you want your developers to be more people oriented, get them out of those damn cubicles! In my experience more than a few IT Pros are have or would make excellent developers, considering we've had two to three massive influxes of cookie cutter who I wouldn't trust to program a VCR, there's plenty of room.

ryumaou@hotmail.com
ryumaou@hotmail.com

Especially with the implication that "developers" aren't "IT professionals" in some way. I don't do development, really. I'm not a programmer. I do use Perl, on occasion, or batch files or shell scripts or other scripts as situations require, but I'm not a real developer or programmer in the true sense of the word. But, I tell people I'm an infrastructure specialist because that mostly covers my skill-set. And I'm proud to be mostly a generalist in a world full of specialists. Either way, though, I agree that the terms as used here are cloudy and misleading. I think that's an issue throughout the industry, however. Often, HR has no idea what a particular position really does in IT and the title doesn't always describe the skills required at all.

Justin James
Justin James

"Way back when", all sys admins needed to be at least adequate programmers. Stuff constantly needed to be recompiled from source, kernel patches had to be manually applied, etc. There was no Internet and Google, if it broke you were on your own to fix it. Likewise, programmers had to know their way around a system and understand its guts to get anything done. Even today, using a *Nix or Linux system (not to mention the mainframe out there) still benefits significantly from having an understanding of programming. It's only Windows that allowed a period of time for roughly 20 years where an administrator could get away with not having programming understanding. And even then, it was helpful (shell scripts, anyone?). J.Ja

The 'G-Man.'
The 'G-Man.'

had they been schooled correctly they would have this experience regardless. That's the reason you hire people who have computing / engineering (not IS / IT) degrees - at least they have proven they can learn / understand technical areas

Justin James
Justin James

Even a "CS" degree does not mean that the person can program OR competently manage a computer or network. In the schools, the holistic view of things never caught on (teaching students about "systems" and how things interact with each other), and some school focus on the academic stuff to the point where they barely write code. Other schools are just a quickie "how to churn out Java code" places. It's really sad, but unless I needed people with MA's and PhD's to be in my R&D labs, I have little faith in the product that colleges are selling right now. J.Ja

kevaburg
kevaburg

Because one person doing two jobs for ones persons pay is a good thing for the person paying the bills but it isn't realistically going to happen. I have spent many years working in differing environments and although scripting has become commonplace it doesn't make one a programmer per se. I do alot of work in TSQL and PLSQL, but essentially they are scripting languages as opposed to programming languages and even though I create small VB applications to take advantage of my SQL scripts, it is a long way away from being the work of a seasoned developer. There are of course people that aspire to learn everything about everything but unfortunately, and inevitably, success won't be too forthcoming. There is an illusion I think of people believing that ITPros and Developers can be encased in one single, functional body. Unfortunately the reality is that nothing can replace the dedicated and single individual that commits their time and effort to a single purpose. I firmly believe that to think otherwise is somewhat demeaning to those that strive for perfection in their own chosen field of expertise.

Tony Hopkinson
Tony Hopkinson

but you can't be 'expert' and current at both, too broad a field. Basically I was a one man shop, there's no doubt it could have been done better, even the coding which is my primary skillset. But there was no resource and I learnt a heck of a lot that became useful enough to get me a proper job. :p

RayJeff
RayJeff

I think I because lucky in my experience. I was in college working on my two year degree and I had a workstudy job on-campus running the college's main computer lab helpdesk. When I got my 2 year degree and transferred back to the university I originally started work o my Bachelor's, I was able to get a part-time job running the helpdesk in the main computer lab. After a few years of that, I got a job at another college, much smaller. I was the manager of a computer lab in one of the college's main academic divisions. The college's MIS dept consists of 3 people-the MIS director, the Network admin and a computer operator. SO, you can imagine how service requests are...Because of my experience and background, I was the unofficial IT person, not only for the academic division I worked in, but for the other academic divisions in the building and often worked with the other academic divisions as well and working with the Network admin on occasion. Chance (or was it) that when I was hired, the degree program I specifically worked with was needed a major DBMS created. While I had never formally did any database development, outside of a small time log database at the last job I had, that was it. Because of the necessity of time when it had to be created, I was the only one that could. I guess it didn't help that during my interviews when my former future supervisor stated talking about needed a database developed and from the little she told me of what was needed,in between the first and second interview, I came up with a quick n dirty concept DB to show it could be done. I couldn't help it...I was out of work for about 3 months and I was desperate for work :D Along with the database work, I needed to created a user interface program to allow the faculty to use the database. I have to say that the situation was perfect for me. My situation was unique because since I already worked with the end-users directly anyway because of being the tech support person for the division, they were the same people who I needed to work directly with for the development of the database. I'm a people person regardless of being an IT pro or a developer. This also helped me as far as my education. Being able to work all sides of the IT world is helping me to see the problems and issues of hardware, software, and even end-user dynamics that students don't normally get to see. My goal is to work towards a doctorate in Computer Science. In the end, my experience with both has made me much more well-rounded than many of my co-workers and friends in the field.

Tony Hopkinson
Tony Hopkinson

none. I can communicate with the experts, and they can communicate with me. I don't make foolish assumptions. I know enough to have a good idea of which bits to do where. And I've had some very good jobs because of that. You get five experts in a room, you need some one like us to knit them together, other wise they all go off on one and you end up with five best of breed something that can't and won't have anything to do with each other, just like their creators...

Editor's Picks