Soft Skills Engineering - Episode 89: Departed Engineers and Employment Contracts
Episode Date: December 28, 2017This week Jamison and Dave answer these questions: How do I deal with co-workers who constantly cite the decisions of engineers who don’t work here anymore? My employment makes it sound like t...he company owns my past work and side-projects. Is this true? Is this normal?
Transcript
Discussion (0)
It takes more than changing your middle name to blockchain to be a great software engineer.
This is episode 89 of the Soft Skills Engineering Podcast.
I'm your host, Jameson, blockchain dance.
Sorry.
Oh, a little notification just popped up.
I just got a million dollars from changing my name to blockchain.
It's that easy.
Oh my gosh.
Jameson Coin is going to do its ICO next week.
Yeah.
Okay, I'm your host, Dave Smith.
Soft Skills Engineering is a podcast where we answer all of your non-technical questions
about the technical field of software development, but also we sometimes do announcements.
Many people have written in to ask us how they can support us financially, and we've
never really had an answer for this because, you know, we just have been relying on Jameson's
blockchain revenue.
So it turns out we actually would appreciate a little bit of financial support so we can
pay someone to edit these episodes each week instead of having us actually just jameson do
all the work yeah if if you want to support this show we have a patreon now you can go to patreon.com
slash soft skills eng it's the same as our twitter handle well let me let me ask you this jameson why
would someone want to support this show someone would want to support this show because they want
it to continue to exist um we really enjoy doing it it's not a threat we really enjoy doing it
and a way to to make sure it keeps happening is to give money we'll use that money for uh equipment
for editing for i mean we might do some design or logo stuff there's definitely a use for it
yes we don't really make money to enrich ourselves personally off of this but we do spend a lot of
time and some of our own money to to run it that's right and donations from listeners would really
help improve the quality of things that's right thanks so if you'd consider doing that some of
you already have done it before we've even released this announcement which is great so thank you
um but uh yeah go ahead and head on over to patreon.com soft skills eng you can also find
it on our website softskills.audio and contribute what you can even one dollar a month makes a
difference i will read the first question then this is from a listener named eric recently i've
noticed my co-workers defending technical decisions by appealing to authority of engineers who have
since left the company the discussions frequently end with something like i can't remember why
sainted engineer decided this was how we should do it but i remember being convinced at the time
we should stick with this i'm concerned we're allowing ourselves to be trapped in design
decisions that once made sense but no longer do with changing requirements problem is i don't
know how to pitch changes against a mythical figurehead who isn't there to explain their
reasoning have you ever encountered this and how would you recommend tackling it huh
uh so the the name they gave this person was sainted engineer and it does kind of sound like
a religion because someone did a bunch of stuff and now they're gone and someone else interprets
it to mean whatever they want yeah perfect yeah so i think that the path is clear you need to
have a schism and receive your own communication from sainted engineer and then bring that back
to to your team and say i talked to them and this is what they said maybe get out of ouija board
yeah um huh i mean you could it doesn't even have to be you could appeal to an even higher authority
than sainted engineer you could go back to dykstra just keep going back to longer dead
programmers and computer scientists dykstra and alan perlis and haskell curry and alan
turing and whatever the church dude's name was just like i talked to alan turing and he said
uh we should use kubernetes so um he presented some interesting proofs he worked on in his
lifetime and i was convinced the charles babbage computation engine was actually kubernetes
yeah that is true if they're not around to defend themselves why can't you just make up memories
You're like, well, I remember hearing him say the opposite, and I was also convinced.
So it looks like we're going to have to hash this out on its own merits.
Yeah, or make up how dumb they were, right?
I mean, they can't defend themselves, so talk about the time they broke everything, yeah.
Wait, you mean the same sainted engineer who cooked down Prague?
You mean cursed engineer?
Not sainted engineer?
It's just as easy to turn a saint into Voldemort than it is to turn them into
what's another harry potter person that's super positive uh isn't sirius black a good guy i don't
know i don't know who that is i think he was oh no who who is the headmaster oh dumbledore there
you go yeah okay here's what i think you should do i think you should have a little funeral
where you celebrate the life of these people whose decisions are still haunting you and
Celebrate their life and then metaphorically bury them and tell the team look they aren't here anymore
We need to make our own decisions because we're we're all grown-ups now
Have you seen that taylor swift song look what you made me do
No, oh, well, never mind. No. No, tell me about it. Come on. There's the part where it's this really weird
breakdown in the middle it's all about her reputation and there's a part where she gets
a phone call and says oh i'm sorry taylor can't come to the phone right now why because she's
dead and then this like beat drops and and they dance very epically and perfect uh i think that's
what you should do perfect a sainted engineer this is so i have i been in a situation like this
i don't think i've been in one where it's been as strong there have been times where
where uh there were productive early developers who aren't there anymore who built lots of
lots of stuff that we use but i never felt like it was oppressive in any way it wasn't like
this developer wouldn't appreciate it if you did that it was just like they did a lot of stuff and
their fingerprints are everywhere all over the code base but it's ours now maybe you were the
engineer yeah maybe maybe i have been at every place i left i don't know jameson said we should
use kubernetes uh it'll really manage the one node we need to serve our zero traffic
very efficiently
how would you tackle it one one thing you touch on is design decisions that once made sense but
no longer do with changing requirements and i think one of the hardest parts about building
systems is uh being resilient in the face of change and i don't know if i've ever seen stuff
that scales forever based on changing requirements not not in a production load way but in a in a
code change way so new requirements come in and the system supports them easily forever
right even if the people that built it originally still work there like
it's gonna have to change so yeah for sure i think you know the new requirements much better
than sainted engineer yeah and you theoretically you could know the stuff sainted engineer did
better than they do because they're not there anymore and it's been a while and they probably
forgot it all so i i don't think anyone else has the knowledge that that you have to fix it
yeah i think that's i think that's great and as i've seen these conversations go down
usually if i'm the one who's you know in this caller this listener's position i'll say now
wait a minute so you want to do this architectural decision you don't know why you just remember
someone else saying it was a good idea and yeah usually i think that makes people feel pretty
sheepish and and seriously if you can't be troubled to explain why a good idea is good
then that idea really has no place at the table until until a little bit more rigor has been done
yeah yeah that's a good point you authority is a great source to look to for ideas and it's not a
great source to look to for decisions so if someone really smart says like oh no sql is
interesting that doesn't mean you should use no sql for everything it might mean you should
look into it yeah but you can't just say we're going to use no sql for our database because
really smart person said no sql is good many bad technology choices have been made yeah based on
this kind of approach yeah yeah it's not it's it's anecdotes not evidence and anecdotes can
And I mean, in science, you always hear about anecdotes aren't data, but you can use them
to give direction to research.
And I think it's the same in software.
Anecdotes aren't just, they don't make decisions for you, but they can give you some directions
to look at.
Yeah.
They're like the seed for ideas.
Yeah.
And then you still have to.
Yeah.
You have to water it.
Make that seed blossom, nurture it.
Say kind words to it.
Talk to it.
If you're a millennial, it's a succulent because that's a thing.
I actually have a succulent on my desk right now.
That's because you're a millennial.
I am.
P implies Q and Q implies P.
So what would you do tactically in this situation?
You're in a design discussion.
You have some ideas.
Someone else says, well, sainted engineer did it this way.
I would say the following.
I respect that engineer and they had a lot of good ideas and contributions to our team.
And I respect the legacy that we're building on here.
but i think that as we make decisions we should make those decisions based on
our understandings and i think this should be our
the way we go forward and if we can't remember why we're doing something
then we should re-evaluate it ourselves that's how i would say it and then
you break out into a sick dance move and streamers drop from the rafters
in a frozen pose with one finger into the air yeah oh yeah why because saint engineer is dead
i'm gonna have to link you to that video totally uh millennials will get it they love taylor swift
because we are people of taste
i feel like making fun of millennials is such a dumb trope but i can do it because i am a
millennials so oh man you're so you can't though i'll be offended if you say anything about this
i don't know dykes hated millennials
i was talking to him and he told me that millennials are all wrong and dumb
so uh i guess my point is made
yeah this is this is weird i wonder i mean i wonder why this is happening is the team
like really junior or is the code base not well understood or like something something is causing
this to happen yeah or is this sainted engineer like a thousand x developer or because everywhere
that i've worked i feel like everyone has a little more hubris and they all think they're right and
like everyone that disagrees they're all i don't know how do i put it people are quick to believe
their own ideas are good i guess and it's weird to say like my ideas are all bad this person's
ideas are always right maybe it's about preserving the status quo so it's like yeah they built it
using this crappy technology none of us like it but i don't want to change it and they they said
there was good reasons for it so let's leave it alone yeah maybe it's a really specialized
technology or problem space like maybe it's in a in a i don't know it's like all fox pro nobody
knows fox pro or it's yeah it's like high frequency trading stuff yeah yeah somehow
they're a high frequency trading company without experts in high frequency trading anymore because
they left they all left and went to another high frequency trading firm yeah they probably get
poached all the time yeah probably i would say that what's missing here that would help close
this loop is rationale documentation and i think this is really important is that you when you make
an important decision like choosing a technology or a big design you should explain why and that
should be written in a way that people can find it later and say oh these were the reasons and
by the way here's three other alternatives that were considered and here's why they were rejected
so it's like not only do you document why you chose what you chose but also document
why you avoided what you avoided yeah that sounds great have you seen that oh yeah my current
company does it a lot okay a lot because the culture here is that we write in order to
communicate with other engineers so in order to make a technology decision or an architecture
design decision you will write down all your thoughts on it and pros and cons and alternatives
and that will be forever logged in the wiki now it may not be the easiest thing to find
later when yeah i was gonna say how do you make sure people actually use that well it's just part
of the i mean it's baked into the decision making process so yeah it's absolutely baked into the
culture but um searching like i said searching for it is hard in the future you know two years
down the road if you want to figure out why a decision was made that might be hard to find but
okay but there's kind of an expectation when you're making decisions you'll you'll kind of
look around at this documentation yeah i think so um i don't think i've encountered that where
it's like i want to for example like i want to depart from a current architecture or or ditch
a technology um i don't know that i've had that experience yet to be able to comment on how
effective it is to look in the docs and see if you know the rationale for that technology no
longer apply sure that's yeah that's interesting documenting those decisions i feel like a lot of
them that i've seen get made in an ad hoc way and then the reason is just lost in the mists of time
oh for sure that's super common i think especially when you're in a real high pace high fast pace
mode like in a startup you're trying to survive and it's like yeah i'm not really going to take
two days and document this decision i'm just going to build it yeah well i think you've given
some good advice i think i talked about taylor swift a lot so i think we're done i was just i
was just about to say that i think that the lesson that you can take away here is that when you leave
this company make sure you leave a cleaner legacy that people can understand without having to
resort to well bob you know thought it should be this way and i remember being convinced so
it must be a good idea yeah yeah try to come up with ways to explain um your reasoning so that
that if if nothing else make sure that it gets into the tribal knowledge you know yeah yeah
that's a good point and that means you'll have to repeat yourself a lot you know like we chose
angular because x y and z yes we considered knockout but we chose this you know if you can't
be troubled to write it all down in a way that people can find at least make sure people know
if you ever feel like your ego is too big and you want to come back down to earth try and ask people
what they think you think about something and you realize no one knows they might remember you said
the word angular a lot but they'll be like i don't know they just they just repeated angular over and
over that is such a good idea what do you think i think about kubernetes that is so good i love i
love that i love that question i'm going to start asking people that question oh cool just walk
around on the street excuse me madame i think the question has been answered then yeah good luck
yeah do you want to read the next question dave yeah sure this one comes from an anonymous
listener who says i recently received an offer from a small company of 10 to 15 people after i
accepted they sent me their employment contract this contract included a bunch of legal stuff
about who owns what but it seems overly broad they talk about prior work capital p capital w
and quote new work capital n capital w and how basically they own everything about both i've
signed some similar documents for other companies but at those i had equity and options at this job
it's just a salary and this contract seems broader my programmer's interpretation of this document is
that this means i can't work on side projects and that prior work means that they also own all my
stuff since before i've been employed not knowing all these terms when accepting their offer has
kind of left a bad taste in my mouth am i crazy for being turned off by all this how can i bring
this up with them without getting off on the wrong foot with this new employer so important preamble
to this uh as required by the law dave and i have to admit that we are both double lawyers not just
regular lawyers but double lawyers and that that gives us the special power that anything we say
becomes law that's right um so our advice is legally binding that's right and in all nations
all that yeah we're actually galactic attorneys we're space lawyers
uh yeah this is a good question and and props to you for reading that employment contract because
i know a lot of people just kind of blaze through them and are like i don't know someone has signed
it before and they're not dead so it's probably fine as far as you know yeah their internal organs
haven't been harvested by the company for breaking an obscure clause that they didn't read well look
just as a lesson learned one time i signed an employment contract without reading it carefully
and there was this one thing about it said something about conceived ideas and the company
actually took my firstborn child that was born that was born while i was employed oh no
it was really bad though you know why why because i lost the tax credit
sorry terrible joke that's a hey i'm a galactic lawyer what can i say
yeah my jokes are funny i decree
one interesting thing they're kind of like terms and conditions where companies have incentives to
make them overly broad because uh what's in your contract is different from what's legally
enforceable and they they might put like we own your firstborn child and you sign it that doesn't
mean that's true in the law so so i think sometimes they're they're really broad to just
protect the company but then that stuff might not even apply to you as a galactic lawyer i state all
this so i have i've worked at several small companies and two of the companies had clauses
in their employment contracts that said uh a we we own all the work you do while at the company
and b um you give us a license to any prior work that you do or that you've done prior inventions
or something like that i haven't seen that you can list prior inventions that you want explicitly to
be exempt from that agreement or something and i actually just like crossed off with the red pen
the thing that said own all of the work you do while at the company and i was like i wanted to
only be stuff related to work for the company and i gave it to the the who was it i think it was the
ceo at one of them because there wasn't an hr person the second i gave it to the hr person
they're both like okay we'll just change it uh and again this was a small company like
think that that stuff you might be able to just say i don't like this part and they'll take it
out yeah because i know you have some really amazing php scripts that you don't want the
company to get their grubby hands yeah my javascript snippets no all those all of my savings
i mean i mean everything's fair game code pen gist yeah everything all my tweets
how will my children go to college now
uh but the point is that small companies that stuff can often be you read it and because it's
a contract and it's got legal terms and it's all in bold and there are weird capitalizations
everywhere it just seems intimidating and scary but especially at small companies where you know
everybody you can just be like this is weird i don't like this part and they might be like okay
yep i've done that too the the my my current employer is not a small company and i'm pretty
sure if i said i don't like this they'd be like well it sounds like you don't like the job then
i know it'd probably be very nice about it yeah yeah yeah but but i think it's less negotiable
when you have tens or hundreds of thousands of employees they're like billions billions of
employees they're like listen we've literally had 450 000 people sign this without an issue
no we're not going to change it for you yeah or or when the numbers get that high they might have
cases where like because they signed this it prevented this horrible thing from happening
to us so uh exactly it's like when your scale gets large enough technically you you just see
weird stuff a once in a billion thing happens all the time right it's probably like that yeah
but small companies you could just like cross it off and say i don't like this part can we change
it yeah i would definitely do that in fact my previous company had a clause or two in the
employment contract that sounded like that. And it made me feel a little bit uneasy. And so I just
went to the CTO who was interviewing me and I said, look, I, I interpret this to mean that
your company wants to own everything that I do on the side and everything. I don't think it said
anything about prior work, but anyway, I wasn't comfortable with that. I said, look, I'd be happy
to have the company own things that I do on company time and with company equipment, but
things that I do on my own time, I want to own. And it's okay to have like a non-compete clause.
Like I can't compete with my own company or start up a competitor, you know?
Yeah.
So that's fine too.
And he was like, oh, well, that's actually how I understood the contract to be.
So let me take a look at it.
So he took a look at it and he said, yeah, our lawyers say that's what it is, but I'm
going to reword it anyway, just to make sure that it's super clear for you.
So he was super amenable to it.
He reworded it and I signed the revised one and it was great.
Yeah.
And then guess what?
What?
I never produced anything the company ever cared about anyway.
There are two interesting points there.
One is you said that your boss had a different idea of what the contract was than what it
actually said.
And I think a lot of that comes from these being kind of boilerplate-y.
And usually you pay a lawyer and they're not going to write one from scratch, though.
They kind of have some standard stuff if they've done tech company contracts.
Yeah, they go to LegalZoom.com and they pay $14.95.
And then they charge you $4,000 while they sit and read a book for several days.
yeah but but they're kind of standard things that if you just say hey i need an employment contract
you'll get one that is very broad like this yeah and unless you as as the person talking to the
unless you say and it shouldn't have this stuff in you might just have this stuff sometimes these
contracts are needed for for investors to feel comfortable funding the company yes at itv we got
some funding from direct tv and we had to like clean up a bunch of stuff we had to get all our
stuff in order so we had to do some code audit stuff and we also had to i don't think we even
had employment contracts before that oh wow so they made they handed these contracts to everybody
and made them sign them and yeah that makes that makes a lot of sense i mean like if you get a home
loan your mortgage company wants you to have insurance on your house right yeah yeah the
investor wants to make sure that there's not some time bomb lurking that'll blow up the company
because some employee thinks they own a piece of technology that the company depends on.
And they're like, look, we already know there's an 85% chance your company is going to fail.
We just don't want that to be 87%.
Yeah, yeah, exactly.
I mean, you can also just have a lawyer read it over too.
And they would be able to, I mean, listen, we're space lawyers, but we're also very busy.
So we don't have time to read the whole thing and tell you all the legal ramifications.
But they would be able to tell you more about what is legally enforceable or not, I'm sure.
and they'd also be able to write you a a nice alternative if you're worried about just crossing
it out seems so i actually had a co-worker who did that um we were at a company we had all been
there a few years yeah he and i and a few others and um a new employment contract came out and hr
said we all had to sign it actually it was weird that the contract came out and they said we
strongly encourage you to sign this but we're not legally allowed to make you
and there was some law that basically said once you enter an employment agreement you
i guess you can't alter the contract i don't know maybe they would have had to go through
some more legal hoops anyway because there was this option my co-worker went and hired a lawyer
to read through it and after he consulted with the lawyer and got a full feel for all the you
know of course the lawyer is going to tell you all the worst case stuff yeah he comes back and
he's like i'm not signing this thing like oh meanwhile i had already like signed it and turned
it in in the first five minutes yeah and i was like oh wow and of course he this guy was kind
of a doomsday or he was kind of a i think you'd call him a prepper today okay you know yeah but
anyway yeah i'm gonna assume he had to do with operations then you you know what i could see
why you would come to that conclusion but no he was a straight up software engineer with no interest
in ops at all maybe he's pivoted doom comes all the time in operations
huh so what ended up happening he just didn't sign it and it was fine i think he didn't sign
it and i think it was fine and i he left the company like a couple years later yeah and then
he then he left the country as well so because of the contract he was like there's actually a
on his life this is a really broad contract we can kill you if we just decide to for any reason
or no reason yeah so so that would be i probably wouldn't do that it'd probably be a few hundred
bucks and also just take some time to find somebody and organize it all that's valuable
time that you could be spent playing dota yeah i i haven't played very much lately i've been good
good for you my life is better that's great yep yeah you can do that but i feel like with this
small of a company you can just talk to people and say hey i'm not comfortable with this for sure
if they already made you the offer they want you to work there and this doesn't feel like a deal
breaker if you're yes making reasonable changes to it where the company still feels protected
yes and and that's the question here that says how can i bring this up without uh getting off
on the wrong foot with this new employer. And I think a lot of people tiptoe way too much during
the negotiation process. You forget how much this employer wants you. If they made you an offer,
they probably have interviewed 10 other people. They probably did a lot of work to prepare this
and try to make it just right for you, especially a small company of 10 to 15 people that they
really want you. There's not 20 people waiting in line behind you to take this job in today's
job market so they could have had people that said no to their offer already yes and then that
there's a weird effect on your psychology yeah they they want you so um this to me is no big
deal at all but if if you're looking for techniques you can use in the communication about this in the
conversations i would say something like hey i'm really excited to work with you i want to make it
i want to do a good job yada yada yada and then say there i do have some concerns about the
employment contract and we discuss them you know so be sure you say i want to work for you first
so that they don't think oh he's throwing this in our face because he doesn't want to work here
yeah yeah that's a good point you also um earlier you said that nothing ever came up with your
contract that you looked at with with your last company and i think the default case for these
employment contracts is nothing will happen they're they're they're definitely for worst
case scenarios so even if they just put their foot down and say no this is standard we have to
have it this way we don't have the legal time to change it or our investors i don't know our
manager won't let us change it like their used car dealer you're negotiating on the price um
that i think in general the risk of this coming back to bite you is pretty small
of course when it does it's a really bad story right right like you could start facebook in
your basement and then suddenly this company owns facebook yeah but good news you're probably
not gonna start facebook no offense yeah so so that's another thing to go into the risk equation
is like honestly probably i'm not gonna make the next facebook while i work at this company
and if i do like as long as we're on good terms they might not even care so um yeah you want to
protect against the worst case but if you are if you feel like you just won't be productive
outside of work while you work there then maybe it's fine sounds good do you think we answered
the question let me consult my space space lawyer which is who space lawyers turn to when they need
legal advice uh their tentacles waved in the affirmative manner so well good yes from one
space lawyer to another i would say we laid down some pretty sick galactic law today yeah space
case law has been clarified i think case closed yeah all right where can people go if they would
like to have their own questions answered well if you're interested in some legally binding galactic
law counsel you can go to soft skills.audio and click on ask a question you can also follow us
on twitter at soft skills eng give us a follow there thousands of you have done this and we're
super excited to have you all we post new show announcements there and links to our page where
you can go and comment and join offline discussions i guess they're actually online discussions
we also have an offline forum what a blunder where you can mail letters to each other
it's like a chain it's like a chain letter where you just append your comment and then
mail it to the next person uh okay i actually want to do that yeah me too okay let's well we'll
take that under consideration okay got it anyway hit us up soft skills.audio ask your questions
thank you to all the people who have asked questions we have so many coming in we can't
get to all of them um thank you please keep your questions brief and we promise to get to them
eventually yep thank you so much we'll catch you next week
