When mapping out your development career plan, consider this: There are about 25 million developers in the world, and a million or so more are estimated to join their ranks every year. If you’re a new programmer, these figures might leave you wondering what you can do to stand out and succeed in your career as a developer. Obviously, being a good coder is the single most important key to success as a programmer. But there are several other moves worth making that can help accelerate careers in programming, especially for newer developers who are vying to gain name recognition or compile a highly compelling resume.
Here’s a list of four ways to take to jump-start your development career plan--without having to invest in more training or pay for certifications that may or may not actually help you get a job.
1. Contribute to Open Source
The open source ecosystem may not seem like the first place to look if you are trying to get started in a programming career. After all, many contributors to open source projects work for free, and working for free may not appear to be a good use of your time if you’re just starting a career.
Yet, in the case of open source, it can be. Contributing to a big-name open source project like Linux, Kubernetes or OpenStack is a great way to add impressive credentials to your career. And because most open source projects accept contributions from anyone as long as the contributions respond to a need for the project and are well-written, the barriers for contributing are low, even if you don’t have a lot of experience to boast of. Few developers straight out of college are going to get to work on well-known commercial software, but contributing to famous open source projects is a real possibility.
Helping to write open source can be especially beneficial career-wise if you contribute to a project within a particular niche where you hope to get a job. For example, if you’re into AI programming, contributing to a project like TensorFlow--an open source machine learning framework--could be a good way to bolster your resume in the eyes of companies that are hiring developers in the AI space.
It’s worth noting, too, that about half of open source programmers are actually paid, despite widespread assumptions to the contrary. So, there’s a chance that contributing to an open source project could lead to an actual job working on the same project, with your salary paid by a company that supports the project.
2. Learn a Trendy Programming Language
Another way to stand out from the crowd is to learn a “hot” programming language.
Knowing how to code in a tried-and-true language like Java or C++ will be important for many jobs. But Java and C++ programmers are a dime a dozen. If you want to stand apart, it’s worth investing time in learning a newer or trendier language, as well, like Rust or Go. It’s anyone’s guess as to whether these languages will still be considered trendy five or 10 years from now, but if you’re looking for ways to move forward in a programming career today, they could be the answer.
Keep in mind, though, that in-demand languages vary by location and industry. It’s worth doing some research to determine which languages will score you the most points with the companies where you’d like to work.
3. Learn a Legacy Programming Language
While knowing a trendy language will make you attractive to some employers, learning an old, legacy language may prove equally beneficial--if not more so. As older generations of programmers retire, brain-drain is becoming a serious issue within some niches of the programming world, such as mainframes. The languages and other skills necessary to code on these systems just aren’t being taught in many CS courses anymore, and employers are struggling to find younger programmers who have the requisite expertise.
So, don’t write off languages like Fortran or COBOL as being not worth your time. Despite being decades old, they remain more widely used than you might think, and just may be the key to getting a high-paying programming job.
4. Learn DevOps
DevOps may sound like just a buzzword, and, in some ways, it is. But at its core, it refers to the idea that developers should be able to do software administration and management work, or at least collaborate with people who do.
For this reason, teaching yourself how to deploy and manage applications, in addition to coding them, is a good investment. Whether the jobs you apply for are explicitly advertised as DevOps positions or not, there is a good chance that employers will be looking for someone who can help with the “ops” side of things, not just dev. So, learn what CI/CD means, how to provision a cloud environment, how to work with a management tool like Kubernetes, and so on. You may not need to master these skills, but having familiarity with them will give you a leg up in a programming career.
As more and more programmers enter the workforce, standing out from the pack will become increasingly challenging, especially for younger developers. Mapping out a smooth and successful development career plan involves skilling up on the right programing languages--new and old--as well as involving yourself in open source projects.