Some Developers lead "lives of quiet desperation" (thanks, Thoreau). These are the cubicle Developers that you can find near the backbone of any major corporate or governmental setting. Over time, these Developers can get into a rut, where there’s nothing but the factory-like drudge of maintaining status quo.
Tech is alive with possibilities, and computer programming is a field that positively crackles with innovation. For the mid-level or senior Developer that’s lost touch with how exciting their career should be, it might be time to change things up.
How can these skilled Developers stay on top of the latest changes in the field while still maintaining their not-as-challenging corporate or government positions?
How can employers encourage these valuable team members to keep things fresh?
Here are some tips for keeping it real while modernizing your developer stack.
Remember Why You Chose This Gig
When people think of art, it’s typically the ballet or Hamilton the musical, a Van Gogh painting or even their own weekend doodling on a sketchpad. To the uninitiated, computer programming probably isn’t considered an art form.
But Developers would argue against this. That’s because they solve digital problems in unique and fabulous ways. A good Developer working in digital technology strives to solve challenges by writing the most elegant and efficient code possible at that moment.
When we say “code,” think “foreign language,” because that’s basically what it is. Software Developers solve problems by writing script in computer languages. They use math, logic, troubleshooting, and the creative side of their brains to make, improve, and maintain the technology that you’re using to read this.
The creativity comes in how Developers craft the language to get the software or hardware to complete a task. Problems can be solved in different ways, but the best Developers have the most concise, intelligent, and elegant language to get the job done. It should be noted that the field has a couple handfuls of programming languages and architectures to can select from. Their tool selection can say a lot about how modern their approach is.
Problems can arise when the Developers fail to keep up with current technologies. This happens a lot. While these professionals may land a great, steady job at a bank, in state government, at a hospital, or another enterprise organization, they may look up from their screen one day and realize that technology has changed around them and they’ve failed to keep up.
What happens to a Developer with 10 years of experience maintaining legacy platforms when corporate downsizing puts them out of a job?
Career Mistakes for the Lifelong Developer
Unless they can find a startup that doesn’t fail in the first year or a software consulting firm that builds lots of different products, Senior Developers have a high probability of falling prey to technology stagnation.
An InfoWorld article points out that there are two problems with staying in one place for too long:
- It limits learning, which is the mantra of technologists
- It thins out and weakens a professional network
While there are certainly a lot of Developer jobs out there, the best roles will inevitably go to the engineering version of the millennial, the Developers that keep at least one finger in the latest versioning and newest tools.
On the flip side, even COBOL Developers can find work maintaining legacy code so old it creaks.
10 Ways to Stay Sharp, Grasshopper
Sticking to their current stack means the Developer is probably really great at their current job. But how does that affect a long-term career in a field that is, by design, constantly reinventing itself?
The truth (take note, Junior Developers!) is that there is no modern software job today where a Developer will use the same tools for their entire career. The benefit of a wider portfolio of skills extends beyond job marketability; in the right work environment, the question becomes which tool is the most efficient. Having the right tool for every job is what makes for a better digital product in the long run.
Or, to put it another way, the best Developers know a little about any number of tools, while having mastered a few tips and tricks up and down the stack.
For experienced Developers seeking a career refresh, here are 10 ways to learn new skills:
- Every quarter, make a learning bucket list. Have you always wanted to check out mobile development? Are you interested in learning the concepts behind user interface? Maybe there’s a language that’s been calling your name? No matter what, the first step toward dusting the cobwebs off an old stack is to make a goal and then make a plan to get there.
- Try pair programming, which forces collaboration between two Developers. Elbow-to-elbow collaboration has obvious benefits for the less experienced, but there is also benefit for the more seasoned Developer being paired periodically with a young whippersnapper to introduce them to newer tools. It’s a win-win that can force change and freshen a stale stack or department.
- Consider mentoring Junior Developers, a pay-it-forward move that yields surprising benefits for the elder sensei Developer.
- Follow industry trends by setting aside time each week to reach what’s going on. Here’s a good feed on the latest newsworthy tech innovation. Or check out GitHub trending for the best nerd news.
- Rack up points on Stack Overflow by browsing and answering the latest questions. Try starting with the Hottest Questions each week.
- Get into podcasts. There are zillions. Try hitting PlayerFM for a good list. Software Engineering Daily is another good one. Or checkout The Changelog or Coding Blocks to keep things fresh.
- Go to local MeetUps, free gatherings on every topic imaginable. MeetUps engage Developers in a collaborative effort to learn new things and build community-focused networks.
Go here to learn new ways to build a better network.
- Pick a new language or framework, and learn it. If your employer pays for education or certification, take advantage of that resource. Or check out resources like freeCodeCamp or edX for free ways to learn more.
- Teach a class and share your existing skills. You will be amazed at what the process of teaching others will teach you.
- Read for 30 minutes every day. Whether it’s a blog or a technical manual, having the discipline to learn something new will keep your mind sharp.
Now, here’s a note for employers: A bored Developer is a flight risk. Ask yourself what your organization has done lately to develop your Developers.
For Developers wondering where to start with stack modernization, let’s look at some of the hottest skills for 2019.
2019 Programmer Skills to Hone
TechRepublic covered some of the best job skills for developers to cultivate this year. Topping the list was knowledge of emerging technologies such as blockchain, cybersecurity, and the data sciences.
Their list of need-to-know skills also included:
- Artificial intelligence (AI) and machine learning
- Full stack development
- Cloud engineering
CNBC agrees that data science will be one of the hottest skills in the coming years, along with business analysis, game development, and natural language processing, another of the building blocks that make up AI.
For Front-End Developer wannabes and those with an affinity for this end of the stack, UX and UI skills will remain high on the list for 2019 and the foreseeable future. Both are different subsets of the front end:
- User experience concentrates on the interface between the end user and the product. UX Developers prototype, research and test the digital product in light of how the consumer interacts with each button and function.
- User interface experts design app and websites for visual appeal, functionality and flow, and ease of use.They guide the end user through the interactive elements of a product via the digital process.
Both of these subset skills can be applied across the stack. Any Developer should give some thought to the end user experience no matter what they’re working on. Lose sight of the end user and you’ve lost your audience.
But what about soft skills? The cliché is that Developers are notorious for lacking people skills, but why should they care if they’re hanging out in SQL all day? Do soft skills really matter for the Developer of the future?
Soft Skills for Hard-Core Developers
The truth to share here is that no one really likes a computer curmudgeon. In today’s business world, Developers need to collaborate with cross-functional teams because the days of having technology as a back office function are over. Today and for the foreseeable future, technology is business, which elevates the back-office Developer into a new forward-facing, client-centric position.
That makes soft skills, or those personality traits that allow computer nerds to play well with others, just as important as learning the ins and outs of cryptocurrency. Simple Programmer lists a number of these characteristics that most employers seek now or will seek in the future:
- A strong work ethic that can carry the Developer through an on-time delivery even if it requires a few extra hours.
- Change management skills can help a Developer through Agile's frequent changes to the development environment. While Developers generally hate drama, they must have an easygoing attitude that can accommodate a field that is rapidly evolving amid the volatility of end user decision-making.
- Teamwork is in; flying solo in a cubicle is out. Several brains are always better in the Developer world, so Programmers that can take feedback and work in teams are in demand. Employers are looking for Developers that can work with cross-functional teams, end users, and each other.
- Communication and approachability are skills that require Developers to do more than come in, sit down, and don a pair of headphones. That’s like closing an office door. While this is still a necessary part of Developer concentration, blocking other people in this way does not signal your willingness to play well with others.
Of course, the best way to modernize your stack is to take on a new gig. Artisan Talent has a variety of Developer positions available in every type of industry, whether it’s a disruptive startup or an enterprise looking to build out their team. Having a networking conversation with one of our experienced talent reps could be the first step toward a refreshed career.