« All Episodes

What Defines a Senior Developer? - Choosing the Right Granularity Level

Published 3/9/2023

The traits that define a senior engineer are not catalogued perfectly in one spot. But, nevertheless, we'll try to cover some of the most important traits and habits of a senior engineer.

In today's episode, we'll add more detail to the commonly recommended skill of "work breakdown." Sometimes this extremely valuable skill is the opposite of what you really need to practice.

Feel free to incorporate these into your skill matrices, reviews, or job descriptions - I'd love to hear about it if you do!

📮 Ask a Question

If you enjoyed this episode and would like me to discuss a question that you have on the show, drop it over at: developertea.com.

📮 Join the Discord

If you want to be a part of a supportive community of engineers (non-engineers welcome!) working to improve their lives and careers, join us on the Developer Tea Discord community by visiting https://developertea.com/discord today!

🧡 Leave a Review

If you're enjoying the show and want to support the content head over to iTunes and leave a review! It helps other developers discover the show and keep us focused on what matters to you.

Transcript (Generated by OpenAI Whisper)

we've been talking about traits of senior engineers and in today's episode we're going to continue this discussion my name is jonathan guttrell you're listening to developer team my goal on the show is to help driven developers like you find clarity perspective and purpose in their careers i want to talk about a specific trait that senior engineers especially lead tech lead positions and principals these are high level engineers what they are able to do that typically is an acquired skill this takes time patience effort learning experience all of those things uh are a part of acquiring this particular trait or skill and it's actually a suite of skills but they're all related to the same idea you've probably heard or seen in your competency matrix at your company or on the list the the job requirements list or job description rather you've heard of work breakdown being able to break down work into smaller chunks we've talked about this on the show before this is a critical and essential skill and it's underserved by most of these job descriptions because it's not just about being able to break work down this skill is about knowing where to be in a conversation where to be in a process in terms of granularity so the skill that's listed So, the skill that's listed is break work down, but the trait that I want to talk about, the senior level trait, is knowing what level you should be at at a given point in time. Should we break this work down further or not? Now, the heuristic that you will probably pick up from most people is yes, always break it down further. But the truth is, this is a little bit short-sighted. Sometimes work is vague and distant. And putting any more effort into adding more clarity around that is a fool's errand. It's a waste of time and energy. And so, the trait that a great senior engineer learns to develop over time is understanding what level of clarity needs to be achieved at a given point in time. So, this is... When I say this, I'm not talking about the skill that's listed. When I say a given point in time, I really do mean sometimes it is actually in a meeting where you're talking about a given feature. You're talking about a chunk of work that your team is getting ready to take on. You knowing, as a senior engineer, what level you should be talking at. In other words, how much complexity should we discuss in this particular meeting? This is a senior level trait. Because this comes down to communication and clarity. So, for example, if you're in the middle of a demo and you trail off onto something that 90% of the participants in that demo don't really care much about, well, you're probably getting too broken down. Now, I understand that we've kind of mixed some concepts here. One concept is add more information where there isn't any. Break the work down into smaller chunks. But the same... Outcomes can be shared here. In a meeting where you're communicating to another person and you end up getting into the weeds, that level of detail is not necessary and, in fact, turns into a hindrance. This is true if you try to break down work that is distant too early. That level of detail becomes a hindrance. Now, here's the important thing. The senior engineer doesn't just know how to do this. He knows how to do it for himself. They know how to facilitate this in those junctures. So, for example, if the team is starting to get too into the weeds, the senior engineer has the tools and the knowledge or the procedures, the tactics, to be able to pull the team back to where they need to be. And this isn't just a senior engineer's job. It's also a shared responsibility with other people on the team, the manager, a scrum master, or if you don't have that role, another engineering leader of some kind. They are also responsible for recognizing this same thing. But a senior engineer has the tools needed to be able to do this in these junctures. So, for example, a tool that you have in your tool chest to be able to reset the conversation. This is a very common need. Being able to return to some kind of common ground, a starting point, back to the basics. This is a very common maneuver that you'll need as a senior engineer. How can we go back, kind of forget what we've been talking about for a minute, start back at square one, and discuss this from the ground up? This is an important maneuver because it is very common. If you don't have senior level engineering, it is very common for these conversations to be codified, to turn into work. Often this work is premature in its design. And your goal as a senior engineer is to make sure that the work is being designed well. That's one of your goals at least. And one of the important things to do in order to ensure that good design is to slow things down and make sure you're looking at it from multiple angles. Going back to square one allows you to do that. Similarly, having tools for digging into a, a hard conversation or digging into a topic where there's not a lot of clarity, where there does need to be a lot of decision-making happening. This is another set of maneuvers that is, that a senior engineer likely has in their tool belt. Once again, hopefully you understand that when we're talking about this being a senior engineer's trait, this is almost never done by just one person, right? This is, this is something that a senior engineer is capable of facilitating, but they're not forcing the room to follow their lead. This is something that they would develop alongside their team. Thanks so much for listening to today's episode of Developer Tea. If you enjoyed this discussion, and if you'd like to take it further, please join us in the Developer Tea Discord community, head over to developertea.com slash discord. We did have a little bit of an error in publishing. If you're watching the episode, what defines a senior developer systematically communicating value? We have corrected that audio. You should be able to go and listen to that on developertea.com and in any of the podcasting apps that you're probably already using. So go check that episode out. It's kind of means that you get two episodes in today's release. Thanks so much for listening. And until next time, enjoy your tea. Thank you.