So you've been in the industry for a while now. Great job! You've probably rejoiced as you landed your first job. Maybe you've moved on since then (maybe even a few times) or maybe you've stayed with your first employer. Whatever the case, you've been in the industry for a number of years now. Maybe 5. Maybe 10. Maybe more. You've done some cool things (like building that awesome feature all the customers didn't know they wanted) and some not-so-cool things (like taking down production). On paper, you look pretty amazing! You've definitely been around the block a few times and have your own set of scars to show for it.
But... have you improved?
Have you learned from your mistakes?
Have you challenged yourself in new and different ways?
Have you put effort into learning new things?
Over the years, I've had opportunities to be involved in the interview process at work. We've mainly interviewed college students looking for internships or their first jobs. On occasion, though, we've had the opportunity to interview a few engineers who have had a lot of experience. Some of them have been in the industry for 15+ years and have done a lot of interesting things. In a few of these interviews, one thing has stuck out to me...
Instead of 15+ years of improving, they had a few years of improvement followed by many years of the same old stuff.
Instead of learning from mistakes, some have ignored them.
Instead of challenging themselves, they've done the minimum to get by. They've punched the clock and been grateful for a way to pay the bills.
Instead of learning new things, they've only adapted what they've always done to the new situations they encounter.
So, I've learned that experience isn't everything. Just having been in the industry for 15 years isn't good enough. Just punching the clock isn't good enough. Just doing the same old stuff in new ways year after year isn't enough. This is stagnation.
So, what can you do to avoid stagnation?
There's a lot you can do. Here are some things that I think are valuable in becoming a senior engineer, not just an engineer with years of experience.
One of the key attributes that I think helps you become a senior engineer is a constant desire to improve. Whether this desire comes from a personal drive to be the best you can be or just a curiosity about a different way of doing things or a desire to be able to help others learn or any other reason, this drive can be a key differentiator in your experience. Without this drive, you'll be punching the clock and not much else. With this drive, you'll be involved and engaged in the work you're doing. You'll be able to do more and more over time, you'll be happier and more fulfilled, and you'll be gaining the skills you need to become a senior engineer.
Another key attribute that will help you on your road to becoming a senior engineer is humility. Humility will help you learn from those around you. If you think you're the smartest person in the company and you can't learn anything from so-and-so in a code review because, what do they know anyway? You're either in the wrong company or you're just plain wrong. There's plenty we can learn from those around us. Yeah, your coworkers may be weird, but so are you in your own way. Humility will not only help you learn from those around you, it'll also help you realize when you're wrong and help you learn from your mistakes and failures. Without this humility, you're likely going to keep some bad habits that will keep you at a junior level for longer than you could be. With this humility, you'll likely have a drive to improve yourself and be willing to constantly challenge the way you do things in search of a better way.
There are many other attributes that can help you on your progression to the senior level. What attributes do you admire in the senior engineers around you? What has helped you on your road to the senior level? I'm interested to hear your thoughts.
It's important to keep in mind that experience or years in the field alone doesn't make you a Senior Engineer. Senior Engineers constantly improve. Experienced Engineers stagnate. Doing the same thing over and over again isn't improvement. Challenging yourself and looking for new, better ways of doing those things is improvement. And improvement is what will give you the experience you need on your road to a Senior Engineer. So don't get comfortable. Challenge yourself and you'll accelerate on your way to a higher level.
Originally posted on my personal blog.