If you’ve recently started your career as an entry-level engineer somewhere, you’re probably wondering what steps you’ll need to take to climb the ladder. Is it simply a matter of time? Do you have to go back to school or get a special certification?”
The answer to all of the above is the same: “Not necessarily.” Even though formal education may help you advance up the ranks, I know many developers who have reached “senior” status with a college degree—and no additional schooling.
While some people advocate for a move toward standardization, others feel that not having strict requirements helps the profession remain more egalitarian and open to non-traditional means of education. Only 41% of software engineers have a Computer Science degree, and 47% of professional web developers do not have a four-year degree at all. With such a large portion of professionals in the industry coming from non-standard backgrounds, it’s not surprising that there aren’t standard paths to promotions either. Besides, engineering encompasses so many skills that it may not be realistic to build a single test that proves you’re ready for an advanced role.
So, an individual’s progression through titles is mostly dependent on his or her employer’s preference and practice. Some companies are very rigid in their career tracks, while others are more loosely structured. That said, there are some traits that almost all senior engineers have, so it’s worth your time to develop them.
1. They Have Strong Debugging Skills
Senior engineers don’t necessarily write bug-free code—that’s an impossible standard for any one person—but they do have the knowledge and tools ready to diagnose and solve any issue within their domain. When you’re new to programming (or a specific language or toolset), tracking down bugs can be hard, but senior developers make it look easy.
Developing debugging skills takes time, but it helps if you work on a variety of projects with different people. If you don’t have the opportunity to take on interesting bugs at work, then get involved in an open source project.
2. They Know When Not to Do Something
Most new developers have some degree of “shiny object syndrome.” There are so many interesting and useful tools out there that it’s difficult to know when to use established best practices and when to take a risk and try something new.
The best developers know that rewriting a library from scratch just to make it more readable, or switching to the newest framework when the team has previously chosen an older one are not always good decisions. In fact, most senior engineers I know are wisely risk-averse; they know that good software is working software.
3. They Mentor Others
Whether it’s in their job description or not, senior engineers mentor their junior team members. They passionately share their knowledge, and, by doing so, they can level up the whole team.
Practice these skills now by going out of your way to be collaborative and touching base with your colleagues to see how you can be helpful.
4. They Review Code Meticulously
New engineers tend to fly through code reviews. Yes, reviewing someone else’s code can be challenging and monotonous, but to reach a high-level you’ll need to accept how important it is. It’s your job to put your years of experience to work.
5. They Can Communicate Complex Technical Ideas
To advance in this field, you’ll need to be able to clearly communicate details to others. You don’t have to be great at public speaking, but you should be able to get your point across to the other engineers you work with. This is a team game; nobody can be great at it without the ability to express his or her ideas and get others on board.
6. They Specialize
As with most technical fields, the longer you spend doing this, the more likely you are to develop a specialty. Senior engineers are usually dynamic enough to do three to five things on a team, but they’ll take real ownership over the one or two things they specialize in most.
7. They Admit What They Don’t Know
In job interviews, many people will try to fake their way around topics they don’t know. Senior engineers have been around long enough to realize that they couldn’t know everything about the topic if they tried, so they’ll usually be honest about what they do and don’t know.
While there aren’t any widely accepted benchmarks for senior engineers, there are notable differences that managers will keep an eye out for when deciding whom to promote or hire for top-level roles. If you want to advance, make sure you’re spending time improving the technical and non-technical skills listed above.