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


Summary

This episode of Developer Tea, hosted by Jonathan Cattrall, continues a series on the traits of senior engineers. The focus is on a specific, acquired skill set that goes beyond the basic competency of breaking work down into smaller chunks. The discussion centers on the senior engineer’s ability to discern and operate at the correct level of granularity at any given point in a process or conversation.

Cattrall explains that while job descriptions often list ‘work breakdown’ as a skill, the true senior-level trait is knowing what level of detail and clarity is necessary at a specific time. This involves judgment to avoid wasting effort on over-specifying distant, vague work or diving into unnecessary complexity during meetings where it becomes a hindrance. The skill is contextual, applying to discussions about features, team planning, and demos.

A significant portion of the episode highlights that senior engineers don’t just apply this skill personally; they facilitate it for their teams. They possess tools and tactics to recognize when a conversation is getting ‘into the weeds’ and can reset it to common ground or guide the team to dig deeper when more clarity and decision-making are needed. This facilitation is a shared responsibility with managers and other leaders but is a core capability of a senior engineer.

The host emphasizes that this trait is about facilitation and collaboration, not unilateral control. A senior engineer develops these maneuvers alongside their team to ensure work is designed well and premature decisions are avoided. The episode concludes by directing listeners to the Developer Tea Discord community and noting a correction to a previously published episode.


Topic Timeline

  • 00:00:00Introduction to senior engineer traits and granularity — Jonathan Cattrall introduces the episode as a continuation of discussing senior engineer traits. He states the goal is to help developers find clarity and purpose, and he previews the specific trait: knowing the right level of granularity, which is an acquired skill involving experience and learning.
  • 00:01:05Beyond basic work breakdown to choosing granularity level — The discussion moves past the common job requirement of ‘work breakdown.’ Cattrall defines the senior trait as knowing what level of granularity to operate at during a conversation or process. He questions the heuristic of always breaking work down further, noting it can be shortsighted and a waste of time for vague, distant work.
  • 00:02:39Applying granularity judgment in meetings and communication — Cattrall provides context for applying this skill, such as in meetings about features or team work. He explains it’s about knowing how much complexity to discuss to achieve the necessary clarity for that moment. He gives an example of a demo where diving into detail irrelevant to most participants is getting ‘too broken down’ and becomes a hindrance.
  • 00:04:15Senior engineers facilitate granularity for the team — The focus shifts to the senior engineer’s role in facilitating this skill for the entire team. Cattrall states they have tools to pull a team back from getting ‘into the weeds’ or to dig into topics needing more decision-making. This is a shared responsibility with managers and other leaders, but the senior engineer possesses specific facilitation tools.
  • 00:05:04Tools for resetting conversations and ensuring good design — Cattrall describes specific maneuvers, like resetting a conversation to ‘square one’ to return to common ground. This is a common need to prevent premature work design. The senior engineer’s goal is to ensure work is designed well, which sometimes requires slowing down and re-examining from multiple angles by going back to basics.
  • 00:06:41Collaborative facilitation and episode conclusion — Cattrall clarifies that this trait is almost never exercised by one person alone; it’s about a senior engineer’s capability to facilitate alongside their team, not force a direction. He concludes the episode, thanks listeners, and promotes the Developer Tea Discord community, also mentioning a correction to a previously published episode.

Episode Info

  • Podcast: Developer Tea
  • Author: Jonathan Cutrell
  • Category: Technology Business Careers Society & Culture
  • Published: 2023-03-09T08:00:00Z
  • Duration: 00:07:48

References


Podcast Info


Transcript

[00:00:00] We’ve been talking about traits of senior engineers.

[00:00:12] And in today’s episode, we’re going to continue this discussion.

[00:00:16] My name is Jonathan Cattrall.

[00:00:17] You’re listening to Developer Team.

[00:00:18] My goal on the show is to help driven developers like you find clarity, perspective, and purpose

[00:00:23] in their careers.

[00:00:25] I want to talk about a specific trait that senior engineers, especially tech lead positions

[00:00:35] and principals, these are high level engineers, what they are able to do that typically is

[00:00:43] an acquired skill.

[00:00:45] This takes time, patience, effort, learning, experience, all of those things are a part

[00:00:54] of acquiring this particular trait or skill.

[00:00:59] And it’s actually a suite of skills, but they’re all related to the same idea.

[00:01:05] You’ve probably heard or seen in your competency matrix at your company or on the list, the

[00:01:12] job requirements list or job description rather, you’ve heard of work breakdown, being able

[00:01:20] to break down work into smaller chunks.

[00:01:23] We’ve talked about this on the show before.

[00:01:25] This is a critical and essential skill.

[00:01:29] And it’s underserved by most of these job descriptions, because it’s not just about

[00:01:37] being able to break work down.

[00:01:39] This skill is about knowing where to be in a conversation, where to be in a process in

[00:01:48] terms of granularity.

[00:01:51] So the skill that’s listed is break work down.

[00:01:54] But the trait that I want to talk about, the senior level trait is knowing what level you

[00:01:59] should be at at a given point in time.

[00:02:04] Should we break this work down further or not?

[00:02:09] Now the heuristic that you will probably pick up from most people is yes, always break it

[00:02:13] down further.

[00:02:15] But the truth is, this is a little bit short sighted.

[00:02:19] Sometimes work is vague and distant.

[00:02:23] And putting any more effort into adding more clarity around that is a fool’s errand.

[00:02:29] It’s a waste of time and energy.

[00:02:32] And so the trait that a great senior engineer learns to develop over time is understanding

[00:02:39] what level of clarity needs to be achieved at a given point in time.

[00:02:46] So this is, when I say a given point in time, I really do mean sometimes it is actually

[00:02:52] in a meeting where you’re talking about a given feature, you’re talking about a chunk

[00:02:57] of work that your team is getting ready to take on, you knowing as a senior engineer

[00:03:03] what level you should be talking at.

[00:03:05] In other words, how much complexity should we discuss in this particular meeting?

[00:03:11] This is a senior level trait.

[00:03:14] Because this comes down to communication and clarity.

[00:03:18] So for example, if you’re in the middle of a demo and you trail off onto something that

[00:03:23] 90% of the participants in that demo don’t really care much about, well, you’re probably

[00:03:31] getting too broken down.

[00:03:34] Now I understand that we’ve kind of mixed some concepts here.

[00:03:37] One concept is add more information where there isn’t any.

[00:03:42] Break the work down into smaller chunks.

[00:03:46] But the same outcomes can be shared here.

[00:03:51] In a meeting where you’re communicating to another person and you end up getting into

[00:03:57] the weeds, that level of detail is not necessary and in fact turns into a hindrance.

[00:04:03] This is true if you try to break down work that is distant too early.

[00:04:09] That level of detail becomes a hindrance.

[00:04:13] Here’s the important thing.

[00:04:15] The senior engineer doesn’t just know how to do this for themselves.

[00:04:19] They know how to facilitate this in those junctures.

[00:04:24] So for example, if the team is starting to get too into the weeds, the senior engineer

[00:04:29] has the tools and the kind of the knowledge or the procedures, the tactics to be able

[00:04:36] to pull the team back to where they need to be.

[00:04:40] And this isn’t just a senior engineer’s job.

[00:04:43] It’s also a shared responsibility with other people on the team, the manager, a scrum master

[00:04:48] or if you don’t have that role, another engineering leader of some kind.

[00:04:54] They are also responsible for recognizing this same thing.

[00:04:57] But a senior engineer has the tools needed to be able to do this in these junctures.

[00:05:04] So for example, a tool that you have in your tool chest to be able to reset the conversation.

[00:05:11] This is a very common need, being able to return to some kind of common ground, a starting

[00:05:17] point kind of back to the basics.

[00:05:20] This is a very common maneuver that you’ll need as a senior engineer.

[00:05:25] How can we go back, kind of forget what we’ve been talking about for a minute, start back

[00:05:30] at square one and discuss this from the ground up?

[00:05:34] This is an important maneuver because it is very common.

[00:05:39] If you don’t have senior level engineering, it is very common for these conversations

[00:05:45] to be codified, to turn into work.

[00:05:49] Often this work is premature in its design and your goal as a senior engineer is to make

[00:05:56] sure that the work is being designed well.

[00:05:59] That’s one of your goals at least.

[00:06:01] And one of the important things to do in order to ensure that good design is to slow things

[00:06:07] down and make sure you’re looking at it from multiple angles.

[00:06:10] Going back to square one allows you to do that.

[00:06:14] Similarly, having tools for digging into a hard conversation or digging into a topic

[00:06:21] where there’s not a lot of clarity, where there does need to be a lot of decision making

[00:06:26] happening.

[00:06:28] This is another set of maneuvers that a senior engineer likely has in their tool belt.

[00:06:36] Once again, hopefully you understand that when we’re talking about this being a senior

[00:06:41] engineer’s trait, this is almost never done by just one person.

[00:06:47] This is something that a senior engineer is capable of facilitating, but they’re not forcing

[00:06:53] the room to follow their lead.

[00:06:57] This is something that they would develop alongside their team.

[00:07:00] Thanks so much for listening to today’s episode of Developer Tea.

[00:07:05] If you enjoyed this discussion and if you’d like to take it further, please join us in

[00:07:10] the Developer Tea Discord community, head over to developertea.com slash discord.

[00:07:14] We did have a little bit of an error in publishing the episode, What Defines a Senior Developer

[00:07:20] Systematically Communicating Value.

[00:07:22] We have corrected that audio.

[00:07:24] You should be able to go and listen to that on developertea.com and in any of the podcasting

[00:07:29] apps that you’re probably already using, so go check that episode out.

[00:07:34] It kind of means that you get two episodes in today’s release.

[00:07:39] Thanks so much for listening and until next time, enjoy your tea.