Soft Skills Engineering - Episode 335: Senior questions and overly optimistic
Episode Date: December 19, 2022In this episode, Dave and Jamison answer these questions: Greetings Jamison and Dave, love the show and all your shenanigans! I’m a mid-level dev who has quit my job (TM) a few times. While... I feel like I’ve absorbed some good experience from each company I’ve been at, I also feel like my training is not yet complete. At my last company, I hit my ceiling as a dev but I also felt the bar was really low. I had to do a lot of hand holding and fielded a lot of engineer questions that could have easily been Googled and it was really frustrating. But now I’m at a place where I feel everyone else is heads and shoulders above me. The tables have turned! I’m trying to learn as much as I can on my own but I’ve found there are limits to what I can do. I feel like I’m drowning but I’m timid to ask too many questions because I remember how annoying it was to get pinged every 10 minutes at my previous job. What are some tips you have to navigate the murky waters of being a mid-level dev wanting to learn as much as possible to become a seasoned dev without giving off an “intern smell”? Listener Charlie, Nearly all your answers presuppose a software engineer has a good manager and leadership. Why is this?
Transcript
Discussion (0)
it takes more than replacing letters with numbers to be a g3t e6r engineer this is episode 335 of
the soft skills engineering podcast and i'm your host jameson dance i'm your host dave smith
soft skills engineering is a weekly advice show where we talk about all the non-technical things
that go into this technical field of software development and and ponder on this trend which
i found out has a name oh a numeronym it's a number based word like k9 and u m e r o n don't
you mean an n6m yeah as long as the other person already knows what you're trying to say it is
pretty efficient for compressing there is the slowdown at first when you develop an entirely
new language that's purely context-based because you only know the first and last letter at the
length of the word sorry numeronym it's a n7m sorry oh i feel terrible rookie mistake
at numeronyms after yeah after a while your brain just counts letters automatically and yeah you
speak like that i18n is the one i've heard the most and then a11y internationalization and
accessibility and l10n or lion what is l10n localization localization internationalization's
little friend okay they do mean different things though hmm i believe you i will not explain to
you what what the difference is but promise i promise i do know i promise that i super know as
well dave do you want to thank our patrons yes i do thanks to those that are contributing where
they get a shout out one time they are joel prail and the saucy paramecium and to those that are
contributing at the level where they get a weekly shout out they are valentina datafold
santa hopar noah frazier log kent c dodds memester josh jenny kim owen chartle craig
motlin i love mavis the stochastic parrot alice jost lan flair
kashokton ohio patreon.com.au we're hiring ira chan monkey face emoji jonathan king
testing is documenting.org oladapafadiyi will angel ganarar okay this this patron
has been rearranging the order of letters every month and i'm starting to see i'm finally starting
to see the pattern and i love it ganarar capital r in the middle there okay nick hathaway travis
sanders brayden canes john grant compilator with a k.se cody sale nick cantar and philip
if you would like to join this illustrious crew of contributors to the podcast all you have to do
is go to soft skills.audio and click the support us on patreon button and you can contribute any
dollar amount you like to get access to our Slack community, or you can contribute an exorbitant
amount of money, both signaling your wealth and virtue. And we will send you an invitation. No,
we will not. I said that totally wrong. We will say your name or any phrase or safe for work word
or emoji of your choice on the podcast every single week without fail. I'm sure you did a
really great job on that. I was looking up what a paramecium is. And apparently it's a single
celled organism a genus of eukaryotic unicellular ciliates huh oh i remember looking at these as a
in school don't they have hairs that move them around on the surface wow how did you know that
i googled it and saw a picture and remembered oh okay but i thought you just have this knowledge
sitting in your brain of like random facts that will come up someday i did have it but it needed
to be signaled by or electrocuted a little bit i've probably got some like floating around in
my body right now paramecium oh yeah are they mostly uh bad for you i don't know it's in brackish
water yeah stagnant basins and ponds not my favorite not my favorite thing to drink well
well thank you saucy paramecium for your support usually you just cause infections the sauce is
the stagnant water all right should we should we dive into our questions yep will you take the
first one yes this is from an anonymous listener who says greetings jameson and dave love the show
and all your shenanigans i'm a mid-level dev who has quit my job trademark a few times well i feel
like i've absorbed some good experience from each company i've been at i also feel like my training
is not yet complete at my last company i hit my ceiling as a dev but i also felt the bar was
really low. I had to do a lot of handholding and fielded a lot of engineer questions that could
have easily been Googled, and it was really frustrating. But now I'm at a place where I feel
everyone else's head and shoulders above me. The tables have turned. I'm trying to learn as much
as I can on my own, but I found there are limits to what I can do. I feel like I'm drowning, but
I'm timid to ask too many questions because I remember how annoying it was to get pinged every
10 minutes at my previous job. What are some tips you have to navigate the murky waters of being a
mid-level dev wanting to learn as much as possible to become a seasoned dev without giving off an
intern smell i like that it's a vivid metaphor okay that i i swear we're living in a simulation
and i'll tell you why this question says i feel like my training was not yet complete
which evoked a mental image for me of star wars the original series your training is not yet
complete i think i don't know who said the line but it evoked that image and the very next
question in our backlog actually made a reference to ben kenobi and anakin skywalker from the
prequels which for this one moment i will admit do actually exist so that i can acknowledge the
simulation that we're living in are you offended by them well i can't be offended by something that
doesn't exist so no okay disgusted by the idea of them if they were to you right
yes they're as good as normal star wars that's how i feel to you that's the most offensive thing
i think i could say right now oh jameson like the only thing we disagree on yeah
yeah this is interesting yeah i bet what go ahead what is the intern smell
smells like fresh coffee and enthusiasm being delivered on a tray to all the team members
hey everyone fresh coffee and and lack of cynicism
what does cynicism smell like interns smell like the opposite of that
whatever the room i'm in smells like that's what cynicism smells like to you yeah i guess
so yeah this is interesting you're you're worried about being the person you were annoyed at at your
last job. Yes. Okay. I was going to say, I expect that you are not asking things that are easily
Googleable, but there's a skill in knowing how to Google a question. And sometimes you don't even
have the foundation of knowledge to know what to Google. So maybe to you, they were easily
Googleable because you knew the answer already. Like you knew the magic phrases. So I'm going to
start by planting some doubt in your mind before I tell you that they're probably good questions,
But maybe the other questions were good questions to the asker.
Yeah, you're asking questions about context that is not public knowledge of the system.
You're not going to be able to Google what the engineer who left four years ago was thinking
when they built this system that way.
Right, of course.
Or abstractions that are internal or things like that.
Asking why a lot of the time is a good question and is not easy to Google for.
So you're saying that when you have a very specific question, you should try to hide that question inside of a more reasonable question that no senior engineer will balk at, such as, could you please share the historical context that led to this sequence of design decisions?
What's the hidden question?
The hidden question is, why am I getting this null pointer exception?
Oh.
Obviously.
Please share the decisions that led to me typing this code right here that doesn't work.
Show me the architecture decision record where we decided to use a language with null so I could blame it on that.
And then your engineer sits back and goes, hmm, I see you found another null pointer, except you're struggling to debug, eh?
Yes.
It's me again.
Null pointer kid.
It's me.
Yeah.
Okay. Yeah. So if there are questions that you could not reasonably figure out by looking around at public material, that's a good sign. There's also some feedback you'll get from the company. Different places have different tolerance for questions.
I have worked at places where there's kind of some grumpiness, and it's sort of like a begrudging willingness to help up to a certain extent.
And then after that, you get the grumpies.
You're on your own, kid.
Yeah, yeah.
And I've worked at places where people go out of their way and put in intense amounts of effort to answer questions and make sure that all of your follow-up questions are taken care of.
Thank you for the question.
I like the second one.
And here's three more questions you forgot to ask.
I'll go ahead and answer them now.
yeah i i love that vibe in the second one but it's not always like that so if you see
rolling eyes or if you're in slack and you see the rolling eyes emoji it's funny because like
which one of those is communicating a stronger feeling is it hard so let's see sometimes i
conflate the rolling eyes and the like left and right looking eyes that mean i'm looking into
this oh i'm offended a lot basically is what that yeah the eyes so okay now we got to get to the
bottom of this because there are the rolling eyes and then there are the eyes where you make them
look to the left and the right and then there are the eyes that are just like looking and maybe
looking one direction but to me those all mean very different things where the left and right
looking eyes are sort of like the i don't know what's going on here kind of like looking around
in confusion the staring eyes mean i'm looking into this thing and the rolling eyes if you like
the person means this is a joke and if you don't means like i'm i hate you so so much i just have
to wonder whoever whenever the committee decided to go ahead and bring emojis into mainstream
language use if if they were motivated by the tenet that english doesn't have enough ambiguity
in it we need to just go ahead and inject some visual imagery that will undoubtedly mean different
things to different people i would use an emoji to preserve the illusion that i am thinking smart
things right now the starry eyes sure yeah the starry eyes one yeah that seems appropriate here
i'm i've actually just deployed the paramecium eyes emoji hairy single-celled eyes yeah that
sounds horrifying but yeah there there might be some context clues of how annoying you are
you could also just ask like hey is this annoying is this too much is getting in the way of of your
work and some people might tell you and that i would recommend doing doing in real time either
by video call or in person because what's going to happen is you're going to ask that question
over slack and then you'll see like so and so is typing dot dot dot then not typing and then a
minute later so and so is typing and you're like oh crap yeah that that is a that's a really
interesting like sideband method of communicating information yeah you always know something tricky
is going on you said in person or over video yeah and i was wondering how you feel about
the singing telegram as an alternative method of communication i feel great about it okay
shows that extra touch actually it wouldn't be too hard to these days with chat gpt could probably
just generate the lyrics for you maybe even the harmonies now you just got to find some voice
talent oh that's interesting i wonder if someone has tried to do because i've seen people write
code with chat gpt and i wonder if someone has tried to generate like some kind of textual
musical notation i don't know i haven't seen notation yet but i've seen lyrics yeah i guess
i'm wondering like i don't know i bet you could say write me some guitar tab yeah you probably
could they should look into that they do that same group opening i has a project called jukebox
that i don't yet i don't think it's yet open to the public but it has generated straight up fully
produced music with words instruments and everything every day i reassure myself but
surely my job will never be replaceable by that it's just the country singers that are going to
lose their jobs yeah first it was just the professional chess players right they've all
been obsolete now okay what was i saying look for contact signals that it's it's that it's too much
yeah yeah now i'm going to pause for you to say smart stuff okay that's my next move
nice move go is that is that what your chess ai told you to do
yeah I have an idea so one thing I like to do when I start a new job no matter how senior or
junior I am is I like to keep a question accumulator because one of the things that
the question asker mentioned is I remember how annoying it was to get pinged every 10 minutes
at my previous job yes that is annoying it is impossible to get work done with with interruptions
that have a 10 minute period so instead I like to write down my questions in an accumulator
and then I go put time on the calendar of people who I think can answer those questions
and I'll actually sit down with them either at their desk or on a call. And I will put the
questions up in textual form for us to reference together. And we'll just work through them top
to bottom. And the beauty of this is you know when you're done and you've defragmented that
person's calendar so that they have one segment where they have all the question answering they
have to do. And they'll probably be very grateful to you for that professional courtesy.
yeah that's also convenient in another way i find that often i will ask questions
that at some later point i will uncover the answer to i just didn't know it when i asked
that's right so batching them up that way lets you also uncover the answers you would get if
you just kept going yes and you can you can even apply a debounce algorithm to your question list
where you say anytime i mutate the question list i impose a 24-hour timeout on actually
asking any of these questions. That way you might actually find that over the next 24 hours you
discover some of the answers and you don't have to bother anyone at all. Yeah, I like that. Everyone
is heaven and shoulders above me. I mean, this is what a lot of people want, right? Isn't it a
common desire to want to work with people who are just really talented so that you can learn from
them? I think you're in a good situation because of that. Didn't ask too many questions. Another
thing that you could do is have some kind of like regular mentorship relationship this is similar to
your batching up questions thing because that's a thing you can do with a mentoring relationship
is bring batched up questions but it doesn't have to be exactly that if if there's someone who is
kind of your your go-to person that you can explore stuff you aren't familiar with that can
be useful it can be useful to have a guide to lead you through the the spelunking through the
complicated and dangerous cave system that is the technical systems at your company
here put this headlight on before we open this code yeah and this helmet do not touch that rock
or it will all come tumbling down yeah that one that one holds up the whole cavern
yeah that's a load-bearing pebble
that's a load-bearing npm module that's been abandoned yeah
oh you laugh i cry
it hits home i have one more idea to offer which is that when you are asking questions i'm really
latching on to this word annoying in the original question asker one thing that can make questions
annoying is if it's clear that the question asker didn't do any work before showing up to ask the
question you know it's like i saw this i didn't google it i didn't look for other references to
this in our code i didn't search our documentation repository i didn't even try it i didn't run the
code. I didn't even try to compile it. I didn't get clone the code, nothing. And so if you will
come with your list of questions and then under each question, a sub list of the things that you
have tried to answer that question and explain that to the question asker, not only will that
make them think, wow, this person's great. They really try hard. They are coming to me not out
of laziness, but out of a curiosity to learn. And I am the best source clearly after all that
they've done but also it will help them to give you a better answer because they won't waste time
with things that you've already tried yeah did you try googling it yeah that makes sense i like
that i tried turning it off and on again you might be seeing some pages
okay well have we answered the question i think so um i think that just to put a final point on
my thoughts. I think that this question asker might be putting too much fear into their inability
to ask interesting questions to the people that need to answer them. I actually think that a lot
of people like to answer well-formed questions from people who obviously took their time to
really formulate the question effectively so that the question asker can have a productive
response. And then again, last thing, after, not, this is not, I said again, but actually this is
not a repeat. After you get the answer, be sure to thank the question answer profusely. Say thank
you and tell them you really appreciate their time. And just make sure that they know that
it's time well spent and that you're going to remember it. And then don't ask them the same
question again. Just write down the answers and then don't come back again with that exact same
question. Yeah. The singing telegram comes in handy here again for the thank you note. You can
write an ode to the question answerer. That's a good idea. All right. Speaking of question
answers, that's what we are with that question. Yeah. And that last one was a cry for help. We
answer so many questions and very rarely do people actually send us a singing telegram to say thank
you. Saying that was an unmet need that I'm expressing. Yeah, yeah, exactly. I'm subtly
hinting at. I could count on one hand the number of singing telegrams Jameson has received as a
Thank you for his question answers.
I mean, it's a fisted hand, but it is one.
I mean, they never say whether that's an upper or lower bound.
Like, I could count on infinity hands the number of singing telegrams I've received as well.
I could count on 17 hands.
How many?
It's zero.
Okay.
Yeah, they'd just all be closed.
Yeah.
Okay, Dave, will you answer?
Fists.
okay sorry now for real that's a message all of its own if you're counting on 17 close fists that
that gets threatening all right yeah will you read our next question yes this comes from a
listener named charlie who says nearly all your answers presuppose a software engineer has a good
manager and leadership why is this that's the whole question that's a that one hits home oh yeah
Yeah. I love this question. It's very introspective.
It is. So we were talking about this a little bit, and I think one answer is,
I think you said this, Dave, so I will say it, but give you the credit.
All right.
You'll win the soft skills bucks, or I don't know, whatever the credit is, whatever unit it is.
It's hard to predict behavior of bad leadership and bad management,
because there are so many different ways to be bad yeah that that if we're trying to defensively
assume if we're trying to defensively like guard against okay but what if they screw up in this way
when you bring them this problem it's it's tough to get anywhere i guess there's there's too many
ways for that to go south or to explode into a combinatoric nightmare of like yeah quadrillions
of that's why we just didn't want to we know the answer we just didn't want to spend 10 universe
lifetimes explaining all the different permutations of wrong just for time constraints also we
couldn't find a podcasting hosting storage system that would allow us to store that much audio
not yet there's a market opportunity out there for some combination decision tree podcast
storage. So why do you think this is, Dave? I think it's because I'm hopelessly optimistic
and I've lived a charmed life. Do you think you have had bad leadership or bad managers?
I think that I have had unskilled leadership and managers, but I have not had bad faith actors as
leaders i think people who actually don't have the best interests of their team at heart they
exist i just don't think i've had them in my own team i think i'm the same yeah i've definitely
had people who i i disagreed with some of the things that they did or ways they approached
problems but i feel like we were definitely working towards the same goal but i you know
we hear so often, and maybe this is a kind of an effect of our cynical culture that we live in,
but we hear so often about nefarious people. I mean, I won't say any names, but in the headlines
just recently, there was someone who billed themselves as essentially the biggest philanthropist
the planet has ever seen, but then maybe not actually in reality a philanthropist, you know?
And so I think a lot of times we wonder, am I working for someone like that? Is my boss
secretly working to undermine me. And then we hear stories about this kind of thing all the time,
where people report that their boss was trying to manage them out or had some motivation that
didn't actually align with the team's success, or some political relationship within the company
that caused them to make choices that undermine their own team. It's the kind of stuff we hear
about it all the time. But I wonder if it's a survivorship bias or a sample bias kind of thing,
where there just can't be that many bad actors
to where that needs to be our default answer.
You know, like if we're shooting
for the 80% accurate answer,
it seems like, again,
maybe I'm just a hopeless optimist,
but it seems like if we're shooting
for the 80% case,
we're probably got to assume good intentions
and decent competency.
I was thinking about Hanlon's razor,
never ascribed to malice that,
which is adequately explained by ignorance.
i think is how i've heard it before which is similar to what you were talking about with
with lack of skill it's it's really easy to screw up but be trying to do the right thing
and and that can look like incompetence and sometimes the the lever you have as a manager
or leader is bigger so your mistakes can have larger impact there's there's kind of more
responsibility and more of a spotlight on you so i i feel like i feel like most of the leaders and
managers i work with have been flawed humans who get stuff wrong sometimes just like everyone else
i work with but the impact of getting stuff wrong can be bigger as a manager so it sticks out more
i wonder if that's why and there's there's the power dynamics to go around the go with that like
if if you have a weird conversation with a co-worker and you think huh that's kind of awkward
you might say all right back to work yeah if you have a weird conversation with your boss and think
that's kind of awkward maybe they're like plotting against me that like that doesn't that that
possibility doesn't come to mind as easily with without the difference in in power dynamics right
and maybe i'll spend the next few days losing sleep over this awkward conversation yeah yeah
so what's that there's got to be a name for this bias right call it dave's law that oh man i was
going to call it the Jameson law. No, because that's one of the laws is you can never name it
after... Well, I'm being pretty prideful here by assuming that I have formulated a new name-worthy
law. But one of the laws is you can never name it after the person who formulated it. It has to
always be someone else. Someone who stole the recognition and who's better at marketing?
Yeah. And there's a name for that law and it's not named after the person who coined it.
so what is what is the bias here it's it's that like you'll perceive i don't know weaknesses or
flaws or failures they'll be magnified in positions of leadership or something like that
exactly when there is a power differential in a relationship then otherwise innocuous behaviors
have like unreasonable or inequitable impact yeah this is why they've never named a law after me
i'm gonna write this down this sounds cool well not cool as in like oh neat it sounded pretty
good until i tried to say the words no that's an interesting thought i'm sure there's a name
for this already i i'm too skeptical of my own smarts to think like no one has ever thought this
before yeah kind of going back to the original question you know all of our answers presuppose
a software engineer has a good manager and leadership i think i think what we the reason i
say so often, go talk to your manager about this and here's how you can say it, is because you have
to at least try to engage your manager because it is their job. It's kind of like the same way
that a company presupposes that it has good engineers working at the company every time
they send a JIRA ticket to an engineer to work on. I'm kind of presupposing because it's your job
that you can do this ticket. And I think as a manager, we presuppose it because it's actually
in their job description to handle the situation. So we send you there first. But trust me,
Jameson and I are both very much aware that not all managers or leadership are going to respond
well to that. And so maybe what we should start doing is saying, okay, go to your manager,
say this. Then if they say the following, you're good. And if they say anything else,
you're in a bad situation with bad manager and bad leadership. And the universe of anything else
is so big that we can't tell you what it's going to be, but go ahead and submit another question
to our Soft Skills Engineering podcast question backlog. And in six years, we will answer that
question and you'll know what to do. You'll be one step further along
down this decision tree. Yeah. Let's just say that the Soft Skills Engineering
REPL is very, very slow. I do wonder if there... I feel very snooty while I'm saying this,
which is never a good sign but i wonder if there's some amount of like have we have we
chosen or been sorted into places where like things are generally all right you know like
generally like maybe the situations we have ended up with are not representative of the
talent level of management and leadership as a whole i think that's probably true i mean just
given for every dave and jameson who have lived a charmed life with a career full of supportive
and reasonably competent engineers or sorry leaders there is a a jayven damason pair who
in another universe had 100 evil and incompetent managers yeah i wonder if it's maybe does it have
something to do with like which industry you're in or maybe location maybe there's there's i don't
know a less strong software industry in a place that you're working and so that the overall talent
level is lower i don't know i it's not really an answer at all but i am wondering if general
things seem pretty okay is the is not the norm you mentioned maybe it's the 80 case and and that
feels high to me based on my scientific gut i asked my what is that thing named i asked my
paramecium my parameciums paramecii what is the plural of that word i asked them uh paramecia i
ask my paramecia that's what i mean when i say ask my gut that is correct i just googled it after i
said it that time good job and what and your paramecium said what there was no consensus
they were unhelpful talk talk about talk about a power imbalance that paramecium is like one
swipe of the hand and we're all dead it said i'm just trying to kill you here leave me alone
yeah so is there a more general lesson or principle here besides maybe jameson and
and dave are kind of naive which is a good lesson to take i mean there's also another
related possibility which is maybe jameson and dave are white guys with beards and kind of like
fit the the mold a little bit and and not everyone's experience is the same especially if
they come from different backgrounds, that could have something to do with the observation as well.
Yeah. So I guess what you're saying is that one manager or one leader could actually create
more trouble for different team members on the same team, depending on how that manager or leader
perceives them. Yeah. It could be explicit and deliberate. It could be implicit bias. It could
be unconscious. It could be any number of reasons. But that fact alone, if a manager singles out
people on the team and treats them poorly, but treats other team members well, is in and of
itself one of these indicators that the manager is not the rosy, perfect leader. And so I guess
we just haven't been the recipient of that bad behavior. It's quite possible that others on our
teams or people surrounding on us surrounding us have been the recipient what's the opposite
of beneficiary where you something actually hard to fishery i think it's bad i think
we haven't been the bad of these bad leaders even though they were bad
well said i think you should i think we should name a law after you with that kind of wording
sherry it's good jameson's law of bad neologisms so what what is the lesson or takeaway here
stop listening to us
that is not where i was hoping this would go but your logic is i mean i mean sorry i meant
listen more listen more that's oh man sorry the marketing team always gets after me for saying
Actually, I have a positive spin on that, which is a lot of this is caused by just the general low skill of engineering management.
It sounds really bad when I say it that way.
People get roped into it.
They don't often deliberately choose and certainly don't study or prep a lot to go into it.
So there's a lot of engineering managers out there who are competent technical folks who talk real good, you know, and it turns out that's not enough.
So I think part of what we do by presupposing a good manager is help our listeners have expectations of what good behavior looks like.
And that can be useful as that percolates out into the world.
maybe that will influence leaders and managers to to get better either through the listeners
themselves as they go into those positions or or just like if you bring a problem to your boss and
and frame it in a certain way that is helpful that might help them understand oh this is this
is like the right way to solicit feedback from people or something like that does that kind of
make sense i see i can count all the cents on many hands and you can't count on no hands got it
That's right. It does require some hands to count.
Yeah. Well, my brain's empty.
All right. We drained it. Let's call it.
All right. What can people do if they want their own questions answered? Dave?
Go to softskills.audio and click the Ask a Question button. And we, as always,
we send out a heartfelt... Sorry, I'm trying to work in the word paramecium here, but a heartfelt...
From the bottom of our paramecium.
that's right thank you to everyone who has submitted questions we absolutely love them
keep them coming the more the merrier you should see jameson's eyes light up every time he opens
the the backlog and sees more questions it's like christmas morning every single week i believe in
santa again now i'm just thinking about the idea of having a single pet single-celled organism
that you you're very attached to you've like anthropomorphized probably more than it deserves
you're trying to keep it alive you can you have to use a microscope to even see it
yeah yeah it has like a two hour long lifespan that you're somehow really invested in
my paramecium is like 87 in paramecium years
I can't miss these essential bonding moments slash last moments together
all right well I think that means we're done thanks for listening we will catch you next week
