Why (and How) You Should Keep Learning as a Software Developer
Getting into software development is hard. Trust me on this: my full-time job is training future software developers to have the skills they need to succeed in the field and pass a technical interview.
But every graduation, I tell my students one thing as they head towards their new jobs: you are never done learning.
In this article, we’ll explore why it’s vital you keep learning as a software developer in tech, as well as how to learn new things to keep your skills sharp.
Why You Need to Keep Learning as a Software Developer
Technology changes constantly. New languages rise and fall and existing languages grow new features each year to adapt with change. What you are being paid to code in at the beginning of your career will likely be radically different from what you do five years or a decade later.
I’m somewhat unusual in that I’ve been programming C# code for over 20 years. The only reason that I can use the same programming language for two decades is that it changes constantly to adapt to the changing technical landscape.
Where we deploy our code has changed quite a bit as well. Several decades ago you installed your applications on a user’s desktop machine or ran it on a server in your company office. After that, we shifted towards mobile applications and cloud-hosted server applications. Nowadays, we’re building web pages that can act like mobile applications and using clusters of containers running your application code.
While some of these concepts listed here are more intermediate than beginner, this illustrates how you can’t just “stay put” in tech. Tech will change on you and you are either going to be lagging behind, keeping up with the change, or leading the charge of innovation in your organization.
Your ability to stay current will directly impact your ability to:
- Get favorable pay raises and cost of living adjustments
- Get opportunities to advance within your organization
- Survive layoffs
- Get new job offers
Technology is a river, constantly pushing you further downstream unless you keep swimming and learning. Sometimes the current of change is slow, while other times it is sudden and dramatic.
As technologists, we need to keep learning or the torrent of change will push our skills to be less relevant over time.
How to Keep Learning as a Software Developer
So, how do you keep learning as a software developer and technologist?
Because everyone learns differently, the answer is going to be different for each person but generally falls into the buckets of reading, watching, listening and active learning through projects.
Some people learn very well by reading.
For these people, there are a wide variety of technical books out there for purchase in print and eBook format. I personally have a small library of technical books at home and read about one a week. However, you should keep in mind that tech books become obsolete fairly quickly as new versions of technologies come out.
By the way, if you’re looking for reading ideas, check out our list of helpful technical books to read on topics that don’t go out of date.
If you don’t need a full book, you can take a look at technical articles on various blogging platforms. A good search on a topic of interest will often turn up targeted articles on what you’re trying to learn.
If you learn better from speakers talking and sharing visuals and examples, there are a number of live and pre-recorded options for learning.
Another great way to learn is by attending a programming conference, such as some of the many great conferences I follow in the Midwest. At a conference, you get a series of talks offered throughout the day. Choose a talk that interests you the most and attend.
Conferences are a great way to learn about new technologies to investigate further, make connections with others in the area, get energized, and spark new ideas.
However, conferences sometimes require travel, usually cost money to attend and often occur during the workday. These factors make conferences prohibitive for some.
Thankfully, technical communities usually have user groups that offer a free talk every month and after hours on topics of interest to that group. These groups can be great to join to stay current, make new connections, and learn new things without the disruption of attending a conference during your workday.
You can usually find local groups in your area by doing a search on Meetup.com
Side Projects & Courses
Many people tell me that they learn by doing. I would say that everyone learns by doing as this is how we solidify our skills and convert theory to practice.
However, for some, the theory doesn’t help without initial practice. This is part of why Tech Elevator uses a project and tutorial-heavy approach to teaching software development to new learners.
But once you’re out in the “real world,” how do you find projects to continue to grow?
You hear a lot of people talk about doing side projects. Side projects are just interesting ideas that occurred to you that you decide to take on. It could be something like trying to make a user interface similar to that on another website or building a system to track board games or sporting events.
Side projects exist to help you explore a specific set of technologies or technical concepts. Side projects often don’t have specific requirements, due dates, or even a firm definition of when they are “done.” For this reason, side projects are seldom completed, but they still serve a valuable role in helping you explore new technologies.
For some people, side projects are too loose, undefined, and unguided—or they simply don’t have enough knowledge in the new technologies to start without guidance.
In these scenarios, you may want to try a guided tutorial out there on the internet (such as one of the many tutorials Tech Elevator offers to prospective students).
One interesting source of guided projects is Coursera, which runs online courses with video content and project-based homework. You don’t get to benefit from personal interactions with industry experts, but this approach is less daunting than starting with a blank slate.
Clearly, learning as a software developer is important to gaining and keeping a role.
This is why many of us on staff state that we are not just teaching our students the technologies on the curriculum. We teach our students how to continue to learn code throughout their careers.
On a personal level, I’ve been programming since I was in grade school and working with the technologies I teach for decades now. Last night I finished a course for fun and continuing development and started working on a new set of learning opportunities I want to complete over the next few weeks.
Learning never stops because tech never stops growing and changing.
Personally, I delight in the knowledge that there will always be new things to learn and new opportunities to grow. I may not be able to learn all of them or play with them all, but each month I get more capable as a technologist and the possibilities I see for new things to build never stop growing.
Are You Ready to Transform Your Career?
If you’re an avid learner and problem-solver looking to transform your career, take the first step and complete our 25-minute mini aptitude test. Find out if you have what it takes to become a software developer and change careers to a thriving role in tech.