Every job is going to suck if you're an engineer for hire. There is no mythical good place to work, and if there were, someone like these guys would be working overtime to make it suck for you. If you're an engineer you need to be working on selling your own products and services and working within the framework of being a business owner. Once you accept a permanent salaried position, no more negotiation is possible and you will have to weigh each new set of terms dictated to you with the cost of quitting. Setting up a business allows you to renegotiate with clients and you will never have to take the career hit of quitting a salaried position again.
I'm a counter example. I've run my own successful businesses in the past, but now I'm an Engineer at Google and I often worry that my life is just too good to be true. I look forward to Monday morning, and have to stop myself from working on weekends and the evenings. It's too much fun! Honestly, being paid good money to work in a supportive environment with great people is hard to beat.
So google has been canning several projects lately. How will you feel when your project gets canned and your work thrown away? How would you feel about a 25% pay cut or being forced to move to a different state, or free food being cut? What if you're put under a micromanager who forces you to work weekends and nights to cover his/her ineptitude? Do you think GOOG shareholders would not rather keep the money that you cost? Shareholders and management will eventually alter the deal you are currently getting in their favor. If you generate value, other people want that value and it will suck at some point in the future if you continue on as rank and file.
The prospect that Google could one day be a bad place to work does not invalidate my claim that it is currently a great place to work. The premise of your original post was that the only way to have a good working life is to work for yourself. I don't think that this is always the case.
To be honest, the doomsdays scenario you outline is ridiculous to me. It's so far removed from the current culture at Google. I think I'd be long gone by the time such things were taking place.
It's also worth noting that the majority of Google shareholders are Google employees (including me), and that the managers in Engineering at Google are all engineers. You should also investigate the conditions of Google's IPO - the shareholders don't have a lot of influence at Google.
Of course, these things can all change. But like I said, it's great the way it is now and I'm having a blast. If it changes, I've got plenty of cash and experience under my belt to get started on something else. There is no downside here.
(Addendum: If they cancelled my project (Go) I'd just quit and work on the code from somewhere else. That's the benefit of working on a project where all your contributions are BSD-licensed. ;-)
>The premise of your original post was that the only way to have a good working life is to work for yourself.
The premise of my original post is exactly what I wrote, "Every job is going to suck if you're an engineer for hire." I didn't say every job sucks now, just that the natural tendency is for forces to work against any good working life for rank and file engineers who stay in the same job.
Things are going good for you right now? Great, you're an outlier working at Google. The vast majority of working engineers more than probably face declining benefits, compensation, and working conditions in the future without changing jobs. For example, most companies don't offer cost of living salary adjustments even though company revenues would presumably increase by a similar amount.
My point is simply that such job changes are costly in time, money, and effort and can be avoided by working for oneself and that it is a good and desirable goal that engineers should pursue.
> My point is simply that such job changes are costly in time, money, and effort
And that's where I disagree. When I said there's no downside, I meant it. Changing jobs has been only an enriching experience for me. As long as you're savvy with your finances, it's no sweat to find another job. On the other hand, if I ran a business that started to tank, I think that would be far more stressful (thankfully mine never did).
I agree that running your own business should be a desirable goal, but I think you can make a great living working as an employee. It depends a lot on your interests. Both approaches have their benefits and pitfalls.
"If you generate value, other people want that value and it will suck at some point in the future"
this is only true, if you don't value your own contributions. It is on your own onus to value your contributions. Say google stopped the free food - you are now free to leave google, or you are free to ask for the equivelent in added salary to cover the food.
Why would you not negotiate it? why would an engineer, who have valuable contribution, be taken advantage of by others? The only reason I can think of is, the person didn't care enough to value their own contribution and hence, get stepped over.
Which is exactly what I argued was the only recourse an engineer has, so I agree.
> or you are free to ask for the equivelent in added salary to cover the food.
That's extremely unrealistic. You don't understand that the hypothetical food was cut to save money. If they just pay out that money as cash, the company won't save anything.
> Why would you not negotiate it?
It requires two willing parties to negotiate. Employment terms are not negotiable once the job starts. What exactly do you think will happen if you say "give me my food back, or more money, or I quit." In the best case you will be laughed at and ignored, in the worst case you will start being pushed out of the company. Everyone is replaceable.
So you're off running your own business. What if you get a crappy client? How about a demanding one or one who doesn't pay. Or, worst of all, no clients at all?
There are risks in everything. Running your own business is inherently more risky than working a salary position but the rewards can be higher. And really, either will suck at some point. There is a reason it's called work.
I wasn't assuming consulting/freelancing at all. If you're going to run a business you're going to have customers. These customers need support and can be much worse than anyone you deal with in office politics.
The problem is that you're presenting a false dichotomy. Either work for yourself or slave 12+ hours/day for someone else. There are plenty of good 8 hour/day engineering jobs that pay well and have interesting problems to solve. If 'might make [you] rich' is why you want to do a startup you're probably going to be disappointed. The odds are stacked against you and the risks are high. If you're really good at tech, most of the top companies pay well and give job stability which is what many people want.
"There are plenty of good 8 hour/day engineering jobs that pay well and have interesting problems to solve."
If I can't take vacations whenever I want or have the freedom to come and go as I please, I consider it slaving away. No job will allow you to do this.
"I wasn't assuming consulting/freelancing at all. If you're going to run a business you're going to have customers. These customers need support and can be much worse than anyone you deal with in office politics."
Possibly. However, you can always fire customers. I know I have. Also, when you are consulting, it's just like having another boss. They tell you exactly what needs to be done. I ran a consulting company a couple of years ago..and I won't do it again.
When you are running a product/service, you may take customer input, but you make the final decisions. That's the difference.
"If 'might make [you] rich' is why you want to do a startup you're probably going to be disappointed."
I'm already making more than I was making at a job. I've only been running my company for a year. The reason many startups don't succeed is because many of them don't think about how to monetize it. Making money is almost always my first priority. If I know it's going to be difficult to monetize an idea, I usually move on. Another problem is that many people think the answer to success is getting bought by a larger company or getting VC.
"The odds are stacked against you and the risks are high. If you're really good at tech, most of the top companies pay well and give job stability which is what many people want."
High risk = High reward. Most companies aren't as stable as you might think. At least with my own company, I make the choices that directly lead to my success or failure. I've worked for too many companies that made ridiculous decisions that led to major profit loss or huge layoffs..and there was nothing I could do about it.
If I can't take vacations whenever I want or have the freedom to come and go as I please, I consider it slaving away. No job will allow you to do this.
Not to be a 'me too' with the above poster, but my job allows this also. I'm trying to to run my own business because I think it will be a fun and interesting challenge. I have no illusions though. I will likely work more and make less when/if I ever make the break to being on my own.
> If I can't take vacations whenever I want or have the freedom to come and go as I please, I consider it slaving away. No job will allow you to do this.
I disagree. Motivation is big factor for performance. A demotivated work force will only do exactly what it is being told, and show initiative. So any company - even when acting in self interest - will treat employees well.
No place is just ice cream all day long, there's some dog food too sometimes, sometimes there's stress.
I've been doing software in various positions (some big companies, some startups) for over 20 years, and for the most part I love it... I love my current job. Nobody asks for overtime.
> So any company - even when acting in self interest - will treat employees well.
Well, the premise of the submission pretty much refutes that unless you call loud outbursts, threats, reduced equity, and demotions "well treated".
>I've been doing software in various positions (some big companies, some startups) for over 20 years
Oh, why'd you switch companies if everything was so great?
>I love my current job
I'm sure everyone at Zynga loved their job at some point as well. And, while one example doesn't prove my point that every engineering job will eventually suck, it is a pattern that is repeated.
It is not all sunshine and roses for the vast majority of businesses. Everything will eventually suck. I am not sure the world would be a better place if most engineers shifted to becoming business owners. People like Dave Cutler, Linus Torvalds, Dennis Ritchie, etc. may be more accomplished as engineers than they ever would as business owners. Yes, they are outliers, but so are most successful businesses.
"I am not sure the world would be a better place if most engineers shifted to becoming business owners."
I know plenty of engineers that aren't capable of owning a business. They need to be told what to do..otherwise nothing will get done. Owning a business requires self-discipline and many people just don't have it.
"but so are most successful businesses"
It depends on how you define success. There are plenty of businesses that make enough in profit to give the owner a good lifestyle (as good or better than working for someone else).
I've worked for other people for the 15 years (I quit a little over 2 years ago to start my own company). In every single job, no matter how good it seems like in the beginning, it eventually turned bad.
You will almost always be asked to work on something you don't like, work extra hours, or get denied vacation time. I got tired of it. I got tired of being forced to ask someone if I can take a day off of work to go to the doctor or visit family after Christmas. It felt just like when I was in school. I suppose school is good training for real life.
As a business owner, I have more freedom. There are many times when I don't want to work on something, but it's still enjoyable to me because it's mine. Life also seems to pass by much slower. I don't feel like I'm wasting my life.
The downside is that I have more responsibility (if you can call it a downside). I can't just go into work and collect my check at the end of the month.
> every engineering job will eventually suck, it is a pattern that is repeated.
And running your own business won't suck? Everything can and will turn to shit eventually. That's a fact of life, so be adaptable and be prepared to do many things. But running your own business is not the only way to be happy as an engineer.
I'm a software developer and except for one job 25 years ago, I've enjoyed going to work every day and the companies and the men I worked for were great to me.
Maybe I'm lucky?