It’s a good time to be a software developer.

The demand for software developers seems insatiable. There aren’t many other professions I can think of where potential employers and headhunters go out of their way to find YOU.

Yet it happens all the time to myself and my fellow software developer colleagues all the time.

That said, it also creates a false sense of job security. Because in this day and age, there really is no such thing as job security.

Now, more than ever before, companies are in a never-ending quest to cut expenses and maximize profits.

And it’s no secret that the biggest expense to a company’s bottom line is their labor force.

Ironically, it makes software developers rather vulnerable to this. We’re often well compensated for our skills and labor, so we shouldn’t be surprised that we often wear targets on our backs when companies go through financial rough patches or try to figure out ways to cut expenses. As an employer, it’s logical to find the largest expenses and your biggest expense will naturally be the employees who incur the largest labor costs, which often points back to the technical staff of the company.

It certainly was the case when I experienced my first company layoff not long after 9/11.

My company was losing revenue fast and it simply couldn’t afford the staff it hired up until that time.

They gutted the IT department staff, including myself. It didn’t just happen to my company at the time. It happened to many other tech companies as well, as the internet/dot com bubble burst, and investors realized that many of these pie in the sky companies were just that… pie in the sky business ventures that couldn’t turn a  profit.

I learned a painful yet valuable lesson.

EVERYONE IS EXPENDABLE.

Just because you think you’re valuable to your employer, doesn’t mean they won’t get rid of you if they think it’ll help them cut labor expenses. Especially if your employer does pay a pretty penny to keep you employed.

Globalization has become a huge incentive for employers to look outside the United States for cheaper labor as well. Why pay the wages for an American employee when you can find cheaper talent outside the country?

In fact, I read not long ago that IBM now employs more offshore talent than it has in the United States. The implication is clear. No one’s job is safe.

Experiencing that layoff taught me never to be complacent about my job situation. Even when things seem good and the company seems to be doing well financially, it doesn’t mean they aren’t constantly thinking about the bottom line, financially.

Being a software developer, while highly valued to many employers, is actually a double-edged sword.

We software developers use technology as our primary tool to get our job done.

The problem is technology moves at a breakneck pace.

The technology I learned when I first started out in my programming career isn’t very marketable today unless it’s a company which still uses that old and outdated programming language.

And building your career on old, outdated technologies is a risky proposition. Sure, you might find enough companies who are willing to pay you for those legacy tech skills. But sooner or later, those same organizations will probably want to replace their legacy technology with something newer, which will leave you and your legacy skills and knowledge out the door.

So keeping your technical skills up to date is the first line of defense to stay marketable as a software developer.

Keeping your technical skills up to date is the first line of defense to stay marketable as a software developer. Click To Tweet

That means being familiar with the current technology landscape.

Keeping Skills Sharp in an Ever-Changing Tech Landscape

Back when I first started out in my programming career, developing desktop native software was the norm.

But these days, developing internet-based web applications is the norm.

Programming languages change and evolve as well. Some fall out of favor and new ones take their place.

Javascript, once considered a little toy scripting language, has evolved to become a first-class programming language. It used to only live inside the web browser, as a client-side scripting language.

But with the introduction of NodeJS, Javascript can live on the web server. And thanks to NoSQL databases like MongoDB and CouchDB, you can also use Javascript to communicate and interact with backend NoSQL databases.

And that’s exactly what many thousands of software developers are using today to build highly scalable, production-quality websites and applications.

And believe me when I say that companies can be real sticklers about programming languages and frameworks.

As a developer, I can attest to the fact that once you know one programming language, it’s relatively easy to pick up another. All programming languages share the same core computer science concepts like looping, if-then branching logic and data structures. The specific syntax is the only thing that changes.

Yet try explaining this to a potential employer. If you don’t have 7 years of Java Spring Framework programming experience and 8 years as an Enterprise Javabean developer, you’re just out of luck, my friend.

Now it doesn’t mean you have to learn every new programming language and framework under the sun. There’s only so much time in the day and you have to pick wisely.

At the very least, it’s important to keep abreast of the new languages and tech stacks that are becoming popular.

It’s not too hard to find out what those are. Google is a few keystrokes away. Also, keeping in tune with what technologies headhunters and recruiters are looking for in technical job candidates can help as well.

But technology is only half of the equation.

It Really Is Who You Know

I can’t emphasize enough how important it is to network. It may sound like a cliche but there’s a lot of truth in the importance of developing your network.

When it does become time to look for a new job, there’s nothing that helps to get your resume in front of a hiring manager and at the top of their stack of potential resumes, than when you know someone at that company and they put in a good word for you and recommended you as a potential job candidate.

And of course, it’s a two way street when your friend asks you for the same favor at your own company.

It’s important to market yourself, not just with that potential new employer, but marketing yourself in general. There’s genuine power in social media, and when done properly, can garner you lots of attention. It’s why social media networks like LinkedIn are so powerful. They practically advertise for you and your skills, 24/7 across the entire breadth of the internet.

You’re really trying to sell yourself as a brand, and the more effective your branding, the more attention you’ll garner with potential employer suitors.

Some of you may be wondering why I’m advocating so much for looking outside your current employer, to stay marketable. After all, couldn’t you just stay at the same company and work towards getting promoted internally?

If that’s what you want, absolutely go for it.

But at the same time, realize that promotions depend on a lot of variables and factors… the new position has to be funded and available and there will potentially be lots and lots of competition for it. And say you do get the promotion, it still may not be financially worth as much as a job offer elsewhere outside your current employer.

Just the act of looking for a new job, and staying familiarized with current job interviewing practices has value in and of itself. Job interviewing techniques, like anything else, change over time. But you really won’t know HOW it’s changed unless you personally experience a job interview.

Sure you can search it up on the internet, but nothing beats first-hand experience.

Now, I’m not saying to job hop at the first opportunity.

But staying marketable means being willing and more importantly, READY to, if the need arises.

Looking for your next tech job?
Learn how ProFocus can help find the right position for you.