Soft Skills Engineering - Episode 382: Mentors for managers and mob programming

Episode Date: November 13, 2023

In this episode, Dave and Jamison answer these questions: There aren’t a lot of engineering management growth resources in my company. It’s a relatively small company with about 50 engine...ers. My manager doesn’t have time to properly mentor me. And I’m not sure I would want him to because I feel like his advice isn’t always the best. Where can I go for management mentorship or other learning resources? Is it worth exploring non-engineering managers on other teams? Or leaning more on my peers? Or should I be looking for outside advice? A recent episode mentioned awkward Zoom silences. My experience is the exact opposite. I recently switched teams at the same company. This new team has a Zoom room open for the entire work day. The first person to start their day begins the Zoom and the last to leave ends the meeting. They do “mob programming” using a command line tool that switches users every few minutes along with all the strict rules of Extreme Programming - a driver, navigator, etc. But they also do everything in groups: story refinement, diagrams, documentation, everything. Live collab, all day, every day. I’m one month into this transfer but worried that this isn’t a good fit and that I made a horrible mistake. ALL the other engineers here rave about how this is the greatest thing ever. Am I the weirdo for not liking it? I feel like I am of split-mind to only either speak or type (but not both) and have not yet rediscovered my coding flow. Mostly I just wanted to roll a perception check with you: Am I the weirdo for not liking all this collaboration and 100% Zooming, or would this workflow drive most other engineers mad as well? Any pep talk about sticking it out would be appreciated.

Transcript
Discussion (0)
Starting point is 00:00:00 it takes more than hearing the phrase mob programming and showing up at the next meeting with pitchforks and torches to be a great software engineer this is episode 382 of the soft skills engineering podcast i'm your host jamison dance i'm your host dave smith soft skills engineering is a weekly advice show about all the non-technical things that go into the technical field of software development like accidentally bringing tar and feathers and then having to set them down sheepishly when you come into the meeting and everyone's just oh mob it means we program together oh i thought we were going to choose a new javascript framework yeah mob programming is what happens in like uh hacker news threads i think yeah yeah for sure
Starting point is 00:00:53 all right shall i thank our sponsor please this episode is sponsored by compiler an original podcast from red hat discussing tech topics big small and strange you'll hear more about them in the middle of our show please check out compiler you want to thank our patrons jameson i absolutely do thank you to nick cantar braden canes john grant travis nick hathaway jonathan king ragnar webtau awesome n10 testing will angel ira chan monkeyface emoji patreon.com we're hiring Craig Motlin, The Stochastic Parrot, Owen Shardle Jenny Kim, Cody Sale, if you would like to join this illustrious, oh wait, not yet
Starting point is 00:01:27 Ken C. Dodds, Valentin Adatofold, Santa Hopar TheComputerScienceBook.com, Trash Panda Never is not just a crater on Mars I like chicken, I like liver, Meowmix, Meowmix, please deliver, full stack, contractor, looking for job, corp2corp, and typehero.dev Thank you, thank you so much to these entities of some
Starting point is 00:01:44 kind, or concepts, or string of characters is really all we know them by yeah um if you want to join them you can go to softskills.audio and click support us on patreon and any amount we'll get you an invite to our slack team and any amount above whatever the number says we'll get you a shout out either one time or weekly to demonstrate our undying gratitude and deep admiration for you so here's a spoiler for next month i noticed in advance that the full-time contractor looking for job corp to corp uh has found a job so congratulations
Starting point is 00:02:18 next month it will it will change they owe it all to anonymously advertising on our show looking for a job to corp to corp and there's no way you will ever be able to know who i am but but you'll know i have taste because i uh i'm a patron of the show yes dave do you want to read our first question no i want to read a follow-up from a previous question oh okay do you Do you want to read the first thing that's after thank our patrons? Yes, that's what I want to do. That's exactly, how did you know? That's exactly what I was thinking about doing.
Starting point is 00:02:55 Instinct built up over seven years of doing this. Okay, this comes from a listener who took our advice or didn't, I don't know, we'll find out. In episode 313, that's like a year and a half ago, where it says, Hello, writing in to follow up on my question back in episode 313, parents are fighting. thank you for your advice and i'm pretty sure dave's guess on which company was correct this was at amazon yes i guessed correctly wait what was the question uh the question was i am trying to get a promotion but the principal engineer in my organization is blocking it and my manager my manager wants like yeah my manager supports me this principal engineer
Starting point is 00:03:37 doesn't and they win so yeah the pe wins okay let's keep reading i took your advice and sat down with both my manager and the pe and found out that the pe didn't think i had quote respect for engineering work that came before me specifically because i had suggested we standardize on a single testing framework instead of three in one code base afterward my manager fairly bluntly told me that the pe would not let it go and i would not be getting a promotion as long as the pe still worked in the org apparently word to the grapevine was that he had been blocking promotions for years for anyone who had been at technical odds with him it was up to me if i wanted to wait it out or not so i quit again later i heard from my ex-manager that there was a
Starting point is 00:04:17 reorg and the problematic pe was booted out the door shortly after and what do you know the promotions have started flowing again so unfortunately this seems to have been a case of a bad cog in the machine oh man well there you go but the machine eventually identified the bad cog and replaced it with a good cog yeah that's a good call out because the machine worked the cogs the individual cogs kind of i don't know who cares if the individual cogs work the machine kept working you know that's the important thing above all individual human value the machine must keep working well yeah i guess that's my point like the the machine is optimized to make the machine work and sometimes you just gotta you can't make a machine without smashing a few cogs
Starting point is 00:05:02 i think is the phrase sometimes yeah right sometimes it's like a machine omelet other cogs i don't know yeah are you about to say you i didn't have to break some cogs to make a machine omelet yeah that's what i was trying yeah i was going for a can't make an omelet without breaking a few eggs yeah um just confusing metaphors as is my want to do respect for engineering i didn't have respect for engineering work that came before me i mean that has to mean stuff that the pe did right there's no other way i can respect for the work that i did the person who is blocking your promotion i chose to put in three different testing frameworks yes and you showed a lack of respect for my decision for my mistakes i mean decisions oh well
Starting point is 00:05:51 huh i'd be interested to know how long do you feel like it was the right choice to quit i mean obviously you can't make this person leave and if you if you how i wonder how long you would have had to wait for it to come around thank you for the feedback though it's really good to hear how it went yeah always good to hear that dave was right it's one of my favorite things mine too okay dave should i read our first question now go for it this is from an anonymous listener who says there aren't a lot of engineering management growth resources in my company it's a relatively small company with about 50 engineers my manager doesn't have time to properly mentor me and i'm not sure i would want him to because i feel like his advice isn't always the best where can i go
Starting point is 00:06:40 for management mentorship or other learning resources is it worth exploring non-engineering managers on other teams or learning or leaning more on my peers or should i be looking for outside advice yes management mentorship this is there is not a lot of this out there that i Well, not a lot relative to other kinds of mentorship for individual contributor developers. Yeah. There's some weird things here. A relatively small company with about 50 engineers.
Starting point is 00:07:08 I guess relatively is the key word here because it's all relative, but that doesn't sound too small. And at 50 engineers, I would expect there to be probably like two layers of engineering management. Yeah. You have some line managers
Starting point is 00:07:21 and then maybe one or two kind of like director type managers. and then they report to a cto or vp or something and that is a fair amount of it's a fair amount of people whose job it is to manage engineers so that's surprising to me that there's uh there's not deliberate thought put into making those people effective by i feel like that's part of that's what i would expect part of the job of your boss yeah exactly doesn't have time to mentor me is like well what is this person's job it's they're coding all the time you can't spare it that that time away from fixing all the bugs they've got going on every day maybe my manager
Starting point is 00:08:06 doesn't have the time to properly mentor me i mean there could be an expectations mismatch here where you're like look mentorship requires 10 hours a week if you don't have that time i'm gonna go get it somewhere else yeah i doubt that's what the expectation but i guess it's possible i i'm trying to think through all the jobs i've had i think i've really had one i'm probably forgetting people right now but i think i've really only had one manager who i felt like did a really good job mentoring me as an engineering leader and what is my point in saying this uh it's rare i think it's rare that's my point i guess it shouldn't be because that's that's, that's a big part of the work. That's how you amplify your impact as a, as a leader
Starting point is 00:08:56 of managers as you help them get better. But for some reason it doesn't happen that often. Yeah. Yeah. I mean, I don't know. I mean, I feel like it's kind of a table stakes baseline expectation that if you're going to manage someone, you need to be willing to give them regular on regular attention where the time is theirs to get input from you and get advice and guidance and maybe these uh and i would typically call that a weekly one-on-one you know with everybody who reports to me i dedicate a weekly time to each of them that is just theirs we sit down together and we talk about uh well probably whatever i want to talk about honestly if i'm honest, I do tend to dominate these conversations, which is not what I want to do. But in reality,
Starting point is 00:09:45 and I do pay lip service to this, but I probably don't do a good enough job actually giving time to people to say, look, this time is yours. What do you want to talk about? And it sounds like if this person had a manager who sat down with them every week and said, what do you want to talk about? The person would say, I want to receive mentorship from you. And then I would say, I don't have time for that. All I want is status. I don't have time for that. I'm too busy talking to you hang on there's a bunch of stuff i have to say to you hang on i've got things to say yeah these things aren't going to say themselves maybe maybe all 50 of those people report to the same manager and then he doesn't have time
Starting point is 00:10:25 because he has 50 direct reports uh-huh probably not though that'd be that'd be too many yeah i actually you know to pivot away from the question to talk about ourselves more okay i also i say that same thing in one-on-ones that this is your time it should be to talk about what you want to talk about but i have seen varying levels of willingness on on the people who who meet with me to actually like take the time yeah so i can fill it i've i've got stuff to say you want to hear about my thoughts on how there are too many dang pokemon these days and back in my day we had the right number listen if you need jameson to fill some time just remember he has recorded 382 which is mostly just him talking and there's no one even there
Starting point is 00:11:14 yeah actually sometimes when i when my people show up for a one-on-one i just turn my camera off on zoom and just play back an episode so that's all they hear i think about in ferris bueller's day off when he records the answering machine to make it seem like he's actually there yeah kind of like that some hijinks look i promise what was i saying i'm really not that bad of a manager i'm not as bad as i'm painting myself to be anyway you were saying that people don't take the they don't seize the opportunity to yeah talk about what they want to talk about i think i need to do a better job of both clarifying what that looks like and also really actually making space because it's i think it's
Starting point is 00:12:04 a pretty natural human yeah desire to want to fill blank space in a conversation so if i say what do you want to talk about and they say i don't know then i just say okay time to talk about pokemon but maybe i need to just sit there for longer you could that is a technique just sit and listen and wait. But you know what's happening here is a power dynamic. Oh man, we are so far off from the question, but let's just keep going. The power dynamic here, I think about when I have one-on-ones with my boss. If my boss wants to talk about something, it does not matter to me what I wanted to talk about. I will set it aside and I will go with what my boss wants to do. And so you really have to remember that, that it probably takes not only just saying
Starting point is 00:12:51 this time is yours but also reinforcing it with actions and i like the idea of just being silent yeah and there are certainly people who are better at it than others where they're willing to fill the time or they take time ahead of time to write down topics but not everybody now i'm wondering how can i help people get better at that because frankly i'm sick of talking about Pokemon. So is everyone else. Yeah, I mean, so I guess what we're saying to this question asker is that it is actually your manager's job to mentor you. And however, you might have a different expectation of what mentorship looks like in actual actions than your boss does. And so maybe you need to sit down and say, okay, I said the word mentorship, but here's what I'm actually
Starting point is 00:13:44 looking for and spell it out and be deliberate. I think it would be very hard for a boss or a manager to come back to a request like that and say, I don't have time for that. Especially if it's very basic things like give me feedback on how I'm doing as a manager. It's like, this is your job. Yeah. I wonder if you've explicitly said, please mentor me, which is I think the easiest thing to say but also maybe less useful because it's sort of like so generic that it might be hard to know where to start especially if your boss isn't great at it but like all feedback related things it's easier if you ask more specific questions so if you ask do you have any feedback on that presentation that i gave that you attended or i don't know
Starting point is 00:14:30 the more specific you can make it the better it'll be yeah and even if their advice isn't the best you will get insight into what they think or at least what they're willing to say to you yes maybe not directly mentorship but something yeah uh okay i think there's an obvious answer that you're missing though dave yeah i'm about to reveal to you please pull the sheet the past few minutes of the show you'll know that the best place to come for advice oh wait for it is right here you've already done this podcast as we've so ably demonstrated linkedin is littered with the bodies of people who followed our advice and whose careers are now in shambles oh low interest rates cannot cover our sins anymore like all those startups that have failed yes
Starting point is 00:15:23 you thought we were if we just lose money faster surely it will work out eventually if we just give more bad advice. So, yeah. Thank you, Jameson. I once, so when I first became a manager about seven years ago or so, I actually found someone who was also a new manager at the same time.
Starting point is 00:15:48 And that person had the great idea to start a engineering management meetup in my area. And that was actually pretty useful, not in the sense that you could just go and get mentorship and you know go in and come out a better manager but because i could show up and talk to people who are doing my job because it turns out being an engineering manager can actually be kind of lonely like some of the most important topics that you are some of the most important actions and decisions and subject matter that you need to worry about as a manager are things you can't talk about with most people
Starting point is 00:16:21 at your company and so having other managers to go and talk to about situations you know i just remember being so happy to hear just like how much are you paying your people you know are my people underpaid are my people overpaid just being able to have a sounding board for that was so good because i did i wanted to keep the private keep that stuff private at my company uh but i also wanted to know am i gonna lose my people because i'm underpaying them you know yeah so uh engineering management meetups uh that man that meetup actually fizzled out after like six months and i think i don't know what that says about the state of management mentorship i think it i think it uh nobody had time to do it yeah exactly
Starting point is 00:17:01 there so i i love what you said i think about if you ever meet another vim user in the wild you kind of gaze into their eyes and notice that they're one of you and then you swap tips and everyone's experience of using vim is different and so you learn something from everybody because they all have slightly different takes on how to how to work it i feel like it's similar with engineering management where it's cool to just talk to other practitioners because they might uh have they might be doing a thing you've never even heard of you didn't read them the help docs for that part of it yet yeah uh it's and i think it's better than it was a few years ago but the state of engineering management is still pretty early days wild west where there's a lot of
Starting point is 00:17:50 people yeah uh who are picking up quite a lot of it on the go and haven't seen it done well before so there's i still don't feel like there's a good baseline for just what a solid engineering manager is um that you can expect to come into the job and know okay if i do this stuff basically i'll be kind of the the median or above engineering manager so i think that's that's not quite mentorship but it's something approaching it where you can talk to other practitioners and get get their perspective on things a thing that i have done i have actually paid a coach oh really for a while yeah and that was very helpful um they actually i think they got out of the game because i looked them up a while ago and couldn't i think they had they had moved on
Starting point is 00:18:43 to other things so coaching you was the pinnacle of their career and they were like i have nothing left to achieve it's like you're mount everest yeah or i was like the kid that drove the teacher to quit oh just can't take if they jam another pencil all the way up their nose again can't take if they do their annual reviews in in cran one more time um that was really helpful it was someone let's see they were in a tech field i don't think they were actually an engineering manager but uh they had coached a lot of ems and had managed in a tech field before and it's sort of like sports coaches where none of michael jordan's coaches were better than him at basketball you know like but they didn't have to be because part of it is the it's a different skill set and
Starting point is 00:19:37 perspective to do the job than to help someone else be better at the job i thought you were going to say none of the coaches are better than michael jordan at basketball in the same way that no one is better than me at engineering management so i don't need coaching no i mean i guess to strain the metaphor even more a lot of them are former coaches and i guess like players i guess we're amazing players uh so so they do know the domain but what is my point my point is there are management coaches out there i think finding the right one has got to be kind of like finding a psychologist where you kind of have to try it you can get some word of mouth but it depends on how they fit with you and you can't really can't really know ahead of time if you'll
Starting point is 00:20:27 really gel but i would look at that a little bit there are also some engineering manager like i'm in a slack team community thing for engineering managers i think i'm actually in a couple of them so there are some groups out there um that have been helpful for bouncing ideas off of peers and things like that yeah i've had a similar experience to you that it's just not a ton of opportunities that come at you. And I also had a management coach for a few months, six or seven years ago, and I had the opposite experience of you. It was unhelpful for me. I met with my coach once every two weeks for like 30 minutes. And I was so new to management. I'm like, I don't even know where to start. I don't know what to do. I don't know what to think about. And so I'm like, help me
Starting point is 00:21:14 with that. And then the coach basically was like, well, you tell me what you want. And I'm like, well, what are some of the options? The coach is like, well, it depends on what you want. I'm like, this is like a restaurant with no menu. It was frustrating. So I think in the end, I got some ideas, but ultimately it just came down to spending more time doing the job and then being surprised about the things you weren't doing. And then you are your own best mentor by failing.
Starting point is 00:21:39 Your past self teaches you what you're doing wrong. Yeah. I think I'll add in the show notes the link to this group. I think it's public. So I think I'm not outing anything. yeah that would be good uh well have we answered the question i think so good luck finding mentorship uh and if you don't don't worry most people don't have it anyway dave can we have an honest natural conversation about a podcast from red hat called compiler
Starting point is 00:22:07 yes red hat compiler is a really cool podcast it's from the people at red hat which is a company i've admired for literally 20 years red hat employs a bunch of really interesting people everything from actual compiler developers to engineering managers. Listening to them share their perspectives over the years has been eye-opening for me. I really liked the recent episode in Defensive Legacy where they talked to some experts about how you dig through old legacy systems.
Starting point is 00:22:31 It feels a little bit like code archeology. You're trying to piece together truths about the past from these artifacts that you have. It's fascinating to listen to. Yeah, they also have a series on software technology stacks describing databases, programming languages, front-end frameworks, back-end technologies, and even test frameworks.
Starting point is 00:22:45 Their production value is so good too. like put us to shame good yes it's like what we aspire to be listen to compiler from red hat anywhere you listen to podcasts shall i read our next question please an anonymous listener writes a recent episode mentioned awkward zoom silences my experience is the exact opposite i recently switched teams at the same company this new team has a zoom room open for the entire work day the first person to start their day begins the zoom and the last to leave ends the meeting they do quote mob programming using a command line tool that switches users every few minutes along with all the strict rules of extreme programming a driver navigator etc but they also do everything
Starting point is 00:23:26 in groups story refinement diagrams documentation everything live collab all day every day i'm one month into this transfer but worried that it isn't a good fit and that i have made a horrible mistake all the other engineers here rave about how this is the greatest thing ever am i the weirdo for not liking it i feel like i am of split mind to only speak either sorry to only either speak or type but not both and have not yet rediscovered my coding flow mostly i just wanted to roll a perception check with you am i the weirdo for not liking all this collaboration and 100 zooming or would this workflow drive most other engineers mad as well any pep talk about sticking it out would be appreciated oh this is unusual yeah i mean i i think i've talked about this on the show
Starting point is 00:24:12 before i have done that zoom room open for the workday thing but it hasn't been like everyone come work together it's more like if you want to hang out while you work and optionally you can like work together with people in here then hop in yeah so it's been a little bit it was more like a tool to combat loneliness than than a way to get the whole team working together on the same thing so pretty different from this yeah i have never worked in this kind of uh extreme collaboration the closest i've come is in person in a shared office with like four or five people in the same room is extreme programming the kent beck thing uh yeah extreme programming explained kent beck i've never worked in an extreme programming shop yeah i i think i would hate it
Starting point is 00:24:57 i think i would hate the default mode of working to be pair programming yeah or mob programming i really do like like coming together and then splitting apart to kind of work on stuff and then coming together to show it off and give feedback and get feedback and then splitting apart that's i feel like i i can get into a flow state like that much more easily than i can if i if i'm working with someone all day every day but i know people i mean i know i i'm thinking of one specific person who worked in a place that was all paired programming all the time and they loved it and i'm thinking of other people i have known who who are more inclined to pair program where they they like to do it more so i think it is i think it varies uh the the what's the word
Starting point is 00:25:44 i'm looking for the level of comfort and satisfaction that you have with it probably varies among people you're saying there's a spectrum of people and and you're saying weirdos are on one side is that what i'm hearing you say yeah the weirdos are are the other people right aren't like me yeah whoever's not like me i'm right in the middle yes there's weirdos to my left and weirdos to my right i'm in the enlightened center deed am i the weirdo for not liking no i don't think so i have heard from people that you can kind of develop more stamina with it if you do it regularly and i don't know if a month is enough time to do that but i i would hate this job i would hate it so much i could probably get into
Starting point is 00:26:29 it um but i gotta i have to ask this seems really unproductive if we're talking more than two or maybe three people i think how do you actually do this like how do you this mob programming concept where let's say there's six people in the zoom room and one person there's a command line tool that that uh goes around the room round robin and points you know says now you're the hyper uh how does that work i'm very interested i worked with a team that had a it was like an hour and a half each week where they would mob program basically and that was cool because the team really liked it and they looked forward to it and they um participation was high okay but it wasn't no one was doing the school group project thing where they just don't do anything and
Starting point is 00:27:17 And now there are actually four people programming and a fifth person just chilling on Twitter all day. Yeah. Yeah, I could see a concentrated bout of this for like an hour and a half or two hours once a week. Yeah. It would be fun and exciting. That's something I would look forward to.
Starting point is 00:27:31 Probably lots of good learning opportunities. But 40 hours a week sounds not only exhausting, but also counterproductive. Yeah. What I would do is quit, first of all. But if I didn't want to do that, i would stick it out for another month or two and see if my stamina got built up because this would be such a drastic change from how i am used to working that uh i know i would not just jump
Starting point is 00:27:57 into it and immediately succeed yeah and then if you still don't love it i think you have two options one of which is to quit and and the other one i already mentioned which is uh if there's seven people programming together it's kind of hard to tell if there are only six actually participating or not if the other the other six are all actively engaged you just get to throw on a podcast and but if it's rotating around in like every few minutes it's your turn to type it'll become crap yeah they've defeated my strategy shoot okay yeah i think quitting is your only option it seems like this works well for the team and i cut this part out of the question but they mentioned that it's likely this team is self-selected. So people that like to work this
Starting point is 00:28:42 way have gravitated towards the team, which I think is very true. And unless you want to become a person that likes to work this way, then this might not be the team for you. Yeah. Very, very likely the case for you, I'm guessing. I would bet, I would wager that less than 10% of the engineers I've worked with would thrive in this environment. Yeah. Yeah. I think the people I know that have or would stick out in my head because they're kind of unique in that aspect. Well, quit your job. We're giving the advice.
Starting point is 00:29:13 Or sabotage it. Convince the whole team this is a bad way to work. You must drive wedges in between them so they retreat to their private Zooms back to their lonely editor by themselves. Yep, back where they belong. Pull a worm tongue and start whispering into your boss's ear.
Starting point is 00:29:30 Yeah. My lord, see how few programmers as a typing at the same time we should we should put a giant asterisk on this to say look we don't have first-hand experience with this approach of programming maybe it's incredible maybe it's the undiscovered country that we're all just ignorant of and this truly is a much better way of getting quality product and more of it so i'm open to that idea i'm i'm not intending to rearrange my teams to make this possible but uh i would love to be convinced that i'm wrong i think it's very interesting idea i still think you should quit maybe the theory goes you don't have to do code
Starting point is 00:30:07 review because it's all reviewed in real time yeah and you'd never get anything wrong because it's all reviewed in real time right by many people a mob i would say of people yes famous for their accuracy right shrewd judgment everybody knows all the best works are produced by mobs where the best work comes from yeah the famous sistine chapel mob the greatest works of art they all just mobbed on that statue of david yep a thousand people smashing at it with hammers until it revealed itself from the marble exactly i'm trying not to i guess i'm i'm saying snarky things about it i'm i'm not meaning to cast judgment on this as a as a strategy i think i'm purely saying boy would i hate this so even if it is a better way of working
Starting point is 00:31:02 that's like saying if i hold my breath all day then i will live longer like if i could i guess cool but yeah then i would be sad that's sad jameson is not really any of our goals good well i'm happy because i'm talking to you dave my goal is achieved goals achieved speaking of goals should we uh has this question been answered i think so yeah all right i think it has what can people do if they want their own questions answered, Dave. Go to softskills.audio and click the ask a question button where you can fill out our form. And we want to say thank you to everyone who does that every week. We love reading your questions and many of you have responded to our call to action to give follow-ups or feedback on previous questions. Thank you. We
Starting point is 00:31:41 will read these on the show as we find time and appropriate subject matter. Thank you for sending those in from the bottom of our heart. We really appreciate it. Yeah. Thank you. And thank you for listening. We will catch you next week. you

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.