This week, senior software engineer, instructor, and blogger Swizec Teller spoke with SE Radio’s Brijesh Ammanath about the “Senior Mindset.” Becoming a senior engineer is about more than just years of experience but rather about cultivating a different way of thinking.
This episode offers insights into what it takes to become a senior engineer, including themes of learning, mentorship, influencing, leadership, performance management, growth, and career path. Understand the key traits and behaviors of senior engineers and the mindset with which they approach problems.
Learn to improve your teaching skills by using an iterative approach that’s similar to development. Understand how codifying best practices frees up engineering time to focus on the hard challenges.
Dig deeper into leadership and understand how you lead and influence teams that you’re not managing directly. Finally, consider how the timeboxing technique can help you to focus and get into the flow state.
Software Engineering Radio - Episode 515: Swizec Teller on Becoming a Senior Engineer
- Swizec on being a software engineer, from basics to influencing leadership, mentorship, learning performance management and career path.
- Career titles and what you should do with it.
- Coding to solve problems
- The main difference between a junior or mid-level engineer and a senior engineer.
- Identifiable behaviors of a senior engineer.
- Senior engineers work as a force multiplier
- Codifying best practices
- How to lead a project
- Influencing other team members or teams to use your solution instead of writing their own
- Importance of mentorship
- Performance Management - managing the performance of senior engineers
- Growth and Career Progression for Senior Engineers
- Skills to transition from junior to senior engineer
- Working at a small company vs big company
"Years of tenure are probably the least correlated with you being a true senior software engineer" - Swizec Teller
"If you do get a good job title, I would definitely take it. Because titles do help your career. That's why we give titles out." - Swizec Teller
"Once you have that title, or if you want to get that title based on merit, rather than just years on the job, focus primarily on how you approach solving problems." - Swizec Teller
"Engineers like to get really focused on the engineering and coding aspects. We kind of forget about why it is that we do engineering and why it is that we write code" - Swizec Teller
"The more senior you get, the more you become focused on using code as a tool to solve problems and to achieve business results rather than code for its own sake." - Swizec Teller
"The main identifier behaviors of a senior engineer are this relentless focus on solving problems rather than writing the code" - Swizec Teller
"Focus on using code to solve problems in business, rather than thinking about the code itself as like a craft." - Swizec Teller
"focusing on solving the business problem rather than building the best solution, which might not be the best fit for solving the business problem" - Brijesh Ammanath
"Even if you build the best code and there's no users for it, you've just wasted a bunch of time" - Swizec Teller
"The first solution is always going to be wrong. It's better to get it out quickly and figure out the right solution, then you can think about how to polish it up and how to make it better" - Swizec Teller
"We are not dealing with the kind of scale where you have billions of users using your software every day. So you can get away with not being as tightly engineered as Google." - Swizec Teller
"Force multipliers are the kind of people that you put on a team. And they make everyone around them work better, perform at a higher level." - Swizec Teller
"What often happens with senior engineers is that the kind of problems you're solving start outgrowing the amount of work you can do yourself" - Swizec Teller
"A single engineer is almost never going to be able to deliver a software project that runs like a hundred million dollar business" - Swizec Teller
"The way you can take the force multiplier part into your own career is to embrace the idea that modern software development is a team sport." - Swizec Teller
"Most of the engineers I've met, I would almost rather tell them to stop learning so many new things and try to focus on a few things a little bit more" - Swizec Teller
"Going really deep in one technology, or maybe even five technologies, if that's what you like, is a better approach than learning the surface of everything." - Swizec Teller
"Knowing the surface of everything is useful because it helps you jump around" - Swizec Teller
"If you can't make time to learn something. It might not actually be worth learning" - Swizec Teller
"Solving the problem is the motivation part, figuring out the solution is the learning part" - Swizec Teller
"There's different levels of codifying best practices. The first level of codifying a best practice is figuring out what is the best practice" - Swizec Teller
"What might be a best practice in one organization might not work as a best practice at another with different context" - BA
"My favorite part of engineering is the leadership part" - Swizec Teller
"People managers are more focused on their people's careers, removing obstacles and communication across teams and doing the one-on-ones." - Swizec Teller
"A lot of really experienced leaders that I've talked to have said that managing or leading engineers is a lot like dealing with kids. They all think they know best, very temperamental and they just want to do what they want to do. But you have to kind of nudge them in the right direction" - Swizec Teller
"I've seen it work on myself and everyone that I've ever tried it on - you present a choice and people can make their own choice, but it's among the options that work for you." - Swizec Teller
"What works with influencing engineers is making sure that everyone feels like their inputs have been heard, making sure that their concerns have been heard, making time for everyone to raise their concerns with a solution, meantime, for everyone to propose their solutions and kind of guiding them towards a good decision." - Swizec Teller
"By giving everyone the opportunity to raise concerns, they might also change your mind and you come up with a better result, a better solution" - Swizec Teller
"What timeboxing helps with is making sure that when you get into flow or when you really fall into it, you also have a stopping point because you can't think straight for a very long time" - Swizec Teller
"Context switching is very expensive mentally. So working on a million things at the same time or switching every 10 minutes can be very taxing on focus and on actually making progress on anything" - Swizec Teller
"You can empower people to take their own notes, to make their own sub-tasks or to slice up the ticket. And that way you're free to spend more time on that critical piece that only you can do, which is making decisions based on your experience using the neural network in your head, that you've trained over a long career to make those decisions much quicker, because you've seen how they play out in the past." - Swizec Teller
"Out of all of the tools I've tried for time blocking, the one that ends up working the best is just my calendar" - Swizec Teller
"Mentors are like a force multiplier on yourself. Same with coaching" - Swizec Teller
"As a smart, talented, and motivated engineer, you can always figure things out on your own, but it's a lot easier if you can ask someone and they say: 'oh yeah, I've done this 50 million times in my career'" - Swizec Teller
"The main thing about mentorship is that it's very mentee driven. So nobody is going to sit around and wait to give you advice" - Swizec Teller
"Find somebody who's more experienced than you and just talk to them, enjoy their company, have an unofficial mentorship going on" - Swizec Teller
"There's a lot of people thinking back on my career that were my mentors and neither of us probably realized that they were mentors at the time" - Swizec Teller
"If engineers were valued for delivering features or business value, we're going to naturally approach our work much differently than if we're incentivized for butt-in-seats time" - Swizec Teller
"Butt-in-seat time usually shows that the manager in question or the business in question doesn't really trust their engineers to be hardworking" - Swizec Teller
"If you incentivize engineers based on business results, and if you manage them based on business results, everything else tends to kind of fall in line with that" - Swizec Teller
"Make outcomes, the primary metric for performance management" - BA
"Focus on finding ways to solve bigger and better problems" - Swizec Teller
"Start shifting more towards focusing on how to solve the problem, then how to design a solution rather than the actual implementation." - Swizec Teller
"Start adding those leadership skills and solving bigger problems. And one thing that everyone can learn and that everyone can work on is the ownership mentality. Really owning the thing that you've been tasked with solving." - Swizec Teller
"Focus on delivering the result rather than just doing something others told you to do" - Swizec Teller
"If you go into a smaller company. You're going to get a lot more ownership, a lot more responsibility, a lot faster. It's almost like being thrown in the deep end. Whereas at the bigger company, you get a much more streamlined experience. You get to see how the companies work." - Swizec Teller