8 Ways to Reboot Your Software Development Career
This year, let’s resolve to look up from our text editors and libraries for a moment to focus on the most important technologies and consider the career long-view.
Join the DZone community and get the full member experience.Join For Free
Even if resolutions aren’t your thing, a new year still represents a great opportunity to reflect on the past and plan for the future — in our professional pursuits as well as our personal lives. For some, that may mean building upon the existing forward momentum in our career paths. For others, that may mean reassessing and rebooting a career that seems to be treading water or simply missing something.
However your career is going, you’re sure to find something in these eight ideas to boost your software development career. Our goal is not to just rehash the obvious, but to offer insightful, actionable advice that you can get started on right away.
1. Invest in Cloud and Containers
Software developers who feel pigeonholed by their experience with a particular language or platform should pay close attention to the unrelenting proliferation of cloud computing and containerization. Both offer enormous opportunities for career growth or even career rebirth, according to Connor Leech, a technical recruiter at Mondo:
“The cloud is here and most of our clients use it,” Leech tells us. “Knowing how Platform-as-a-Service (PaaS) technologies work allows individuals to branch into different parts of the stack and have a high-level view of the company’s infrastructure, making them more valuable. Focusing on high-level architecture is important for career advancement and allows developers to take on more responsibility as they see the bigger picture.”
Experience with Amazon Web Services (AWS) typically tops demand among Leech’s employer clients, though of course, other cloud platforms are also growing quickly, including Microsoft’s Azure and Google Cloud Platform. Leech sees related demand for container know-how, and especially for Docker experience. “AWS and Docker are ubiquitous tools that companies we work with use,” Leech says.
If you measure at least part of your job satisfaction in dollars and cents, consider this: Cloud and containerization skills are increasingly powerful chips at the bargaining table, according to Leech, with AWS expertise in particular fetching high prices on the job market. Nor is this just for the mid- and senior-level folks. Even for lower-level QA opportunities or software engineer positions, he adds, AWS and Docker are consistently in the employers’ “nice-to-have” category.
2. Study for the Test
If you plan to hit the job market this year, Leech stresses the importance of properly preparing for the interview process — especially coding and other technical tests. This might seem obvious, yet Leech regularly sees even experienced devs tripped up in this process. “We work with engineers who are spectacular at their jobs and work for reputable companies, but when they get to the interview they do not pass,” he says. The primary reason? Bumbling the technical challenges. Leech sees companies across industries commonly posing binary sort tree and string manipulation problems. For top-level developer gigs, Leech emphasizes the need to know algorithms and Big O notation.
“Love it or hate it, the way that most companies screen candidates for top-level positions is through coding screens,” Leech says. “Being able to crack these puzzles opens new doors while doing poorly at them will hold engineers back in their software engineering careers.”
3. Remember That Software Is About More Than Coding
New Relic’s own Developer Advocate Tori Wieldt offers this reminder for devs seeking inspiration for the next chapter in their career: “Now that every company is a software company, every company desperately needs people who understand technology.” That reality is opening significant new career growth avenues for people with technical experience. This could be especially appealing for devs who feel they’ve hit a ceiling in their programming career or who’ve simply grown weary of writing code day after day. Moreover, these roles typically require an understanding of how code works, but not necessarily high-level coding skills that require almost constant upkeep and education.
“There are several jobs that require an understanding of tech but not coding. You could use your skills as a business analyst, helping your company figure out business workflows,” Tori advises. “Or are you the exception who can go deep with technology but is also an extrovert? Consider becoming a developer evangelist. You can travel and meet geeks around the world.”
(Tori recently shared more about her own career shift into developer evangelism with InfoWorld.)
4. Create Your Ideal Job
As modern software transforms the way companies operate, it’s creating plenty of unidentified new career opportunities. The next step in your career path might not even yet have a name. According to Tori, “In my opinion, the best jobs are the ones you create.” This often works well at your existing employer, where you know the organization and can readily identify gaps and opportunities in its processes, roles, and other aspects. “If you see a need in your company, fill it,” she says. “You can figure out your title later.”
5. Learn What Your Coworkers Do
Similar thinking applies even if you’re not looking to create a new position for yourself. If you want to be a better developer, spend more time understanding the business you’re in. Seek out opportunities to learn what all those other people in the office do. Ask to shadow — or at least have lunch with — a product manager, for example. Or, sit alongside a customer service rep to learn what they hear directly from customers. Those customers are also your customers, and understanding customer problems — just like understanding what makes your coworkers tick — can help you build better software and qualify for leadership positions.
6. Don’t Just Write Code; Assess Its Quality and Performance
If you want to kick your career into a higher gear, you may want to take a more active role in assessing and ensuring the quality and performance of the code you (and others) write. That could take a variety of forms, including learning and using new technology tools and services for assessing and optimizing application performance and health. It could involve an organizational or cultural shift, such as moving to a DevOps model and taking on more active responsibilities in areas like testing and deployment, rather than simply shipping code off to ops and moving on to the next thing.
“Read high-quality code, sometimes even on paper printouts, where you can write notes and mark with colored pens,” Eich tells Krill. “On high-quality code, I think a classic is still Kernighan and Ritchie’s The C Programming Language, but I’m showing my age. Also, The Unix Programming Environment. More recent code worth reading: Solving Every Sudoku Puzzle or anything on Norvig, really.”
7. Find Your Team
Elevator founder and CEO Mike Anderson wrote an intriguing Medium piece earlier this year on what he views as the two career paths for software engineers. The bottom line: The most successful ones seem to operate and move in teams rather than as individuals. Anderson notes that companies need their devs to “take control of their team and their career,” adding that “Developers need to realize that they own their team, and feel empowered to advocate for themselves, their projects, and what’s best for the company.”
If you haven’t found your team yet, keep looking — you may already be sitting among them. If you’re not, that might be a sign that it’s time to look elsewhere.
8. Embrace (Some) Trends — It’s OK, Really
In the world of the 24/7 tech hype machine, a bit of skepticism is healthy. Some programming languages, frameworks, tools, and other technologies can turn out to be more of a passing fad than a career catalyst. But you don’t want to miss the sea changes that forever alter the software world (see #1 above, for example). If you can identify and capitalize on the real opportunities amidst the hype, your big picture is likely to get, well, bigger. Consider Agile. The concept is far from new, but there’s a reason it keeps popping up. Turns out that Agile’s demonstrable benefits are spreading beyond development and operations, as this Harvard Business Review feature reveals, and even the C-suite is embracing the phenomenon.
Published at DZone with permission of Kevin Casey, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.