Soft Skills Engineering - Episode 342: Losing my job to AI and bad review season
Episode Date: February 6, 2023In this episode, Dave and Jamison answer these questions: Hello Dave and Jamison, thanks for your great work. Your podcast has the bizarre magical property of making me look forward to long d...rives. Keep it up! I have been feeling anxiety over losing my job to AI, especially after the all the ChatGPT stuff from a few months back. I know that it definitely isn’t flawless but I know that this technology will just keep improving as time goes on. I am a software engineer with 2 years of experience. I can’t help but feeling like I will lose this amazing career in the near future. I left my old line of work a couple years back and am in my mid 30s, so switcyhing careers again is a dreadful thought. Is there anything you can suggest to ease my anxiety? Will being more social with my coworkers, or aiming towards management help reduce my chances of being automated? Any advice will be great, thanks. PS: If someone tries to replace your podcast with an AI generated one I will boycott them and stick with you. It’s review season! I am an IC software engineer, and I am required to document my impact for the last year. However, I work on an auxiliary team/new business team that is always trying to find new use cases for the existing product platform. If you look at the numbers, the impact is very low compared to the core business. Also, my team was disproportionally impacted by layoffs late last year. Lot of folks with institutional knowledge and good relationships with the core team were let go which disrupted our team and contributed to missed deadlines. How do I write my review for this bad year, with little to show for it?
Transcript
Discussion (0)
it takes more than having chat gpt write your email rescinding your acceptance of a job offer
to be a great engineer this is soft skills engineering episode 342 i'm your host dave
smith i'm your host jameson dance soft skills engineering is a weekly advice podcast for
software developers about all the non-technical stuff that goes into navigating this career
such as how to use computers to write emails to human beings which will then be interpreted by
computers and summarized so that the recipient can save time that's cybernetics i saw a great
meme this week which was three images it was like the the image it was someone sending an email to
someone else and the original image was like write an email saying i'm sorry for this or that and
then the ai generated this long flowy beautiful message like with deepest regrets and then on the
other end the email came through and it was like summarize this email it's like joe says sorry
it's like we're creating this like 100x data increase so that the ais can talk to each other
and interpret for us yeah someone gets paid for all those tokens generated that's right that's
right oh anyway i thought that was funny dave do you know what i want to do right now i do but i
want you to say it okay that's also what i wanted to happen right now how i wanted you to reply so
all is according to plan i want to shout out our patrons that contribute at the level that we do
this every week i want to thank andrew realis connie lee valentin and datafold santa hopar
noah frazier loge kensi dodds jenny kim owen chardell craig motlin i love mavis the stochastic
parrot alice jost land fair quill quinn go go go go go go wow i feel like it's been a while
since i've tried yeah you pushed all the way through most of the letters yeah i feel like i
owe it you know they're okay getting their money's worth kashokton ohio patreon.com.au
were hiring ira chan monkey face emoji jonathan king testing is documenting.org oladapofadie
will angel agner nick hathaway travis sanders brayden canes john grant bartek takowski cody
sale nick cantar and philip john basile thank you thank you thank you we appreciate it we show our
appreciation by saying these words and also by you know how in in cartoons when you snore the
snore noise is like it's like something like that it's like oh okay like it has a little music to it
little tonality yeah yeah there's like the the snore noise i am aware of that and now i'm very
eagerly awaiting how you're going to tie that into this connie lee that's what we do we we repeat
these as our snore noises that's right yes i i forgot about that but i do do that yeah i mean
it's been such a habit that yeah i mean i it's like breathing i don't even think about it just
happens yeah yeah also if you contribute any dollar amount by going to soft skills.audio
and click support clicking support us on patreon you'll get an invite to our slack team and we
found a new thing to spend money on we bought the yachts and now we are publishing episodes on
youtube which has some editing and various costs associated with it but hopefully is a way to reach
more folks so thank you to to people for supporting and and it helps the show thank you yep the yacht
we just couldn't spend all the money on yachts we ran out we there was too much money left at the
end of the yacht i mean once you have five the the marginal value of a sixth yacht is pretty low
it's low it's low yeah oh shoot my other five yachts are all in the yacht shop good thing i
have my sixth yacht that doesn't happen that often not often enough to justify the hundreds
of millions of dollars should we read a question yes i would like to do that i also wanted to say
we have over 900 people in the slack community now so if you join you get access to 934 amazing
people who smell great there's no question about that the smell the smell in there is just so
aromatic it's great all right well that's also like joining makes you smell great if you don't
already so yeah that's part of how we can guarantee that right okay so this question comes from an
anonymous listener who says hello dave and jameson thanks for your great work your podcast has the
bizarre magical property of making me look forward to long drives well said continuing i have been
feeling anxiety over losing my job to AI, especially after all the chat GPT stuff from
a few months back. I know that it definitely isn't flawless, but I know that this technology
will just keep improving as time goes on. I'm a software engineer with two years of
experience and I can't help but feeling like I will lose this amazing career in the near
future. I left my old line of work a couple years back and I'm in my mid thirties. So
switching careers again is a dreadful thought is there anything you can suggest to ease my anxiety
will being more social with my co-workers or aiming towards management help reduce my chances
of being automated any advice would be great p.s if someone tries to replace your podcast
with an ai generated one i will boycott them and stick with you how do you know that hasn't
already happened yeah i was gonna say unless it's so good that it's imperceptible yeah oh this is a
Great question. Very timely. I've been thinking about this question a lot from actually a very
different angle. Not, am I going to lose my job? But rather, how can I become much,
much more productive by using AI-based tools? What's the answer?
So far, no. I got my pink slip last week and they've replaced me with an AI.
It wasn't a yes or no question, but the answer is definitely no.
Right. How much more productive can I be? Answer, no.
Well, it's, I mean, this is an extension of the classic problem of developers where if you spend enough time automating a thing, you'll become more productive at that thing. But then there's, it's got to, how long will it take to pay off? How much time can you waste looking at AI at work to become more productive? And how long will it take for that to make up for the fact that you wasted all that time?
For every limerick that I ask chat GPT to generate, I become that much more productive at writing Java code.
I do have one idea, which it's like, write this thing and make it rhyme.
That's 99% of my use case for using these large language models so far.
Which is a really cool use case, actually.
I asked it to write in iambic pentameter, and then I realized that, I mean, you have
to verify these things because they lie seamlessly.
Very, very well.
I don't know what iambic pentameter is.
I was like, I don't know.
This looks iambic to me.
Yeah, it kind of has an iambic vibe.
Yeah, I see the iambs in there.
Whoever came up with the word iambic pentameter is just a legend, though.
So I'm pretty sure it means stuff.
Oh, yeah.
It's something to do with five.
There's like 10 syllables in each line and an alternating emphasis on each syllable or something like that.
But I still couldn't tell if it was written that way or not.
Because I need an AI that I trust to tell me if it's written.
That's right.
You need another AI to check the work of the first AI.
And they're both like, yep, looks good.
Yeah.
They have each other's backs in solidarity.
They're actually the same entity under the hood.
Do you think there might be a part of our audience that doesn't know what chat GPT is?
You know what?
Probably worth assuming there's someone out there.
Yeah.
Do you want to explain what it is?
Sure.
So I'll pretend like I know what I'm talking about here.
So we have this relatively new concept at scale of large language models using a technique
that I believe they call stable diffusion or unstable infusion.
I don't know.
It's something with fusion, cold fusion.
That's what it is.
Iambic stable fusion amateur, I believe, where they have trained these machine learning models
on large corpuses, corpi, as the AI tells me, of human speech or human text, spoken
language text, you know, and they have trained these things to now produce plausible responses
to very common human questions or not common, but just naturally express human questions.
Things like my favorite one I've done is, hey, write me a seven day meal plan, trying
to stay in under this many calories per day, three meals a day and using this percentage
of protein, this percentage of carbohydrates, et cetera. And it will produce a plausible meal plan
and it will fully understand your question in text, of course. And then you can say,
now make a shopping list for that meal plan and it will do that. It's very, very, very,
very impressive technology. The fear here is that this technology will be able to produce code
that can replace human software developers, which I think is interesting and quite, you know,
it's a possible outcome in the future. One of the ways that we've seen this incarnated is with
a product called GitHub Copilot, which I've been using. It is also a GPT model, but an earlier
generation of GPT model from the current chat GPT that's taking the world by storm. And it will
auto-complete large blocks of code. You can take a comment where you write a comment about what you
want the code to do, and it will produce code that does that or attempts to do that. It's not perfect,
as our question asker says, and it makes a lot of little mistakes, but it also saves you a ton
of time time like searching documentation and things like that so i don't want to shill for
github copilot but that i think it's those kinds of products and chat gpt in general that are making
engineers wonder if they'll be replaced by technology was that a fair sum up jameson i was
googling instead of listening but it sounded good did it sound plausible because that's all i'm
trained to do it gpt3 was trained on 45 terabytes of text which is a lot of text that's a lot of
terabytes yeah sounds terrifying yeah they just kind of like threw the internet at it i have
talked to folks that use github co-pilot specifically and have also played around
myself with using gpt3 for code generation and it's it's incredible i don't know how else to
describe it it can't take vague requirements like if you don't know pretty clearly what you want
it won't figure out what you want very well but if you if you know like okay i need to reduce this
array down to i don't know an object with these keys like if you could say the words in english
of what you want the code to do it's pretty solid at writing code to do that thing yeah like it has
it has a lot of limitations of course but it's it seems to be on a growth trajectory that is going
to become much more impressive in the future unless we top out here i guess but i don't think
we are yeah but will it replace your job yeah and that that's a great question and i i my personal
opinion is that like i don't want to wax too philosophical but i think that people who say
no this will never replace me are wrong and people who say yes this will replace all engineers are
also wrong. My prediction for GPT and AI-based software development technologies is that it will
be a productivity boost to human beings. And there will also be a whole bunch of style of code that
people just don't need to worry about writing anymore because the machines can write it for
them. So I think what will end up happening is we'll start working at a higher level of abstraction
where we are generating instructions for machines that previously would get translated to machine
code and now are going to get translated from english to machine to high level code languages
and then and then to machine code so we're basically just adding another rung on the
abstraction ladder for the for where we work i think and it'll be more productive and faster and
less error prone so you already have heard this lament for a while about how programming today is
just uh cobbling together these lego blocks and you don't really build stuff don't really
understand what you're creating or it seems like if you are prone to that type of thinking
this this feels like a large step further in that direction where now you're not only
you're not even like picking up the legos and plugging them together you're saying hey computer
yeah pick up these legos and plug them together yeah i'm trying to think of some implications
of that, which I suspect it will be a lot easier to get further without really understanding what
is going on. But also, I mean, a thing with these language models in general is their idea of
correctness is pretty different from a human's. It doesn't really, I don't know. Correctness isn't a
thing. It's like, how do I put this? You need to know enough to check to see if the output is
correct that's right because it'll look plausible like um if if you tell it write me this code in
a language i don't understand um it probably knows that that programming language better than you do
and like if you've glanced at a tutorial then sure it looks i'm sure it'll look fine just like
iambic pentameter i'm like yeah that looks like i am exactly yeah yeah sure that yeah like i would
believe that writing that yeah so i wonder if it'll like does it require just as much
investment to learn enough to be able to verify as it does to be able to create but you'll just
be able to do more with that investment or will it like you'll create more stuff but you still need
that background of of like you you need to have been able to write it yourself to check to see
if it works you just won't be writing it yourself as much anymore and and that kind of that i believe
that what you have just described is the current state of the art today you can today ask these
models to generate code, but it is never 100% correct, except for the most trivial cases.
And so your verification is still needed, which requires a high level of training,
which requires a human eye. So that is the state today. I think the question is,
what should we be looking for to know that these systems have gotten so advanced that
actually the human verification is no longer necessary, and in fact, just slows us down,
slows the machine down, and introduces errors? It's kind of like the self-driving people say,
all we have to do is be slightly better than the average human driver and we've won you know and i
think that's probably where ai for software engineers also takes over so i'm looking for
indicators to see like all right is a non-developer non-trained not even self-taught software
developer creating software applications that are getting usage whether for themselves or for a
larger market of people that's that's like the tipping point for me is if that ever starts to
show like it's going to happen, then I think jobs are on the line. Software engineering jobs
are on the line. Because if people can produce software without software engineers, why wouldn't
they? But I haven't seen that. And so far I've seen it be, it's almost like, look,
I used to dig trenches with a shovel. Now I dig trenches with a tractor and I can dig a hundred
times more trench in a day. And so I'm actually more valuable, but I had to learn how to use a
you know so yeah it's like it's still the it's still i'm still the trench digger you know i still
dig trenches and regular people aren't out there digging trenches but if it ever if ever a day
shows up where someone can just wave their arm and a trench appears with no one else with no
training then now jobs are on the line right yeah i hope that wasn't too weird i was thinking about
that and no no that makes a lot of sense to me i was thinking about like screwdrivers versus drills
yeah it's the same type of thing of like yeah do more uh now i can yeah do more faster but i i
don't know i mean if you needed a hundred times as long to install these screws doesn't that kind
of indirectly mean you need fewer people to man the drills could be or staff the drills yeah it
could be and and that's okay i think in today's market that's okay because there's such there's
so much unmet demand for software production right now, because there aren't enough people
to produce it, that having all the people who do produce it be 10x or 100x more productive
might actually bring this market into balance a little bit and have some of that demand be met.
So personally, I'm optimistic. My short answer is no, I don't see any jobs on the line right now.
But I do look forward to a day where we are all way more productive,
because we're using AI assistance to generate our code faster and with fewer errors.
had an important insightful thing to say well i know i know one way to get that insight to come
oh yeah yeah yeah even the hint of the next question i did it brought it back out what
i have seen at least two examples of developers building systems on top of of these language
models that basically say generate this code execute the generated code and then say here's
the results like if there's an error fix the error oh so that's so cool that's and it's it seems to
work fairly well if it's something that you can kind of iteratively try out yeah so that's a cool
workflow that is so cool i love it and i think we should be embracing that as developers i think the
absolute wrong thing to do at this time is to go oh ai bad hurt jobs you know cost money no like
bring it on let's let's see if we can make ourselves more productive the lisp people were
right you just need to have like a repl based workflow and then you stick in ai where the
they were right about having a repl they were wrong about the syntax yeah well i have i have
one more thing just just just to reinforce my point that i think it's going to make us more
productive is that i actually took a big block of code this week and i pasted it into chat gpt and
i said explain this code for me and it produced a very succinct nice explanation of the code
where it called out the most important functions in the code so that I could go look at those and
then be like, aha, yes, it's right. And it kind of helped me focus. So instead of just reading
top to bottom line by line by line, it said, hey, this is a class interface. And these are
the three most important methods. And here's what they do. And I'm like, aha, I could go kind of
figure that out without having to be distracted by noise. It was like 700 lines of code or
something, right? So it would have taken me some time to read all of it. And you don't actually
read code line by line. It doesn't make sense if you do that, right? Because the call sites and
call order is, is different. And so you actually, it's nice to have a starting point. So there you
go, just one more example of how it's making me more productive, and saving me time to get a job
done. And I think we're going to see a lot more of that. And I'm leaning into it. Actually, I've,
I've, I demoed some of these tools to my teams over the last couple of weeks, and I'm going to
make it mandatory to use to have some of these tools installed in their IDEs. Because I'm like,
just having it there is enough, it's worth a few bucks a month to have every developer save,
even if it's just 10 minutes a month, I'm happy to pay 10 bucks for those 10 minutes.
What I would love is the ability to just hand a code base to it and then interrogate it for
things about the code base. Because I could see that working well with the existing systems if
it's a self-contained chunk. Or if you write your whole code base in one file, maybe that's an
argument. Imagine a world where you can point an AI at a giant legacy code base and say,
okay here's my code base the product manager has asked me to add a feature that looks like this
and then just paste a link to the to the um product spec that the product manager gave you
and say where should i go to start working on this and what what edge cases should i be aware
of what failure modes should i be aware of and just imagine it being able to go do that research
on a hundred thousand lines of code and then come back to you and say here are seven gotchas you
should be aware of like this is a productivity booster huge so i'm i'm super on board you know
i am totally plugged in and ready to go ready to embrace this future um and but i also don't think
it's going to cost jobs i think it's going to make us more awesome my my boss has been talking about
cybernetics a lot recently as a way to think about this where i i can't remember the exact
definition they used but i'll make one up good i hoped you would oh just you mean just like a chat
gpt yeah exactly uh it's it's tools to augment human capability so you wouldn't you wouldn't
say computer what should i do you would say like computer i want to accomplish this task help me do
it faster better more accurately help me do the thing yeah not not like figure out what to do for
me necessarily that's right although i guess that although why not have a fuzzy boundary computer
you here are the things i like what should i do today for to maximize my happiness yeah all right
now we must go to the next question i think you're up for this one yeah i'll read it this is from an
anonymous listener who says it's review season i am an ic software engineer ic stands for individual
contributor so not manager and i'm required to document my impact for the past year however i
work on an auxiliary team or a new business team that is always trying to find new use cases for
the existing product platform if you look at the numbers the impact is very low compared to the
core business also my team was disproportionately impacted by layoffs late last year lots of folks
with institutional knowledge and good relationships with the core team were let go,
which disrupted our team and contributed to missed deadlines.
How do I write my review for this bad year with little to show for it?
Well, I've got some good news for you.
There are these great AI-based systems that you may have heard of
that can create plausible reviews.
In fact, I saw a Twitter thread where someone said,
I've been asked to justify my existence at my company.
help i use chat gpt to fabricate examples of contributions i've made that are plausible
and just technical enough that no one will investigate whether they're real and it came
up with remarkably good descriptions of work for an engineer so if your ethics are a little
questionable that's one way you could go i used it to write my product manager a rhyming self-review
it was pretty good oh my goodness didn't have a lot of context about their specific contributions
but i don't know some self-reviews don't but it rhymed but it rhymed and that obviously was the
part your product manager will remember exactly it's up to them to choose to decide whether they
will use it or not but i provided them the opportunity okay i survived that's what you
put on your self-review or your review or whatever, right? I survived. I made it. Everyone
else was laid off. So I must be doing something right. I'm still here. Yeah. So they mentioned
numbers impact low compared to the core business. This feels a little bit like maybe there's a
business with a, maybe they're kind of Google shaped where they have a single extremely strong
source of revenue and are reveling in that but also kind of worried about potential disruption
in the future of if you have one source of revenue then that going away means you're toast so they're
kind of like hedging their bets a little bit i guess i don't know could be the impact is very
low compared to the core business i i have questions and no answers but so it sounds like
you have some idea of measured impact do you have an idea of expected impact because maybe that's
fine yeah like maybe the the measured revenue generated is pretty low but that's on track with
the targets that you're setting because the expectation is this will kind of ramp up slowly
over time that could be or maybe it's not maybe it's horrible you know that'd be that'd be good
to know not just how did it do absolutely good to know so you cannot mention it in your review
or mention it depending on how depending on what you find out i think in a world where
your impact is limited to the business by virtue of your position in the organization,
the way that I would focus my review is based on demonstrated proficiency and competency and
contributions within that limited potential so that I look more high potential to my employer
despite those limitations on my contributions. But I would not dwell on the limitations and
share a bunch of reasons. Well, here's why I didn't make a big impact this year. Well,
these org chart or reorgs happened and people got laid off who were really important. That is not at
all relevant to your performance within your sphere. And all you can be expected to do is
perform well within the lane that you've been placed in by your leaders. Now, I'm going to wax
philosophical here a little, but you've definitely been potentially the victim of
some circumstances. But I hope that this lesson, you've taken away a lesson from this, which is
that you have been in a low impact area and that has hurt you. And now that's coming clearly into
focus. If you see things like this happening in the future, it's very good idea to try to
navigate around them so that they don't become a limitation for you as hard as that can be so
get to a higher impact area or or see if there's work you can do that helps your area have higher
impact kind of is that what you think so and easier said than done right yeah yeah i'm sure
the business would be pumped if if uh your area didn't produce a lot of revenue and then you said
i'll change it and then you did yeah they'd be happy about that so you said don't mention it
i think it is worth i don't think you want to whine about it definitely not but i think it
is worth saying something to to help provide the context for what you've delivered because it's
possible that the folks reading your review haven't thought about it as much or it doesn't
affect them as much true so i would still put in like a little blurb about like despite challenges
of i don't know you don't want to sound bitter but but acknowledging like my whole team was let go
and you know like uh and i and i managed to do like this despite that yeah i so the way that i
would couch i would count yes that's what you just said at the very end is exactly what i think is a
valuable way to couch that which is not look at all these bad things that happened to me and i
survive, but rather, I chose to operate professionally and supportive of the organization
despite headwinds. And here's how I worked around each headwind. Here's how I demonstrated creativity
in the face of restricted resources available. And that's maybe the spin you're looking for.
Look how creative I am.
And the little sailboat. Yeah.
Sorry, say again.
Well, you said, look how creative I am. I said, draw a little picture of a sailboat with headwinds,
which I think also would demonstrate how creative you are.
Look at the sailboat. It's going forward.
Yeah.
how do they go forward when the wind is blowing backwards yeah it's incredible it's incredible
that's what reviews need more of is illustrations that's right yeah i i like that i mean part of the
part of the possibility or danger here is you worked really hard and delivered great results
on something that was canned and never shipped yeah and and i don't yeah i don't know how to
account for that because well that's the wrong way to put it you know i'm just doing the time
honor tradition of saying what you said but worse yeah you can you can still say look at all this
great work i did with the caveat of like circumstances meant that we never launched
the thing but like i delivered really well on it while we were working and maybe you don't even
mention that it never launched just talk about all your great contributions to make it successful
no seriously like yeah you all know about the famous project icarus right we don't it needs
no no mention of its impact needs to be made because we're all so familiar but look at my
contributions to it it would not have been as successful as it wasn't without my contributions
yeah i do think that's the right the right framing in this situation that's what i would do like i'm
i'm thinking about your manager's position where your manager's thinking yeah i understand that
a lot of team members got let go. You had limited access to resources, limited access to the core
team. So how did you perform? And I think you need to highlight, look, I'm professional. I support
this organization. I kept a positive attitude. I refuse to consider myself a victim. And you're
basically painting yourself as a team player who pushes through challenges, regardless of where
they come from, whether they were in your control or not. And then that will hopefully paint a nice
picture for the future so that you appear and hopefully you are a good contributing member of
this team. Because guess who, guess who doesn't get a performance review like that? And that's
the CEO of your company. Your CEO doesn't get the option to say, yeah, well, we had some headwinds.
So what am I going to do? You know, someone else's fault. Like your CEO has to fight through those
headwinds and come out the other side. So try to, I, when I do this kind of thing, I try to put
myself in the mindset of the people that are receiving the review. And in this case, the
mindset is i can't like i'm not going to reward excuses you know i like i would like to i feel
bad for you and i have empathy for you but at the end of the day your excuses aren't going to put
your teammates salaries in their bank accounts you know so i want people who are willing to
step up to the plate despite limited resources and challenges and show a really positive attitude
and then hopefully motivate the whole team to do well so that that's where i would go with this
that'll probably be a breath of fresh air to your manager frankly because i'm sure everyone else is
complaining and frustrated and and having someone who's like look i'm here to win and i'm here to
help us all be winning win together i think that would be really nice to hear maybe you're the only
one left maybe there's no one else to compare the reviews against true yeah i like it good advice
dave great job you see an ai could never give that much nuance and context and and yeah it could
though if you just said give more nuance in your answer and then okay now add some fake context
that sounds like good advice but isn't all right we've done it we've answered the question okay
all is well for now until next week when more questions will come yes like who's the person
that held up atlas atlas is the guy who holds the world up right yeah is that you in this picture
i think it's us together oh like one shoulder on each side yeah yeah like if we miss an episode
then except the world constantly falls off and we have to pick it up again and
and actually we're not we're not actually not holding it up it's holding us up is that yeah
that's okay all right let's get out of here what can people do if they want their own questions
answer to soft skills.audio and click the ask a question button where you can fill out our
handy dandy form thank you so much to everyone who does that we love reading your questions
every week and we solemnly swear we are not training an ai to replace question generation
but we reserve the right to do so in the future oh okay we solemnly swear that as of this moment
we have not yet done it and that's only because we don't know how to yet
all right thanks for listening we'll catch you next week
