Programmers' Strategies for a Commodity-Proof Career

Article ID: 63567
What's scarce in the U.S. might be widely available in the world at large

If there's one overarching trend that's dominating the IT industry these days, it's cost savings—or some flavor of cost reduction. It has manifested in the thousands of tech job layoffs we've seen in the U.S., which tend to reflect the revenue realities of a global recession. At the same time, there's mounting evidence that some companies are shifting tech positions to countries that can provide cheaper talent, either through direct hires or outsourcing contracts. And, it turns out, our favorite tech company of all—IBM—is leading the charge.

To be fair, IBM is one of the more global organizations in the world—more than half of its business comes from regions outside the U.S. It's fairly natural for a company that's been selling global solutions for years to also think and deliver labor globally. At the same time, IBM has attempted to patent a methodology and system for strategic global resource sourcing. That's right, a patent for offshoring jobs. American ingenuity at work, right?

Basically, IBM wanted to patent its technique for evaluating global labor to help companies shift resources (jobs) to the countries that would result in the lowest cost. Of course, all the big math equations would certainly figure in the effects of tax breaks, and even apparently the instability of various countries; after all, outsourcing is far more complicated than simply looking at hourly labor rates and converting them to U.S. dollars. IBM—not surprisingly after the patent-application information hit Slashdot—apparently withdrew the patent application on the same day the company slashed 5,000 or so jobs in the U.S. There are many more facets to this story, of course, including the fact that IBM develops a lot of superb technology for the world, in addition to delivering jobs to far-off lands that desperately need them.

Still, no matter how you feel about American jobs, IBM business strategy, and the rest of the world, the point remains: there were three skills noted by IBM in one of its global resource patent applications: "Engineers, HR, and Programmer."

That's Right, Programmer

What does it mean? It means that companies are reducing certain jobs (perhaps inevitably) to commodities. Strictly speaking, a commodity is an article of trade or commerce, and while commodities can be in demand and increase in value . . . commodities in the American economy tend to reflect undervalued items bought for the lowest possible price.

A programmer, then, is reduced to a skill that has an associated cost. If you want that skill, all you have to do is find the lowest price and buy it. In an Internet-flattened world, programming skills can travel pretty fast. And what's scarce in the U.S. might be widely available in the world at large. How does this affect programmers?

If I wanted to buy a commodity—say, a bottle of glass cleaner—right now, I'm limited to buying it from my local stores: the gas station, a drug store, a big-box department store. I might be able to order it online, but it'll take at least 24 hours to get to me. What if there were 300 million bottles of glass cleaner on the other side of the world? Could I buy those bottles for a lot less than my local options? Oh yes. But getting a bottle of glass cleaner from there to here is rather difficult. If I could instantly beam it from there to here via some newly exploited law of physics, might I be willing to pay half the price for a bottle of glass cleaner?

Programmers, it turns out, are dealing with newly exploited laws of physics—the Internet—and they are facing commodity pricing pressures. This is clear. The tougher issue is what to do about it. And moreover, are there concrete strategies that programmers can employ today to help ensure they aren't reduced to being a resource for global trade?

Three Fundamental Strategies

There's a lot of career advice floating around on this subject, and while most of it is applicable, a lot of it is highly dependent upon individuals in individual situations: their jobs, their personality, their industry, their region of the world, and the type of management and company owners who are paying their bills. Still, three fundamental strategies for ensuring that you don't become a commodity rise to the top: acquire varied skills, understand new technology, and express your value.

None of these are easy. No one is saying it is. But which is harder in our current economic climate: holding on to a good job or finding a new one? Let's take a closer look.

1. Acquire Varied Skill

The first rule of avoiding commodity pricing is to steer clear of simplification. A commodity is only a commodity if it can be broken down and labeled as something fairly raw. Single skills are more easily measured as commodities. Think of it this way: "The thing I ask people is, 'Are you an RPG programmer or are you an IT developer?'" says Trevor Perry, CTO at KMR Systems and an industry speaker and IBM i evangelist. "I think the RPG programmer is going to be an extinct animal, but the IT developer who knows RPG as part of their skill set is not so much a threatened developer."

The first thing you need to do is modernize yourself. "You've got to modernize your skills. It's a tricky thing for people who've been around the industry for a long time, but you've got to do it. You've got to learn new techniques for coding and you've got to build a toolset that includes lots more things than ever before," Perry recommends.

"For example, PHP has hit our world, and if you know PHP, you can do some things that you can't do quickly with RPG. So now, my environment on the i—I have a lot of customers who have both RPG and PHP, and the people who show value are those that know RPG and PHP," he explains.

PHP isn't the only new skill, but it is one of the most likely to help keep you versatile. It's also hard to go wrong learning something about the other cool-kid acronyms like SQL, XML, MySQL, SOA, and maybe even .NET, though that comes into play more so down below. Java, of course, is a good skill, but it might be out of reach in the near term.

Still, there are dangers, right? What if you acquire new skills, maybe even on your own dime, and find out that now you're a PHP programmer who has to compete with youngster PHP phenoms who code for chump change and free Mountain Dew?

Don't worry, there's more to you than PHP, right? In this situation, Perry says, "You have three big skills that you can leverage: you're an IT developer who has RPG programming skills, you have PHP skills, and you have a strong business understanding that those guys coming out of college don't have."

By having multiple skills, you're more likely to fit into better positions like a business analyst or slide into new projects as business requirements change.

2. Understand New Technology

"There are programmers who just fix programs and there are business analyst/developers who actually observe processes and suggest improvements that improve productivity or give a competitive edge or actually save money," notes Bob Langieri, director of Excel Technical and president of the OCEAN User Group. Obviously, the employees that can save money or provide a competitive edge are the ones least likely to be thought of as commodities.

So, how do you observe and improve? You definitely want to keep up on the latest IBM i technology and directions, but there's more to it than following IBM.

"Make sure you know what is going on in the industry," recommends Aaron Bartell, a software developer and consultant at Krengel Technology (and industry speaker and blogger of MowYourLawn.com fame). "Read non-iSeries trade rags and blogs on a regular basis so you can understand what is going on and can thus speak intelligibly in meetings when the opportunity arises," he says.

"Right now I am really liking SD Times. Make sure you, as an RPG programmer, understand the latest technologies in not only RPG (e.g., ILE, free form, XML), but also what your AS/400, IBM i can accomplish (e.g., SQL, PHP, MySQL, Java, virtualization). More pointedly, understand how to extend your IBM i data and business logic through things like web services and SQL stored procedures—essentially, start understanding what SOA is and what it means," he says.

Beyond the knowledge, what does this broader understanding bring? Even if you're not currently in a position where you can put it to work, it brings opportunity: if the conversation turns to new technologies, you can chime in. You'll be able to recognize issues and confidently suggest better solutions. Confidence comes in knowing more answers before the questions are even asked. And if your organization is considering shifting to other solutions, you may either be able to express a better solution or transition along with the change. Even more important, understanding technology can keep you from thinking inside the same old box.

"Most RPG programmers need to look ahead and become a strategist. You've got to start thinking about how you add value to the business, and not about how great a program you just wrote," Perry says. "You've got to look at it from a business perspective and from a strategy perspective, and that's really hard for most RPG programmers."

Of course, if all else fails and your position is "resourced" beyond your control, you'll have a leg up during your job interview.

3. Express Your Value

Of the three basic strategies for avoiding the trap of commodity labor, expressing your value is the most difficult. It's far harder than taking a Brown-Nosing 101 class from your community college. Still, if you have multiple skills and a strong understanding of the latest (and competing) technologies, you're starting with the right foundation.

There is one basic danger for the RPG programmer: Offshoring. Larger organizations may offshore programmers while smaller organizations may offshore their entire IT department. "It looks really good on paper, but in the end it turns out that most of those things backfire—and there's a reason they backfire," Perry says. "It turns out that most RPG programmers have some knowledge of the business that you're in, and that's a unique skill. If you get an RPG programmer in India, yeah, they're going to know the language, but do they understand your business?"

So where does that leave you? In a proactive position. Decision makers who decide to outsource are most often stuck in a world of spreadsheets and paper. Maybe you don't have a direct line to the CIO, but you can make sure that your manager starts seeing you in a new light.

"You can show value by having a strategy for modernizing the apps, even if it's just the look and feel. The anathema for most RPG programmers is strategy," Perry says. "By human nature people are tactical and don't actually think ahead. If you have a strategy, for example, of how to reface an app so it was in Windows, you wouldn't know that it was still running on i under the covers, and yet the i would still be running its most fantastic self—reliable, scalable, all these kinds of things—but nobody steps up and says, 'I have a plan for that,'" Perry explains.

"Show management and users the true cost—the value—of running applications on the System i versus other options: the difference in security, reliability. Show them that they can have GUI, web services, etc., with their existing framework," Langieri says. "There are tools—open source and proprietary—that can bridge the System i with the web or other platforms without giving up your investment or security of what has been developed on the System i. Developers need to be proactive in championing their platform and what it can do. The developer who is not constantly pushing the envelope, challenging, and innovating is a commodity, and their career is on a less secure playing field than it once was 15 years ago."

Meanwhile, Bartell cuts to the heart of the issue—if not for yourself than certainly for a peer or two: "Work on your personality," he says.

"If you are an introvert, then try to shed that mantra and get involved in decision making and learn how to productively debate in your shop. Don't be the grumpy, pissed-off, mad-at-the-world programmer because that might put you first on the chopping block since you are a main point of slowing progress," he says.

"Learn how to work through the motions of being able to make company and/or career-changing decisions (i.e., switching from RPG/IBM i to .NET/Microsoft or more potently stated, learn how to fight against switching your entire RPG-DB2-OS/400 programming stack over to .NET because it just isn't worth it for the long term). This means knowing both sides of the fence, which can be done for free by downloading tools like SharpDevelop to create drag-and-drop GUI C#-.NET applications," Bartell recommends.

Think Like Apple

Overall, we can reduce these strategies to another comparison. If there's one tech company that's bucking all the trends, it's Apple. The company produces the now iconic iPhone, as well as the iPod and Mac computer line, all of which happen to be selling well despite a lousy economy and a very high cost of acquisition. How does Apple do it? The company does not sell a PC nor does it sell a phone—it sells combo packages that defy easy comparison. Its products start with a rugged yet elegant form, then a huge mix of useful software is added, and in the end the sum value results in a commodity-bucking Apple product. You don't have to appreciate Apple to appreciate the strategy. And what it comes down to, really, is which would you rather be: a Mac or a PC?

Chris Maxcer is news editor for System iNEWS. "I first broached this subject April 1 on our Maxed Out blog in a post called, 'Are You a Commodity?', and it obviously hit home for some readers," Chris says. "One reader, Chad, summed it up with a single sentence, 'The problem is that we're seen as a resource with a cost, not as an asset with a value.' Ouch. But that's the nut of the challenge—making sure that we're seen as assets with value."

ProVIP Sponsors

ProVIP Sponsors