Even if you're reporting hours accurately and either of the companies finds out about it, then you'll probably be asked to leave regardless. This is true also if you're salaried.
If it's a government subcontract, you could end up going to jail for this.
Realistically the way to do this without problems would be to start your own consulting firm, and bid on work. Then you can work on two projects at once (as long as it's not hourly, something like a firm fixed price contract). You're basically on the hook for delivering it. The customer is not paying for your time, just the product you're delivering.
Edited to add:
In the salaried world you have a conflict of interest. You may choose a worse technique or technology for company A if it means you won't be able to give company B enough time. Or you might put in shittier code than needed to be created because you had to save time for company B.
Company A would say those extra hours could have been put to use for more testing, more robust coding, more robust unit testing.
Worse would be if you stole code that solved a problem for Company A and gave it to Company B and then took credit for it.
So it would be in the best interest for Company A and Company B to let you go if either found out about it.
Because in a lot of software engineering jobs we are given a lot of trust in managing our own workload and this is a breach of that trust.
If you have too much on your plate you can (in well functioning teams) tell your manager "hey, we can't do X" or "we need to push the deadline on Y" and that will be taken at face value. You won't be expected to put in 80 hour weeks just to get it done outside of extraordinary circumstances.
The flip side of that is that if you have so little work that you have time to work a whole other job you're meant to tell your manager "hey, I have spare cycles, what do we need to get done?".
The exception is if both jobs are in the same field. If so, watch out for the IP clauses of the contracts.
In general, employers are expected to fire you if they’re unhappy. If they’re happy there’s no problem.
I think people are averse to the idea because they haven’t done it, and feel it’s morally wrong. But morals aren’t laws, and we live in a world of laws.
The solution is to bill daily, not hourly, and to meet all of your estimates.
It’ll feel like a marathon, but you can pull down over half a million a year if you play your cards perfectly.
But everyone believes that 40 hours is the peak, maybe less, before efficiency drops. You need rest to do well.
If you can perform, then just get a better position or a better job. Take on more responsibilities. Use the spare time to fix the problems that nobody brings up. If you can't, then chances are you're not really performing. If you are performing, why aren't you in a CxO position? If you are in a CxO position, are you hitting the 10% week on week growth benchmark?
I feel that most people doing two jobs are really just taking multiple low positions with low expectations and low salary caps. It's not always laziness, sometimes just market inefficiency.
Now if you are one of the people who can do multiple jobs effectively, consider consulting, where it's completely fine.
I don't want to manage people at that level. I want there to be trust so we can both grow the company together. How can I do that if I am competing with you for your own time?
Paying someone for "full-time" involves some amount of spare capacity, that you're paying for in order to have them available in case of emergency. But more fundamentally, you and your employer/customer should both be honest about what is being paid for/delivered.
The real reasons are that few people can actually deliver two jobs effectively and most jobs expect you to be accessible and available for some set of working hours.
If you worked at a factory or a grocery store, came and did your eight hours, and worked another job, nobody would care. So why does it differ as a developer? Especially if you're in a position where they treat you as a "resource". If you're an executive or cofounder or something, it's a different story
I used to moonlight as a programming instructor. It let me meet developing talent, promote my day job, and do some headhunting.
Day job loved it.
I think the reason they usually object is because it alters team dynamics. Imagine if you get promoted to Senior at one job, but are still Junior at another.
Also concerns about intellectual property.
Nothing wrong with software engineers doing the same thing.
If both jobs require availability during the same hours (“business hours”), how would you juggle meetings? If I was your manager at the one company and hear from you that can’t attend a meeting because of your other job, I would probably look to replace you.
More generally: put yourself in your managers shoes and try to imagine under what circumstances they’d be less than thrilled.
Whether working two jobs without disclosing that to the employers breaks the law, or violates some moral principle, or whether you consider it right or wrong, and regardless of what you think you owe your employer or how much you deliver, you have to look at it pragmatically. Most employers don't want their employees working multiple jobs. You might get fired, and in some circumstances you may get sued.
If you want to work multiple jobs without getting in trouble, switch to freelancing. You will do the same work but as an independent contractor you can (almost) freely choose whom to work for, where, when, and how much. (I added "almost" because you have to avoid conflicts of interest or the appearance of disclosing proprietary information.)
But if you are working on a team as anything above an entry level developer - the job description is more than that.
If you have extra time in your work week, you should be looking at ways to make your team better - what parts of the project are painful and can be improved?
You should be looking out for your teammates, particularly those with less experience - and asking them if they need help.
You should be coordinating with other teams that are doing similar work. Are there ideas you can offer to them to help their work, and in turn do they have ideas that can help you and your team?
Essentially, most jobs are social, and that’s embedded into the job requirements. You have to talk to people when they are working. If you’re working two jobs over everyone else’s 9 - 5, you cannot do this as effectively as someone with one “full time” job.
When an employer hires you "full-time", they're asking for your full and complete attention. I'm not saying they own you or that you should work more than what you're getting paid for. But you're short changing your team, your manager, and the company who is trusting you.
I take it you're not a manager/leader. If you were, you'd get this. Imagine every member of your team double timing. Now you're left with a bunch of people half-assing it. It's deeply demoralizing.
And without ethics, you're just a cheat. It's no different than cheating in an exam.
If you want to earn more, start a business. Become a consultant. Learn how to make yourself more valuable. Don't cheat.
If you want to retire early, I'm pretty sure working two jobs wouldn't do the trick, even if you managed to sustain such an ordeal for years.
The best way to break out of the 9 to 5 clockwork or the rat race, is to provide value far greater than one can provide in 1 or 2 jobs. That is, starting a company, providing service(s) that return greater value. Whether you end up selling of old age (e.g. 45 if you've had enough) to a broker service, or whether you end up selling out early due to an opportunity, that will most likely give you an earlier retirement than working 2 jobs staggered.
And by the way, watch most people who have sold their company and made a ton of money... Most of them still work [citation needed, I don't know any personally].
Point is, love what you do and you won't work a day in your life. Or strap up and do the work.
One simple answer: they know because Alice signed an employment contract assigning all IP to them, and foregoing any other employment.
There are a ton of other reasons: Alice could be party to both sides of a vendor relationship or acquisition. Alice could be short changing the jobs expecting 40 hours of her time each but only getting 30 or less. Alice could be working for competitors, where having access to Bob's datasets helps her work with Carol disproportionately and without his knowledge or consent.
> Most employees just wanna earn enough to retire
I mean, you presumably also want to retire, and not lose your job, and not go to jail. Maybe even do some good work?
A lot of this noise is from people that don't believe you can do two jobs remotely satisfactorily, and from people in management that don't like the idea they don't own you body and soul.
The amount you make as a manager, director, on up grows by more and more. Most company directors or VPs make 2-10x what a passably performing IC makes. Taking two jobs pretty much assures that you won’t grow in either one. Additionally, it only works when you don’t have too many other responsibilities and the demand is where it is for developers.
The minute demand slows down (like it’s doing now) most employers will start pushing for more in-person time from their teams; and have more options for changing out low-performers.
It’s probably one of the least efficient least sustainable ways you could earn enough to retire.
You might be able to work an 80 hour week consistently but your work may not be as consistent or capable. What happens when some one else on your team makes a mistake which requires you to work over time to make up the difference at which point where do you find the time on top of your 80 hour work week?
If you are able to consistently perform at that sort of level you can make more money by finding one job that pays more than two jobs.
The vast majority of white collar work is and has been nothing but bullshit. Agents of this work implicitly acknowledge it as bullshit when they measure work in terms of hours rather than value created. They acknowledge it when they speak derisively of "overemployment".
They won't measure work and pay in terms of value created because that would reveal their bottom line, ruining the facade and potentially ending their game.
If you can do one bullshit job, you can do ten, so go for it. The only people who have a problem with this are those who don't want to believe what they're doing is bullshit.
ive tried 3 jobs at the same time back then, i still dont recommend it.
If you can perform at the arbitrary level your manager wants then who cares. Personally - I have no issue with this even if I was managing someone (I’m not).
I find it almost ironic (if it wasn’t so typical) that so many here bitch and moan about this (truly hypocritical crowd). All the jackasses here who were bootstrapping or getting funding for their startup or working on it/etc were doing it while working at another company. This is the same as working two jobs but lo-and-behold that’s just the sigma grindset bro - we’re just wonderful capitalists doing our part to better the economy - we’re gods and we deserve worship - praise me!
I find it so annoying to read this stuff on here. It’s no better than your -9000 IQ Reddit discussions between 13 year olds creating fifty sock accounts.