Soft Skills Engineering - Episode 328: Fear of sudden firing and reducing the lottery factor
Episode Date: October 31, 2022In this episode, Dave and Jamison answer these questions: I’ve joined a team at a small startup and our team lead has mentioned in passing a few times about a developer they used to have bu...t had to let go. Not in a malicious way but just as a matter of fact when it’s come up organically. Now it’s eating at me because I’m not sure if I’ll ever go down that path and I want to know what they did so I can avoid the same fate. I’ve always been a top performer at other companies but now I’m wondering if this would be the one place where standards are higher than what I’m used to. I really like it here and don’t want to lose my spot. Realistically my fear isn’t that I’d get fired in my first six months but more that I would fail to respond to constructive feedback over the course of a year and end up getting let go in the same manner. Do you have any advice? Hello! Long time lurker, first time question server. I am an intermediate software engineer and I work on a team that has a really tenured senior engineer. His attention is often required for a lot of things and the team can sometimes get blocked by him being pulled into many different directions. As someone that is trying to grow into a senior engineer myself, what are some ways to take some of the load off of him and improve the bus factor?
Transcript
Discussion (0)
it takes more than explaining away as you're slacking off with a parent service is down to
be a great engineer this is soft skills engineering episode 328 i'm your host dave smith i'm your host
jameson dance soft skills engineering is a weekly advice podcast for software developers about this
great and mysterious field of software development and where we are always looking for a reason
why we're not actually working what do you say if you work on like the undersea
cables that go between europe and and north america like what parent service
maybe your parent service is is the ocean or maybe ocean is down something about the boat
yeah or or like the earth's crust is having an outage right now or something yeah i'm sure look
it's software engineers you'll you'll find a reason
i have faith in you maybe sharks
this show isn't about any of those things though except on shark week and then and then we're all
shark themed here we we are devout observers of shark week you want me to thank our patrons yes
please do okay thank you to the folks who contributed at the level that we shout them
out every single week thank you to noah frazier loag can't see dodds theodore savin memester josh
jenny kim owen shardle craig motlin i love mavis the stochastic parrot alice jost no cheating
land fair will go when kill go girl i'm going real slow to try and get it all
you did it that's the most i've ever tried i'm exhausted
kashokton ohio i remember when i thought kashokton ohio was a weird name
yeah patreon.com.au ira chan monkey face emoji jonathan king testing is documenting.org
Ola Dapofadie, Will Angel, CleanFootEmoji, Ragnar, Nick Hathaway, Travis Sanders, Brayden
Keynes, John Grant, Cody Sale, Nick Cantor, and Philip John Basile.
Thank you.
We appreciate it.
And also, we pay for the show with it.
Yeah.
So we both appreciate it and use it for good.
Yes, and need it.
If you would like to join this group or join our Slack team or just help support the show,
you can go to softskills.audio and click support us on Patreon.
any contribution we'll get you an invite to our slack team and above whatever number it says on
there we'll get you a shout out of some kind that's right and our eternal gratitude i mean
somewhat eternal for some definition eternal okay well i intend it to be eternal eternal
all right sorry i want to accept this somewhat eternal business yeah i know i should just commit
so wishy-washy all right i'd like to think to take on an eternal commitment how wishy-washy
i'd like to thank our sponsor for this episode which is hired the best way to quit your job
and get a new one you'll hear more about hired later on in the show all right jameson let's see
would you like to read our first question this is from an anonymous listener who says i've joined a
team at a small startup and our team lead has mentioned in passing a few times about a developer
they used to have but had to let go. Not in a malicious way, but just as a matter of fact when
it's come up organically. Now it's eating at me because I'm not sure if I'll ever go down that
path and I want to know what they did so I can avoid the same fate. I've always been a top
performer at other companies, but now I'm wondering if this would be the one place where standards are
higher than what I'm used to. I really like it here and don't want to lose my spot. Realistically,
my fear isn't that I'd get fired in my first six months, but more that I would fail to respond to
constructive feedback over the course of a year and end up getting let go in the same manner
do you have any advice oh man well there's only one way to guarantee that they can't fire you
to quit yeah you can't fire me i quit well we weren't gonna fire you but i'm sorry
you can't give me severance i forfeit i win but another win on the scoreboard
yeah i can see ways this could come up organically but i also can't help but imagine
some sprint planning meeting where the team lead says now how many points do you think this is and
you say man it's real big i think it's a 15 and the team lead says huh i remember the last person
who said it was a 15 and we fired them weird what a coincidence strange yeah haven't heard that
number in a long time not since i had to fire old 15 we called them yeah you gave them a little
nickname 15 yeah yeah it is interesting to come into a team and and you hear like the echoes of
previous members that that used to be there this might be a glass half full glass empty thing
because in the past when i've come onto a team that just fired someone or recently fired someone
i sort of assumed like oh the bad part is over and now it's now it's the good part yeah here
i am they went through this for the good yeah you're right yeah exactly not necessarily that
oh their standards are so high i must be on my guard yeah but i could see how you'd be concerned
especially if stability is a big worry would you ever feel confident in this situation going to
this team lead and asking them please tell me why you fired old 15 i think i would if i was worried
about getting fired not in a like immediate sense of boy i hope they don't find out that the database
is a lot smaller than it used to be but like a general a general vibe i think i'd ask a boss
what happened and and i'd want to make it clear that it was to avoid that fate myself not to hear
all the juicy gossip yeah yeah i think i do that and and i've answered in i think i've given
helpful detail that doesn't disrespect the people who who were fired i think there's a bounce you
can strike there if you're on the other side that you had to fire someone you don't want to say well
like let me tell you how horrible they are but behaviors to avoid maybe yeah i would feel
comfortable asking as well and i think that's probably the best way to put this concern to rest
it sounds so simple just ask my fear isn't that i'd so realistically my fear isn't that i'd get
fired in my first six months but more that i would fail to respond to constructive feedback
over the course of a year yeah and that is the more realistic fear yeah i don't i don't know
how to put it like if you have failed to respond to constructive feedback over the course of a year
often you do get fired you know like yeah i mean that but that's about how long it takes so you
have plenty of yeah they've they've tried for a year like i think it is if i'm reading between
the lines there's some maybe anxiety or fear here that that might not be entirely justified by
the performance or the situation and that's a real need that you have and you can express that
need to your boss. Like I, I, I really need a clear understanding of my, of your, your opinion
of my performance. Like I need to know how you think I'm doing because if not, I kind of get in
my own head and then make up this, this scenario of, Oh boy, am I about to be fired? So, so you
can talk about that openly with them and then hopefully they will inform you well before it
gets to a, you need to be fired state. Yeah, for sure. I mean, you're asking all the right
questions anyway here so it's probably not going to happen to you or if it does you got about a
year of heads up you could ask i wonder if you could ask your co-workers because they might have
a different perspective too maybe what it was like to work with that person that's actually
maybe you ask that not like hey why do you think they got fired but like what were they like yeah
uh you know what were they like and stuff in like a bad way what were they like yeah tell me all the
bad stuff because they they might have your same concern or they might be able to reassure you that
like oh this was pretty egregious and we still haven't been able to repair the holes in the
drywall from our last architecture discussion or whatever yeah exactly all right i'm out of
ideas have we answered it i guess so yeah i mean yeah it's good to be proactive about this stuff
i think so i've also been guilty of procrastinating it because i'm worried what the answer will be
and then i just kind of stick my head in the sand and then i get more worried because it's
been longer without me knowing yeah so the earlier you can start digging into this i think the the
better i have to respond i agree just ask the question and i think one here's the thing once
you get acquainted with the details of people's terminations assuming you don't work for a totally
toxic crazy bad organization then you'll start to be more comfortable knowing whether you're on
whether you're on track or not for this kind of an outcome you know i mean obviously there are
financial reasons why someone might be let go that have nothing to do with your performance
but setting aside that once you this is why i think it's worth asking this question because
you're going to become acquainted with the things that led to a person's termination and go
oh okay that's not me or oh that is me but either way you're gonna know right instead of just
wondering so i think that's a worthwhile question to ask all right hey jameson have you heard about
the great resignation is it that charles dickens book wait no the entire population on earth has
started taking our advice of quit your job oh yes that's right apparently we have achieved
influencer status we've been telling developers for years to quit their jobs and now we want to
tell you how to do it we're ready to reveal the secret i mean you don't just walk out shooting
finger guns yes well you do that first but after you do that there's a new service we want to tell
you about called hired what is hired dave hired is the biggest ai driven marketplace that matches
engineers with companies it is a great way to find your next job i've been watching this industry for
20 years with a keen interest on hiring in particular. And I've never seen anything like
Hired. Tell me about what you're seeing. So I've interviewed about 150 people in the last year.
And I am serious. Every candidate that's come to me through Hired has multiple offers. And they're
incredibly high, scary high, like 30% higher than other candidates. Is that before or after
the finger guns? Yeah, both. The beauty is, it's totally free for engineers. And we would love for
you to go try it go to hired.com soft skills to check it out hired.com soft skills quit your job
the best way and check out hired okay shall i read our next question please okay this comes
from an anonymous listener who says hello long time lurker first time question server
well said they go on to say i am an intermediate software engineer and i work on a team that has
a really tenured senior engineer his attention is often required for a lot of things and the
team can sometimes get blocked by him being pulled into many directions as someone that is trying to
grow into a senior engineer myself what are some ways to take some of the load off of him and
improve the bus factor hmm i feel like a definition of a bus factor is in order here do you have a
definition ready to unveil to us i have one yes okay the bus fact will you yeah yes i will i
you're doing one of those like i have like can you may you the bus factor is what happens if
one of your teammates finally lands that amazing career as a bus driver and they leave your team
so long suckers
i'm out of here to live my dreams that greyhound logo calls to me uh yeah i think
that's a unique definition i have not heard before and i admire your creativity
and i would like to propose an alternate definition as well
the way i understand it is how many people would have to get this is kind of the violent part of
metaphor hit by a bus for for disaster to strike or or that's a bad way to put it because someone
has been hit by a bus disaster has already struck in the form of a bus striking how many people
would have to get hit by a bus until like you you could not do the thing you couldn't i don't know
maintain some system or build new features i thought it was how many people have to get hit
by a bus before you shed your first tear so lower is better in that case right you're more human
i guess zero ideally i like lottery factor though of how many people like what if instead of saying
what if they get hit by a bus what if they win the lottery and then move to a beautiful island
or something like that i like that i like lottery factor better too
Yeah, it feels weird for me to talk about valued team members and say, now if...
If some of them die.
Yeah, we got to think about our code if they die.
Right, that's the most important thing.
Yeah.
What's going to happen to our search indexing service if someone has a horrible personal tragedy?
Right.
Forget about their family and next of kin.
I'm very worried about this outdated Elasticsearch index.
Yeah.
Yeah, our P95 is the real tragedy here in this case.
I agree.
I actually, when I read this question,
I wondered if it would pivot to a discussion
of the humaneness of this frame.
And I wasn't disappointed.
Oh, good.
Yeah, this is a great question, though.
It's, yeah, it's a side effect
of having someone very knowledgeable
who is very capable is sometimes
they sure can do a lot of stuff and then a lot of stuff comes their way and then it's sort of like
a vicious cycle where if if if they know how this darnly system works then everything to maintain
and work with the starly system comes to them and then the knowledge doesn't get spread around and
yeah yeah okay so now that we've had our little tangent what can you do to take the load off
and you have an ulterior motive,
you want to be a senior engineer.
Oh, I know what to do.
Push the senior engineer in front of a bus.
It's perfect.
Full circle.
I have gone through a less traumatic version of that
where no one was physically harmed.
No one was pushed in front of a bus,
but there was what I thought was a really essential team member
who did was kind of like this a lot of stuff flowed into them they they took on a lot they
accomplished a lot they had a lot of state in their head there are a lot of things that only
they knew how to do and then sudden layoffs this person was one of the people laid off and i was
flabbergasted at first like how will we survive we don't know how to do thing x and then we kind of
did this is not a satisfying answer but it is sometimes easy to overestimate the bus factor
it's easy to underestimate it too but but you'd be surprised what necessity can do for picking up
new systems there are probably like maybe maybe stability problems that might happen long term
but in terms of just like ability to accomplish the thing going from full ability to do it to
zero i think that's that's less likely than it doesn't feel very likely you can do it that's
what i'm saying don't worry about it push him in front of the bus let go of your fears and yeah
and push him and work this is your han solo moment
yeah yes plant plant the fake evidence that will lead to the firing yeah you've got this
just believe in yourself just believe
i'm so sorry oh
uh yeah so how do you how do you go about this like i the funny thing is i've known a lot of
people who have done this i don't mean pushing people in front of the bus but who have just
picked up work to offload someone who's more senior and overtaxed and i don't know if i've
ever noticed a pattern or a deliberate action they've taken other than just being interested
and curious and just asking lots of questions and then once you you know once you've actually
got enough context and information about the system you can start to understand where there
problems and then just be brave enough to raise your hand and say hey can i take that when when
an opportunity presents itself i was talking to one of my co-workers today who who said
truthfully i think that that one of their one of the things they do really well is is not
be afraid to just jump in and break stuff and muck around and i think that is the attitude
you need if you want to start digging into these gnarly scary impenetrable systems is like
yeah you just have to dive into it and good news you have an expert yeah yeah you got an expert
there to help bail you out until they win the lottery yeah i so i am assuming this could be
a case where everyone is scared of this system and it's kind of a pain it's probably really
important but maybe this very senior person does not love the fact that their work life revolves
around it and and then they would welcome the help there could be a case where someone is kind
of possessive of their thing because they really like it and don't want to let other people meddle
with it then you might have to win some trust and maybe go a little bit slower and break fewer
things but you also probably have the backup of others because in general this is a thing that
companies want they want more of they want fewer essential pieces yeah so it's a good thing you
shouldn't have any challenge here. I don't mean challenge in the sense of it's intellectually
challenging, but I mean, there won't be organizational resistance, hopefully. And if
there is, if there is organizational resistance here, that'll be an interesting indicator
about your organization. You know, that people have silos that they guard and protect to prevent
information sharing. Now, if you start seeing some of that, then you got probably deeper problems.
I think I've been, now that I read this question again, I've been focusing on the wrong aspect
because the question is about a bunch of different things
pulling this person in many different directions.
And I've been talking about like this one system
that is very gnarly.
And it sounds like it's much broader than that.
So it's not like you could necessarily go
and learn the search indexing service really well
and then the problem is solved.
Like that will help with maybe one of the directions
this person is being pulled in.
Then they still have all the other ones.
Yeah.
I have tried to solve this as a manager
and the solution is to put the essential person in timeout,
like take their hands off the keyboard.
They are allowed to give feedback and share knowledge.
And I guess if prod is on fire, then dive in.
But we just have to force ourselves
to break this habit of depending on this person
because it's very convenient.
It's like...
What have you done to put them in timeout?
Yeah.
I've literally said, hey, please don't work on this thing anymore.
And I'm going to ask other people.
Oh, okay.
But it wasn't like, we're giving you a merit-based, all-expense-paid vacation.
Oh.
Disappear, disconnect.
No.
That would have been great to be able to do.
Yeah, absolutely.
But instead I said, please don't type any code on this thing because we want to spread the knowledge around more.
Okay, okay.
but so maybe you could pitch that to your manager as a way to reduce this risk just say don't touch
this code anymore well i feel like it's always going to be short term more convenient to let
this let this very senior person just go off and fix the thing really quick yeah exactly faster in
the short run yeah and and long term you'll be in a bad state and i think i think already are
well that's true you'll be in a worse state when they win the lottery yeah true so i i'm thinking
through what you can do as a as a peer of this person and and i'm basically saying it's hard
for you to say hey super senior person don't touch this keyboard anymore on these problems but you
can ask manager to say that to this person yeah exactly also i i will say that it takes time to
become more useful in a team after six months there probably isn't a lot of context that you've
accumulated. And I'm just assuming this person has been there for many years. It says really
tenured senior engineer, which I imply to mean like, what, five plus years? Lots of accumulated
context that just comes organically through kind of a mental osmosis. And that's something you just
don't have. And so give yourself permission to grow into this role at a rate that is actually
commensurate with reality. Because sometimes it just takes time. So I would say that.
and if you want to accelerate that i would do everything jameson said which is ask that person
what you can help with ask them to like if there's especially if there's a part of the system you're
particularly interested in ask them if you can shadow them you know say hey next time you get
a question on this or get asked to do something on this can you can i shadow you just call me
you know and you'll have to remind them a few times because they won't remember but it's called
just say hey remember i want to shadow you on the xyz system just say i'm trying to learn not
trying to steal your job don't worry also not going to push you in front of a bus i'm going
to help you win the lottery yeah the world will be a better place as always if you if you listen
to dave and i yeah exactly and in this case responsible if that's not the case
sometimes the world may be in worst case worst worst place i can't do the fast lawyer voice
because I just trip over my words.
How does that guy pull it off?
Years of training.
Yeah, I should shadow it.
All the commercials go to this one guy
and that's such a bottleneck for him.
Yeah, maybe I could push that guy in front of a bus.
Yeah.
Have we answered this question?
I think so.
I mean, I hope we haven't done it a disservice
by saying, yeah, just learn more stuff
but that's kind of what we're saying right like learn more stuff copycat do some things but you
know i the more people who know about your desire to learn the better off the more opportunities
you'll have so if you just sit there and wait and hope that something will fall in your lap
she's not going to happen yeah or it's it's definitely not going to happen at the rate you'd
like it to happen but be curious dive into these things you know i'll give a few examples of things
I do. When I'm looking at a new system, one of the last things I do is sit down and read that
system's code. I found it to be very unproductive. I often go down alleys that, you know, you'll read
big blocks of code only to find out, oh, that code's not even called anymore. You know, it's
just dead code. So I like to go in and look at system logs and just see like, what are the hot
messages that come out? And by hot, I mean like the highest frequency messages that come out of
this thing. Oh, what does that thing do? How long does it take to do the thing it does? What are
the systems does it talk to and like you know many many companies use a product called new relic
it's very very useful for just understanding what the system does where it spends all of its time
what are the high high velocity or high frequency transactions that the system processes stuff like
that you know if there are metrics that the system emits or dashboards spend a lot of time on those
things so i this is how i go about learning new systems and then in the you know last resort go
read the systems code i just have very had very little success with that in the past maybe it's
because i don't actually know how to read or write which is weird but anyway there are ways to become
acquainted with the actual runtime behavior of these systems that are valuable that i'll bet a
lot of your team members haven't done now dave why wouldn't you simply read the detailed documentation
oh good point yes the the design docs and the the technical like specifications for how the code
works yep of course architecture diagrams yes all the diagrams that undoubtedly exist
yeah i really like the point you made about you'll have to reach out like there there are
well-worn grooves that all lead to the very tenured engineer and if you're kind of just
doing the thing that is assigned to you it's really hard to change those so you will have to
jump in and put forth effort. This will take energy on your part to intercept the flow of
things to this person. Yeah. All right. Now we've answered it, right? Okay. Question answered.
Cool. Well, what can people do if they would like their questions answered?
Go over to softskills.audio and click the ask a question button. And we must say,
from the bottom of our hearts, from even under the bottom of our hearts, thank you. Even lower
than the bottom thank you for all the questions that flow in every week we love reading the
questions and hearing from you and we really appreciate it and we promise jameson he promises
that if even if it takes eternity i will i've already seen yes which we've already seen he's
willing to commit to he will answer all the questions and i'll do as many as i can reasonably
you know well don't worry about it because i'll pick up the slack any you don't do i'll do because
i'm doing them for eternity this is the only show keeping jameson alive actually this yeah
thank goodness all right thank you so much we'll catch you next week
