Podcast: Play in new window | Download (37.4MB) | Embed
Subscribe: Apple Podcasts | Spotify | Email | RSS | More
One thing that shocks new developers (and the people around them) is just how much time is required for learning, relearning, building new skills, and internalizing new concepts when building software. It’s nearly impossible to stay caught up on technology as a developer using only your work hours, and even people that spend a lot of time learning new things outside of work often find themselves struggling to keep up. In short, when you signed up to be a software developer, you signed up to be a lifelong learner. Your ability to continually refine the way that you learn new material will either help you achieve your career goals or it will deny them to you entirely. Worse still, the way that most of us were taught in school is NOTHING like the way that we have to learn on the fly in the real world. When you were in school, you had someone around who could help get you unstuck from a learning plateau when you encountered one. In post-school life, these types of people are much more rare, their time is more expensive, and the knowledge they teach is more specific, possibly even too specific to be helpful.
Software developers are often expected to pick up new technology in a relatively short period of time. Making it worse, there are often several things you need to be learning quickly at the same time, meaning that if you spend an excessive amount of time learning one thing, it can often mean lost opportunities with the other stuff you are supposed to be learning. It’s also monstrously frustrating, because you probably are around people who learn some things more quickly than you do – if they learn more slowly, they are probably trying to hide that fact. When you reach a point where you are putting in more effort, but achieving less growth, you need some effective strategies to help you start improving again. The better your strategy is, the better your career will be over the long term.
So, what is a “learning plateau” and why does it happen? A “learning plateau” is a term used in educational psychology. It denotes a time during the course of learning, where the learner, despite putting in the work, seems to make no significant progress. There are a variety of causes of learning plateaus, from changes in motivation, to a lack of time and money, to simply hitting a psychological limit. And if you are regularly in the habit of learning new things, learning plateaus are an almost-certain occurrence, even if you really enjoy what you are learning. While addressing the causes of a learning plateau is useful, it’s also important to note that they are simply a natural feature of the learning process. If you hit a plateau, it’s because you climbed up to it.
Developers are subject to drinking from a firehose when it comes to learning. It’s just the way things are now. Learning plateaus are inevitable in the best of environments and it’s arguable that the learning environment for software developers is far from the best. As a result, you are going to regularly run into plateaus in your efforts to learn new technology. Therefore your career growth is directly related to how quickly you can overcome plateaus. If you can do it quickly, then you can learn more useful technology more quickly, which will help keep your skills sharp. Being able to quickly overcome plateaus will also make the acquisition of skills more pleasant, simply because it will make it less of a slog. It doesn’t just help your work life though – it can also free up lots of time for having a life outside of work.
Find your weak spots and address those.
Growth in any skill is typically uneven. Not only do you learn some things faster, but some things are also far less enjoyable, more difficult to practice, more complex, or easy to forget. It’s also very common training the areas in which you are weak – it’s often very discouraging, compared to the areas in which you are strong. However, if you neglect them for long enough, eventually they will halt your growth in your strong areas as well. If you don’t know what your weak spots are, that in itself is a weak spot. Try to find some way to test your skills and knowledge that breaks down into the different things you are working on.
Find a difficult task that seems just beyond your reach and attack it.
Sometimes the edge of the plateau is really not that far away, but the problem is a lack of motivation and direction. If you find a goal that is achievable, but stretches you, it will often help overcome the plateau. Not only will such a goal give you something to work towards, but if the goal is practical, it can often make your weak spots far more obvious. Additionally, working towards a practical goal will often help you get perspective on things that you might find difficult otherwise because you are forced to use knowledge before you completely understand it.
Use the skill in a new situation
Another thing that can cause learning plateaus is repetitive training in similar circumstances. While such training can really help refine a skill in a particular context, sometimes trying to use the same skill in a different context will help you get out of a rut. New situations often introduce new constraints and opportunities when using an existing skill. Such changes can give you a deeper knowledge of why certain things work the way they do, as well as clearly showing you instances where they don’t work at all. This approach will also help you by making things interesting again and will force you to think more deeply about things you may have taken for granted earlier.
Change up your practice routine.
If you are practicing a skill regularly, you are likely doing so in a recurring set of circumstances. While this can be helpful for scheduling purposes, it’s not always ideal for maintaining motivation. And motivation cures a lot of ills in your learning process. Sometimes you can work your way off of a learning plateau by changing the time, location, or technique you are using to practice. Two of the key signals that you should change up your routine is when you either dread the routine, or when you can’t remember whether you have already done the routine today. Either one indicates a lack of engagement that may well be causing your learning plateau.
Revisit the basics again
If you have been doing the same thing for a while, you probably feel like you have the basics down thoroughly. While that may be true, the other thing that you likely have is a mental model of how all the pieces fit together. This mental model is formed based on both your learning and your experiences. While these mental models can be useful, they can also keep you from growing further, especially if they are partially incorrect (and most mental models are).
Reviewing the basics again doesn’t necessarily mean going back to an entirely beginner level. Rather, it means finding material that you believe is below your level, but that offers a good chance of finding things that you didn’t know. Sometimes reviewing the basics gives you a huge “Aha!” moment as you discover something works differently than you thought, while other times a review of the basics introduces you to subtleties that you missed when you were just trying to get your head around the big picture.
Ignore the plateau entirely and focus on building the skills you’ll need when it’s over.
When learning something new, it’s easy to get bogged down in minutiae. While you definitely shouldn’t skip over critical bits of knowledge, sometimes the importance of some information is only your mind. It can often be useful to think about what skills you’ll need once you have the skill you are trying to develop and pursue those.
Most skills don’t develop in isolation and there are often numerous complementary skills to the one you are trying to learn. Sometimes spending a little bit of time picking those up will give you a perspective on what you are trying to learn right now. Complementary skills are also useful in that they will often show you your less obvious weak areas. It is very common to the think that you really understand something well, simply because you are able to use it well in most instances – uncovering hidden weak spots will often show that you don’t understand a subject deeply.
Tricks of the Trade
Plateaus aren’t a bad thing, you can use them to your advantage. They allow you to keep your skill level while focusing on learning something else. The phrase “time in grade” gets a negative connotation in a lot of places but there are a lot of things that you only learn by spending time doing similar things. Plateaus are these times when you may not be advancing your career but you are gaining valuable experience that will help you when you do advance.
Join Us On Patreon
Level Up Financial Planning
Donate to Beej’s Mission Fund
Memo: Put “BJ Burns” in Memo