Like others have mentioned this definitely sounds like the last of a long chain of emails.
And it really has the tone of just because you do it on your own time, with your own personal email as a “hobby” doesn’t mean you can use it as a loophole to get around restrictions IBM employees might have.
So, for example, if IBM isn’t allowed to contribute to a specific project for legal or contractual reasons, an employee doing so “in their own time” would not be a defensible argument.
It still has ramifications for personal contributions on their own time. We are our own persons, with our own desires and choices not to be dictated by our employers. I work for a corporation that says they own every piece of executable code that comes out of my fingertips and I think it is utter bullshit.
If I want to fix a bug in an esoteric Scheme implementation OR a bug in a JDK or PHP I have to ask for permission even though it is on my own time. I already volunteer more time than I am paid to my employer, but I have to ask for permission for something they have literally no interest in.
I agree that these things tend to overreach (the more powerful party in a negotiation will always try to get as much as they can), but most employment agreements will only claim ownership over things that you do in your own time that are related to your company's line of business. And in states like California and I believe Washington, companies cannot legally try to claim more than that. It's still more than I'd like, but I also can't get too worked up about it.
One way around that is to never put your real name on stuff outside of/owned by your employer. Keep your work and personal life as separated as possible.
Trying to do an end-run around legal issues by using pseudonyms is something you should only do after careful consideration of what might happen if that pseudonym becomes known.
It's not unreasonable to review and modify the proposed contract that an employer offers.
As skilled employees who's services are in demand, you've got a good chance of them coming to the table on that.
Working in backbone operations for a mid sized ISP, we sure don't have 1:30 meetings, but we do have scheduled 1:30 maintenance events (planned several weeks in advance), and people on the on-call list are expected to be available for middle of the night emergencies. Catastrophic fiber cuts and equipment failures like a roof failing and pouring water onto a DWDM chassis have the tendency to occur at fun times like 0330 in the morning on a holiday.
It is expected and known that if you do something like respond to a 0130 in the morning emergency and work the issue until 0430, then go to sleep, that you're going to sleep until whenever you wake up in the mid afternoon and probably not be useful for any other tasks that day.
I should point out that the salaried employees expected to respond to such things are compensated appropriately, and the general practice is to have a group of people so that each person is only on-call for some portion of each month.
The rank and file NOC employees and fiber splicers, field crews, field technicians are hourly employees and get overtime for incidents as described above. Depending on the state and labor laws they're also paid an hourly rate simply for being on-call, even if nothing happens, for the duration of their on-call rotation week(s).
Everything you said sounds reasonable. Tasks and hours are related to the specific work at hand, and mitigations are then given, as temporary allowances, to employees if extra work is demanded that are outside of "core hours"
I was just trying to highlight that I personally hate "core hours" and that if I'm on a marathon coding session from 9pm to 4am, and I'm intermittently unavailable from some arbitrary time (say 11:15am to 11:50am) and then I get a bunch of messages from bosses saying "where were you??" and I then explain that I was actually writing code, point to some commits and say "see? I did all this stuff" and they say "you are expected to work from 9am to 6pm" it feels like a slap in the face. I think good management should accept that people aren't robots (unless there is an outage, fair enough) and consider people's working preferences in their decisions.
Anyways, I'm sure you have some awesome war stories with deployments/maintenance events. You should share them sometime :D
There are definitely good reasons to, at minimum, have you _available_ from 9-6; say, for a meeting or to bring a coworker up to speed on what you're working on, but at the same time you don't necessarily need to be pinned to your desktop for the entire period of time to do that. Since remote working started I've taken advantage of that big time by just running errands during the work day but keeping my phone close by in case I get a ping on Slack.
I have a feeling you would be shocked at the percentage of people in wealthy country's who would wake up at 1:30am every day for a meeting for 130k. Fucked up is very strong language.
I'd prefer a 1:30am meeting compared to a 9:30am meeting lol, I was just trying to appeal to what is most preferred, i.e. normal 9am to 6pm "working hours"
I was gearing my response in terms of what seems reasonable to expect... but yeah I'm sure everyone would try to stretch themselves to absorb more capital.
No, they pay you a salary based on agreed working hours, usually a 40 hour working week. If that wasn't the case, they'd be firing you for going home at the end of the day.
"No, they pay you a salary based on agreed working hours, usually a 40 hour working week. If that wasn't the case, they'd be firing you for going home at the end of the day."
Hmm, do they? It's not in my contract, and (unfortunately) the labour law in Ontario for my profession doesn't support it either. We are expected to be "deliverable based" I think, rather than effort/work based. IANAL etc, but my observation is that Hourly employees are compensated for their hours; but it's less straightforward for salaried workers.
I'm in IT, and IIRC IT is one of the professions where salaried FTEs are not entitled to overtime in Ontario, but all of the salaried FTE contracts I've ever signed since the mid 90s had a specified number (usually 40) of working hours.
This isn't true in my experience (USA). No salaried job I've worked at has contractually stated working hours. All mainstream tech jobs. People go home at reasonable times due to social norms, not because it's in a contract.
No, they pay you to go home at the end of the day. That's part of your contract.
If you instead go to another job at the end of your eight hours, they'll fire you.
If you even go to your secret other home you haven't told them about in another state (or worse, another country), and that creates tax withholding obligations in that state, they may not fire you, but they will be very displeased.
> No, they pay you to go home at the end of the day. That's part of your contract.
Does your contract actually say this explicitly? Mine doesn't and I'm not sure it'd even be enforceable if it did.
> If you instead go to another job at the end of your eight hours, they'll fire you.
You are aware that there is a fairly large number of people who work multiple jobs, right? And that they usually don't ask permission to do so?
Now, it is true that this isn't common in software development jobs, but employment contracts for software development jobs aren't magic -- they're pretty much the same as any other employment contract.
(It's also probably not legal to fire someone for working a second job, at least here in Australia.)
I am also floored that someone actually thinks that their job is something they're paid to do 24/7.
I am prohibited by my employment contract from working a second job without approval.
It doesn't say, of course, that I'm supposed to go home. I can go to the bar, the library, the bowling alley, whatever. But it does say that I can't hold a second paid job (and it does demand that I truthfully tell them where I live). I am very much being paid not to work a second job.
Maybe you aren't! But I am, this is fairly normal for salaried positions in America, it's almost certainly enforceable, and it's something I willingly signed and accepted when I took this job.
I am aware there are a large number of people working non-salaried jobs who work multiple jobs. This thread is specifically about salaried jobs.
More relevantly to the thread, my contract also says that any work I do which is related to my employer's actual business is owned by my employer, whether or not I do it on work time or at work. I paid actual lawyers to review that portion of the contract before I signed it, and they told me it is absolutely enforceable. In this case, the question is whether an IBM employee can hack on an IBM-authored, IBM-maintained driver for IBM computers, contributing to which used to be part of their job on the side. It would be absolutely defensible for IBM to say they own this work regardless of when it happens, and it would be frankly surprising if the employment contract did not say that.
I think it's the inherent weirdness of what USA considers "salaried" job - it seems to me that you essentially don't have set hours, your pay isn't related to the hours you put in, and any overtime gets waived in programming by the overtime exempt rule.
If this sounds to you like shit sandwich, that's because it is one, even if some people manage to make it work with less hours than norm.
> Does your contract actually say this explicitly? Mine doesn't and I'm not sure it'd even be enforceable if it did.
moonlighting clauses are fairly standard and I'd be surprised if your contract doesn't include one.
> You are aware that there is a fairly large number of people who work multiple jobs, right? And that they usually don't ask permission to do so?
Yes, people violate their employment contracts.
> (It's also probably not legal to fire someone for working a second job, at least here in Australia.)
The enforceability of moonlight contracts may vary. For example working at a software company and moonlighting as a barista is less likely to be enforceable than working at a software company and moonlighting at another (or moonlighting as a freelance developer), at least in the US, the second is probably a violation.
Not that this matters in the US since you're usually at will anyway.
I get your point, but it seems pedantic. They still pay you for 40 hours a week. You are typically able to start a profitable side project in your own time.
On call should be optional and paid accordingly. It should not be a part of the job, because not everyone is fit to do it (physically, mentally, family-wise, or otherwise).
Incentivize people to take on-call time and those who are fit will take it.
I don’t think this is right: people who can’t do it shouldn’t be expected to, but software developers should support their application in production so that, if it’s hard to manage, they have an incentive to fix that problems: throwing code over the wall for an operations team to deal with is a clear case of externalizing negatives.
To some extent a good faith effort is in order, but someone who is perfectly capable of doing 99% of the job shouldn't be expected to respond to things at 3am unless they willingly do so for extra pay.
I for one am perfectly capable of advanced software engineering work but I am NOT capable of compromising my sleep without causing serious heart arrythmias. Some other person might have to deal with a baby. Some other person might sleep early and do meditation at that hour because it helps prevent panic attacks during the day. Everyone is different, and personal time and rest time should be respected. There is so much behind the curtain of off-work time that employers don't see, and don't need to see, they just need to respect that time.
In my experience this isn't a very good take, I've been woke up 50+ times in a 7 night span of on call, that fucking incentivized me to fix the issues. But that doesn't FUCK ALL to the product/sales people that actually direct where resources are spent. If the on call people ACTUALLY get to work on the on call issues, I think on call can work.
But in my experience, every single place I've worked, has had insane on call hours. And you were ALWAYS expected to do your normal work on top of the on call hours and you were NEVER given time to fix the issue that woke you up in the middle of the night.
Until the actually engineers/developers are in charge of their own schedules on call shifts will be fucking bullshit.
I think for some jobs it makes sense to have on-call as part of the job description, but it's heavily overused. If there isn't imminent danger I don't think it should be ever required to force someone to compromise rest.
If it's just a question of product uptime then you should have enough people and pay people extra to be on-call. And don't deploy things at 5pm on a Friday.
> Otherwise you’d be making under minimum wage if you were salaried and making less than $90k.
No, because if you have a $90k salary and job duties that qualify for wage and hour exemption under FLSA and any applicable state labor law at that salary, then, there is no minimum hourly wage.
That’s what it means to be exempt from wage and hour rules.
For FLSA, “computer related” work is exempt at a salary of just over $35k.
Compared to a lot of countries, American tech people do make that amount of money. A factor of three (24/8) is not unheard of for the same role when you compare American and European salaries.
I suspect this is driven less by an overpossessive engineering management team than a legal team. I'd love to know more about what general counsel is afraid of since I know a lot of people under the same restriction and it meshes with the story Spoolsky tells[1] on side projects:
> Because they might try to take an investment, and the investor would say, “prove to me that you’re not going to get sued by some disgruntled ex-employee who claims to have invented the things that you’re selling.” The company wants to be able to pull out a list of all current and past employees, and show a contract from every single one of them assigning inventions to the company.
Non competes are illegal in California. But while you are employed by a company I believe that most contracts require that even outside of work the company owns your IP unless otherwise stated - that's why there's a bit in your contract where you can specify prior inventions and whatnot, I believe.
Every company I've worked for has had it this way.
> most contracts require that even outside of work the company owns your IP unless otherwise stated
Assuming the outside work was performed on the employee's own time/equipment and doesn't compete with the employer's business, such contracts would be unenforceable in California. See section 2870 of the California Labor Code: https://leginfo.legislature.ca.gov/faces/codes_displaySectio...
> Assuming the outside work was performed on the employee's own time/equipment and doesn't compete with the employer's business
The rule actually encompasses more than simple competition, but in any case work on OS components for an alternative (and therefore competing) OS for the employer’s hardware for which they also sell proprietary OS software does compete with the employer’s business, so... (The particular thing the employee was denied permission to work on seems to be VNIC for IBM Power)
> Any provision in an employment agreement which provides that an employee shall assign, or offer to assign, any of his or her rights in an invention to his or her employer shall not apply to an invention that the employee developed entirely on his or her own time without using the employer’s equipment, supplies, facilities, or trade secret information except for those inventions that either:
> (1) Relate at the time of conception or reduction to practice of the invention to the employer’s business, or actual or demonstrably anticipated research or development of the employer or ...
I am not a lawyer, but I think it would not be unreasonable to believe that work on the kernel would be related to IBM's business (like RedHat).
Its not just that it doesn't compete with the employer's business but if it is related to the employer's business.
Furthermore, while the own time/equipment is there, there is also trade secret information mentioned beyond the time and equipment constraint.
Here it's not just work on the kernel, but work on the kernel on a driver for IBM hardware that two other IBM employees maintain, and that the employee in question was -also- previously a contributor to during work hours.
Yep, that "employer's business" part is relevant here. The person in question is writing a kernel driver for an IBM hardware while being an IBM employee. IANAL but I'm pretty sure that means "Employer fully owns employee's work" even in California.
Oh yeah, true true. You'll want to avoid using any company time, equipment (including the network), code, etc. and that should cover you, i think, but only so long as your work doesn't "compete" with your employers iirc.
I believe California employment law is pretty pro-employee. Mostly if you develop something in your spare time, without using company resources in any way, it is yours.
I think that's why there are lots of startups in california.
In other states, employers in some cases can own everything, up to and including ideas in your head.
I don't know an example state that is the other side of the coin, pro-employer, but maybe texas? (uneducated guess)
This provision is useless if you work for a large company, because it carves out an exception for anything that could be related to your employer’s business.
In practice it means at most they should've called him on the phone and not leave an email trail. You do what your boss wants, or you're out of a job. Outside California and inside California.
I happen to be an IBM employee. I don't WORK 24x7 (well, not most weeks... ;), but "an IBM employee" is a state flag permanently assigned to me until explicitly changed:). I don't even feel it's debatable from a strictly semantic point of view. (I am many other things as well, FWIW:)
Hopefully starting from point of agreement, if at 9pm I log on to hacker news and start singing praises to IBM or complaining about its work or musing on its share price or revealing insider information, it would be a relevant disclosable piece of information that "I'm an IBM employee", no?
This is an IBM-maintained driver for an IBM-owned architecture.
You are subject to IBM trade secret law 100% of the time. Just because you only get paid for 8 hours of work a day doesn't mean you can use your 9th hour to tell people all about trade secrets. You are, in fact, paid to adhere to the terms of your employment contract 24/7.
Hopefully he gets to be an IBM employee 0% of the time and work somewhere else where his contributions to OSS would be appreciated. And IBM can continue to kick themselves at losing a contributor and wonder why they're just a consulting firm now.
To not act contrary to the interests of your employer (unless, I suppose you are whistle-blowing on some illegal activity...) is a universally expected norm, no?
That sounds a lot more like “you are not allowed to use your personal email address for the same things you work on and call it a hobby”. Not a great conversation but it sounds like what happens when someone tries to rules-lawyer a large corporation which has tons of real lawyers and experience with, for example, patent and other IP lawsuits.
What a joke - hope the salary makes this indentured servitude worth it.