I worked at Amazon from before Steve left to sometime later. I remember being excited when Larry Tessler was hired, and dismayed at the way he was treated. Everything Steve says about Amazon is true, only, it was much worse. Amazon was, by far, the worst employment experience I've ever had. I'm not saying that lightly, I worked for a dozen startups, a couple of which crashed hard in the most gut wrenchingly painful way you could imagine. (Though by far most of my experiences were positive.)
Amazon was a purely political environment where, if you weren't watching your back you'd get stabbed and become a rung in someone else's ladder. In our group, the manager had zero engineering experience (literally had gone to college to be a prison guard, somehow ended up "managing" programmers, though barely computer literate.) In fact, it was so bad that when I'd finally had enough, and quit[1] (because my transfer to the AWS team was blocked by the prison guard) I vowed never to work for anyone else, ever again. Which means, I had to do a startup.
Anyway, the SOA effort was in full swing when I was there. It was a pain, and it was a mess because every team did things differently and every API was different and based on different assumptions and written in a different language.
But I want to correct the misperception that this lead to AWS. It didn't. S3 was written by its own team, from scratch. At the time I was at Amazon, working on the retail site, none of Amazon.com was running on AWS. I know, when AWS was announced, with great fanfare, they said "the services that power Amazon.com can now power your business!" or words to that effect. This was a flat out lie. The only thing they shared was data centers and a standard hardware configuration. Even by the time I left, when AWS was running full steam ahead (and probably running Reddit already), none of Amazon.com was running on AWS, except for a few, small, experimental and relatively new projects. I'm sure more of it has been adopted now, but AWS was always a separate team (and a better managed one, from what I could see.)
Regarding Bezos's micromanagement: I do remember, one fall, in the run up to christmas, surfacing an issue with the site several times. My manager told me that his boss didn't want to change it, but I knew it was a bug. I went above his bosses head and told that guy (who was a Bezos report) about it. I even cced Bezos on an email about it, and of course, the VP chewed out his underling who chewed out his boss, who chewed out me.
Then, at 3AM, the night before I was supposed to fly out to visit my parents for thanksgiving at 10AM, I was awakened[2] and made to fix the problem. The problem I'd wanted to fix 2-3 months earlier. The problem I'd gotten chewed out for trying to surface but been told "won't fix" all the way up and down the chain of command. Because Bezos had gone to buy something on the site and had seen the problem himself. So, my thanksgiving trip was ruined, of course, and I had to do it- RIGHT THAT MINUTE- in the middle of the night.
The icing? After fixing it and going back to bed, and coming in the next day (which was a vacation day, mind you, as I was supposed to fly that day...) I got chewed out by my boss for coming in at 10am.
I don't know about you, but if you get woken up at 3am and spend 2 hours coding, you should be allowed to show up for work the next morning at 10am.
Bezos was right that it needed to be fixed. However, he must be a B player because his direct report was a C player who wouldn't let me fix it when it was discovered.
Yeah, I wouldn't recommend you go work at Amazon.[3]
Sorry if I've gotten off topic. It's rare that you can find candid descriptions of what it's like to work somewhere.... since Steve felt free to be candid, I figured I'd share my experiences. I also worked for other large companies, like, for instance, Microsoft. Microsoft was weird in a sort of cult like way, and had its own management problems, but was much more enjoyable... and really treated their employees a whole lot better. At MSFT, hardship was having to share your office with another programmer. At Amazon, I was literally in a hallway, with a dozen other people, with major foot traffic walking past my desk (And right behind my chair) all day long, a lot of noise and a very large window over my shoulder reflecting right into my monitor... all day long.
Worst Job Ever.
Thank you for indulging my venting.
[1] It wasn't just me either, by the time I left, %60 of the team had already gotten internal transfers or resigned. I was being loyal, and went to HR to try and get some advice or mediation, but despite being promised confidentiality, the notes of my meeting with the HR rep were forwarded to my boss.
[2] At amazon they have this crazy idea that engineers should have pagers. I'm sure it sounded great at the time. I didn't have the pager that week, but that didn't matter to the boss[4], who knew I'd been the one to find the issue. So he called me. I think the phone rang for a good 20 minutes before I woke up.
Never let your employer give you a pager, unless you're an ops guy.
[3] After I left, and after my team was literally decimated by the hostile environment created by our boss, I found out he got promoted! Yep, now he's managing managers.
[4] Why was the boss up at 3am? Well, Bezos called him, but he'd been up already... he was a hard partier who, just between you and me, also was selling drugs on the side. Most of the stoners in PacMed were getting their bags from him.
I interviewed at Amazon and got an offer recently, but I have to admit, it did kind of sound like this kind of job. I really liked the offer stage, where I asked for 4 weeks vacation (what I have now) instead of their standard 2 weeks. "That's not negotiable! It wouldn't be fair if you got better benefits just because you're better at negotiating than others on your team!"
For me, it's hard to make even 4 weeks work when I have to count programming conferences as vacation. My ideal job would offer me twice that vacation (or pay for 4 conferences a year, their choice). So far, it seems nobody will do this in the US.
(And you wonder why people are always posting to HN about how they can't hire anyone. The problem is not that people don't want to work for you. The problem is that you can't afford them.)
I've never had to use vacation time for conferences, but then again I only go to one conference a year. Here's hoping my Aussie employer bucks that trend!
I've looked at the European statistics a while ago, and the average working hours are pretty much the same wherever you go, regardless of what's the maximum per week, how many vacation days you get and how many holidays the country has…
And I think the general first-world deviation isn't that big either, apart from the Koreans (and to a minor degree, Americans).
Out of curiosity, is there much of a start-up culture there? If so, do founders (and first employees) adhere to the same guidelines? At least here in the U.S., founding/working at a start-up basically assumes long-ish hours.
Sweden has 5 weeks of vacation and a 40 hour standard work week, and pretty successful companies such as Spotify, Skype, Voddler, SoundCloud, Flattr, etc, were founded here. I doubt most of those founders only worked 40 hour work weeks though, as an entrepreneur you decide your own hours, and overtime for regular employees is not uncommon.
It probably varies a lot depending on company culture. A friend working at a startup recently got hi-5's from the bosses when he said he had worked 11 hours a day the entire previous week, no talk about taking compensation leave to rest or anything like that. At my company (not a startup) an 11 hour day would be pretty extreme, and if my boss was aware he would probably insist I come in late the following day.
No, our country is notoriously lacking in entrepreneurship, make of that what you will.
We do still manage to have a pretty good economic output and some business success stories though, so there might be something to be said for working fewer hours.
I think the the start up culture is less prevalent here in the Netherlands than in SV but it certainly exists.
From my personal experience I can say these guidelines are not strictly adhered. The young, university educated people I hang out with all work more then 40 hours and take about 20 vacation days and work 40-60 hours, more if necessary.
However I think direct comparison is pretty hard. What does count towards the total amount worked? For example including social drinks in their total biasing the amount upwards.
"Nanny-Culture, Lack of Risk Taking, Not Sharing
What makes Finland such a wonderful place to live and raise a family may ultimately be what kills it as a startup hub."
I just checked and you are right, it is actually five weeks. Sorry about that. (I have my own business so the rules don't apply to me. Let's just say I have grounds for an epic lawsuit against myself :))
The legal minimum in the UK is now 5.6 weeks; That's still amongst the lowest in Europe. I simply cannot comprehend how even the best paid workers in America expect less holiday than the lowest-paid European labourers.
As for taxes, I'm Norwegian, live in the UK and looked into moving to California. At my income level taxes would end up within 2-3 percentage point of each other regardless of which of the three places I'd live.
Difference being I'd get far more services for my tax money in the UK or Norway.
There certainly are places in the US where you'd pay far less taxes than in almost all of Europe, but far from everywhere.
At Oracle UK I used to get up to 42 days, of which 10 could roll over to the following year. We were periodically overworked and under-compensated anyway (which is why I left). Our US colleagues hated were really envious.
If I recall correctly, the US is the only developed country without mandatory minium paid employment leave (federal employees excepted). Which small-government fans might accept readily, but it also has amongst the lowest actual average vacation times… Apparently free citizens want to work.
(One statistic had the Canadian average lower, though)
Strangely enough, this doesn't seem to have a straight-forward correlation with yearly hours worked. Italians have about the same number as Americans, but 20 mandatory days and quite a lot of Catholic holidays. Koreans and the Greek seam to top that list, although I'm currently not a big believer in Greek statistics…
That being said, I've yet to actually take a vacation day at Amazon, despite regularly getting automated e-mails about it from HR. I send a polite OOTO e-mail to my team and that seems to be sufficient. This may very from team to team and manager to manager.
2 weeks vacation plus 6 days personal days when you start. After a year, they bump it up to 3 weeks. They raise it to 4 weeks after 6 years of employment. Not too terrible, really, but not great either.
You know, I think when I was hired, I went from 3 weeks of vacation to 2 weeks... and I didn't even think about it, because I was too busy dealing with the fact that they didn't want to pay me anywhere close to what I was making before. Which was, by the way, a below market salary paid by a startup, to begin with! I finally got them to meet it with a "hiring bonus" that would match my previous salary for the first years I was there... I left before that ran out.
Other mistake I made-- I'd been working for startups for so long, that I really, really wanted a nice, stable job, where I would be able to put in 40-60 hours a week, and leave my work at home. That's something they pitched me on, too. So, I compromised... I figured, less stress, a little less compensation.
Turns out, it was much more stress. Even if your hours are lower, really bad management can make your life terrible. (and it wasn't just my boss, it was pretty much the whole of engineering management, near as I could tell.)
According to "Showstopper!", Microsoft would allow developers to go MIA for a bit after completing a tough project. That seems like a fair policy if you have a mature set of developers who deliver on their commitments.
There are significant parts of Amazon where this does happen - but it really varies from department to department, and manager to manager.
The depressing thing is, when you do get some time off after pulling long hours for a tough project, it's all done under the table. Amazon is extremely cheap when it comes to off-time, so managers essentially have to put their ass on the line to let their reports get well-deserved downtime.
Kudos to the bosses that do it, but one of the reasons that eventually convinced me to leave was that... things like this shouldn't have to be done with a nudge and a wink.
I interviewed for a support role at AWS last year, and that was bad enough. 1.5 hrs of a technical screening call, followed by 6 hrs straight (like, no breaks whatsoever) of face-to-face interviews with 6 separate people, only to be told that I needed to improve my networking skills, and that I should take some networking certifications and apply again next year. The beautiful thing? I never claimed to be a networking guy in any shape or form, and it wasn't part of the job description for the role I applied for in the first place. Sounds like I dodged a bullet...
I concur, I interviewed with them back in April this year 1hr tech call then 8 hours non stop interviews 9am-5pm (each with at least 2, sometimes 4+ people) Even lunch break was an interview! I didn't get an offer it in the end, their reason - not enough Java/J2EE - And not once on my cv/resume had I mentioned I had experience in that?!
And yes, one guy came in and introduced himself as the 'bar-raiser' sat back in his chair and expected me to be somewhat impressed by this.
"We set a high bar! B players hire C players! Only hire A players!"
The way it works at amazon is, if anyone doesn't like you, you're out. It doesn't matter if its relevant or not. It doesn't matter if the person who doesn't like you knows nothing about programming. My boss- the one with the criminal justice degree- would often veto people because they "weren't good programmers". Of course, he had no clue who was a good programmer and who wasn't because he couldn't program!
Sometimes, a person will be angling for the position you're interviewing for. Only, that person will also be included in in the interview loop. They have an incentive to say no, because they want the job.
Inside Amazon, this is called "keeping a high hiring bar". So, they go thru great expense and hassle to bring people in, and then pat themselves on the back when they arbitrarily rule someone out. Saying no, means they're doing their job, keeping that bar high! They once said no to a guy I'd worked with previously, who, as far as I'm concerned, was a much better programmer than me. (Better looking, gets along with people better, etc as well.) I mentioned this to the hiring manager, and he said "We have to keep a high bar!"
How many people do you think want to interview with Amazon again after going thru a 6 hour process like that?
Since their process is completely arbitrary, sometimes they get really great people (god only knows why they stick around-- I think a lot of engineers don't really know their own worth) but they also get a lot of people who randomly rub the right people the right way and get hired. It was completely arbitrary, it seemed to me.
The funny thing about "A players hire A players and B players hire C players" is that every company I have worked at that uses that mantra is full of B & C players from the top down.
I believe the theory is that the A players, secure in their own skills, want to be able to delegate work to people who are as competent as they are, whereas the B players want to surround themselves with people who make them look good by comparison.
A prospective hire who is an A (in whatever field) wants to work with their kind, and so is less likely to sign up at a company full of B-level people.
Also, as mentioned above, it is harder for many B-level people to recognize and value an A level person in the hiring process. An A may come across as arrogant by describing things as good or bad to a B when they're simply knowledgeable and confident because of that.
And by that mechanism, C players use the "only hire A players" rule to claim that A players are "not good enough", though such objections don't get raised about other C players.
There were some A programmers at Amazon, and they were respected, but they weren't the ones who made the hiring decisions. Since any B or C can veto any hire, A people often didn't get hired in favor of B or C people. (and A people who already worked there, eventually, got excluded from hiring loops because they're "needed elsewhere.")
what prevents A players from hiring B and C players
They know it will not end up good for anybody. Also they understand hiring another A player or if possible an A++ player is good for overall health of the company.
prevents B players from hiring A players
Ego and in a big corporation, the fear of the hire going ahead of you.
Also another deadly combination is the B player who hires another A player thinking they themselves are A+ player and spoils the fun for everybody.
proponents of the mantra would say that this means you're an "A" player.
there is some research that shows that your own competence directly affects how good a judge you are of your/others relative competence, i.e. people who are low competence will rate themselves routinely as 9-10 / 10 but people who are high competence will rate themselves 5-6 / 10 ...
I remember being "Top Graded" as an "A Player" when I was at Rackspace. In addition to everyone quickly beginning to hate me, I caught an article on Top Grading in the next few days which said that A players have an average tenure of 3 months, mostly due to the fact that we shake things up and are unafraid to challenge anyone, which eventually gets tiring. B players are loyal and anyone who has actually read on how all this is supposed to work realizes that C players are just in the wrong job, possibly even at the right company. They're unhappy and they stop trying, unless you can redeploy them.
Yeah, the "bar raiser" is a concept that you will hear about when you interview there. Mine was the last guy after a very long day (sixth interviewer), who actually introduced himself to me as "the local bar raiser", and then got me up writing algorithms on a whiteboard for an hour. Like I said earlier, I can do that stuff but I'm no network guy.
> How many people do you think want to interview with Amazon again after going thru a 6 hour process like that?
Not me that’s for sure, and I thought it was very arrogant of them at the time to suggest that I go off and getting some network training on my own time and expense and apply again next year. Like I’ve nothing better to do.
There's a massive amount of arrogance to this type of hiring. I think, however, that it reflects the companies opinion of itself and its employees.
Someone with significant skills is going to have significant self esteem. Are they going to want to put up with being treated that way?
In my day, the "bar raiser" didn't announce it, and so you never knew, if you even knew they did that. Announcing it seems profoundly stupid. And arrogant.
> Since their process is completely arbitrary, sometimes they get really great people (god only knows why they stick around-- I think a lot of engineers don't really know their own worth) but they also get a lot of people who randomly rub the right people the right way and get hired. It was completely arbitrary, it seemed to me.
This seems to be true for the vast majority of businesses.
Boot polishing manager's shoes works wonders in many companies. In a lot of places especially large corporates, Managers build their own gang. Loyalties run in the hierarchy throughout their stay in the company.
Now you might be the greatest guy on the team, but if you don't accept the manager as the king you are screwed. Your effort goes down in the drain. You work real hard to prove yourself and you get branded as a bad team player. Yes you are expected, to give away your work to the managers favorite 'kids' in the team.
I see this thing originates very early, even during the interviews itself. Such managers have knack to identify such people. And they generally get hired.
Needlessly to say such managers once in the company won't rest until they have ruined everything they will ever touch. And people whom they hire replicate the same. This continues until the whole company is left to rot.
I can't believe Amazon still conducts their interviews in 6 hour blocks. I interviewed there in December 2000 (yup, 2 weeks before the bust) and I was flown in to interview with a crap-ton of other people.
We interviewed for 4 hours, then broke for a 45 minute lunch (where we were basically interviewed/watched by employees), then interviewed for another 3 hours. Then several of us were taken out for dinner by employees where, duh, we were quasi-interviewed for our social skills. That kind of day is crazy and I never want to do it again.
Yes I agree, probably the only difference is that they would make you come in on six different days for your six interviews, and maybe spread them over a few months, and then still tell you no over something apparently random. I refuse to interview there despite being approached by them twice, I've heard enough stories from my friends to put me off.
Sounds like the "screening day" I went through at a large multinational here in the Netherlands. 5 25 minute interviews, lots of talking, presentations, got an offer, just so they could decide "Oh yeah, we have people with nothing to do, sorry, can't hire you"
As an ex-Amazonian, I have to second your opinion. It was by far the worst employment experience I had at a tech company. In my 10 year tenure, I fortunately didn't come across any company as bad as Amazon, when it comes to how it treats its employees. The management doesn't have any value for the lives of their developers, and use them as tissues. Use and throw seems to their policy. If you can take their abuse, and don't value your personal life, you can survive there long enough. You are expected to work like slaves, always on call. Office cubes were cramped, there is no free soda, drinks. Even coffee they stocked in the kitchen was cheap. They celebrate frugality at the cost of quality of working conditions they provide to their developers. No wonder, one of the SVP's life misson when he joined Amazon from Microsoft was to make Amazon a place where developers would love to stay. Average turn-over at Amazon is around 18-24 months. Most of the line managers were clueless and sometimes completely non-technical. I wondered why smart engineers would even consider working there, when they can work in awesome companies in the valley where they celebrate/cherish people they hire, and actually care about them. Most of the kids who are hired right out of school, wisen up, and leave in 2 years. I worked at Microsoft too. Microsoft with all it faults still takes amazing care of its employees. Great perks. Amazon just pays salary, and its medical insurance is a joke when compared to Microsoft. One other biggest gripe I have about Amazon is that it leverages so many open-source technologies but they don't give back (much) to tech community or industry as such. It is not in their DNA. Their attitude is similar when it comes to its people. My advice for anyone considering Amazon, should seriously talk to current and Ex-Amazonians, and get a real-picture of what you can get out of Amazon. Folks who don't have the faintest idea about working for Amazon seemed to have downvoted a similar opinion of mine in the past on HN. For clueless folks who think, I am some dis-gruntled employee, I can gladly quote/refer to Yegge's post now. Quitting Amazon was one of the wisest decisions I made.
Amazon doesn't just pay salary. I got salary, "signing bonuses", and stock. The overall compensation seems to be pretty good from what I can tell online. Then again, I could be lucky since my stock grant was near the bottom of the recession.
Advice taken. I have an offer from them right now, as well as an offer from elsewhere -- after seeing this whole thread, I think I'll go for the elsewhere. Thanks for the advice!
Amazon is still a great place to learn, if you are willing to take the brunt of operations and don't mind having no life. Dismal working conditions, over-working, heavy operations load (group specific), having no-life, working over holidays, poor line managers, cover-your-ass politics aside - It is one of the few places where you truly get to see how large scale web-based/distributed systems are conceived, built, and operated. It could be a great career launch pad, if you are just out of school. It will be like drinking from a fire-hose. If you are single, and in a good group with the right set of peers then it could work out well for you. If elsewhere is a super hot startup (Quora/Palantir/Dropbox and ilk or good tech companies like Google, FB, Twitter, Linkedin or even Zynga (pre-IPO makes it hot in my opinion) then I would seriously consider the down-sides of working for Amazon, and living in Seattle.
> The problem I'd wanted to fix 2-3 months earlier. The problem I'd gotten chewed out for trying to surface but been told "won't fix" all the way up and down the chain of command.
I mostly don't have responsibilities (family) and 6mo living expenses and supreme self-confidence (aka the perhaps non-rational belief that'll I'll find work or at least make a living no matter what). Because when people try to pull shit like that. I email Bezos and all the people who said won't fix, (paraphrased) "Fuck you, you ignored me months ago when I brought this up. Now I'm ignoring you when you ask me to drop everything and fix this right now! You should fire these incompetent fucks but you will probably fire me. That's fine, this company doesn't deserve me. Happy Holidays"
Yes, that's kind of interesting, isn't it? If those horror stories are true (and we have no reason to doubt they are), it kinda shows that the way you treat your employees doesn't really matter to your success.
It certainly matters a lot to them; it matters from a moral point of view; but from a practical point of view the only individuals whose happiness matters are the customers.
Of course, if your employees are so unhappy that they make your customers' life miserable, you have a problem. But Amazon is still very far from that.
On the contrary, the way Amazon treats their employees does harm them substantially, they just haven't paid the price visibly to the public (or quite as hard as they will, eventually).
Attrition at Amazon is at horrific rates. I know the actual number, though I'm pretty sure that'd violate my NDA to reveal. It's high. It's really high. Guess a really truly terrible number. It's probably higher than that.
The stream of people leaving the company isn't a trickle as it is a well-managed places. It isn't even a modest stream. It's an outright deluge, particularly in this market where everyone else is desperate and willing to pay (protip: Amazon, as a rule, is not).
This is starting to show itself in many places in the company. In a lot of places there are no longer any senior engineers left who know how the system works. In their place are fresh-faced college grads struggling to contend with a system they neither have the experience nor the documentation to maintain, much less extend. The average tenure of the Amazon engineer is embarrassingly short, and coupled with the company's notorious lack of documentation, it means that technical debt is accumulating at an alarming rate.
There are constantly projects to completely revamp/redesign some portion of Amazon's systems. In my observation this is less about an honest improvement over the old system (sometimes there IS no improvement) but rather because nobody knows how the fuck the old thing works. The truly sad thing is, they have trouble keeping engineers around long enough to even see that redesign through.
If you know where to look on Amazon's site, you would see lots of evidence of this already. Extremely deep integration into systems that literally no one still with the company understands. Tons of mission critical code whose original author is long gone, no documentation exists, and in fact the code isn't owned by any team. I've seen many hacks to work around these problems, though I doubt they'd be super apparent to the common Amazon shopper.
The problem here, like many other companies in a similar stage, is that very little of Amazon's management has a technical background at this point. Bezos certainly does, and I still think he's one of the best CEOs in the industry right now, but many of his underlings... not so much. A lot of management do not see this accumulation of technical debt. Difficulties working with said debt is perceived as either "natural" difficulties of working with technology, or worse, incompetence. Amazon's internal existence is a depressing cycle of: hire people, people spend eons learning how the previous guys did it, people write code, people get fed up and leave, hire more people, people spend eons learning how the previous guys did it...
If any Amazonian management is reading, I have one thing I really want to drive home: stop being so fucking "frugal" with equipment. It is a travesty that my development desktop was a Celeron worth $300 on eBay. Not because I like having the newest shiny, because I couldn't even run multiple dev environments on it, like I had to for my JOB, and building my code took 12 full minutes, instead of, say, 3. Stop shitting on your devs with dinky 5 year-old monitors and give them some screen real estate. There are plenty of studies that outright prove the productivity boost that comes with bigger monitors.
"On the contrary, the way Amazon treats their employees does harm them substantially, they just haven't paid the price visibly to the public (or quite as hard as they will, eventually)."
If it hasn't hit them yet, it might after the rant.
Given the Dilbert Employer From Hell publicity generated by the rant and the subsequent discussion, I'd say that they might have trouble filling in for the people that leave. Heck, even some of their current employees might read the rant and realize how crappy their current situation is.
Off on a tangent:
"I couldn't even run multiple dev environments on it, like I had to for my JOB, and building my code took 12 full minutes, instead of, say, 3."
Local dev environments? My current workstation has a mere 2GB memory and an Athlon X2 which was all the rage in 2005 :) The builds fly, because they are delegated to a compile farm. The added benefit is that I don't have to muck with the build tools settings.
Locally in Seattle, Amazon has a really bad rep. Only on places like hackernews where everyone is excited about AWS (despite its many, huge, annoying flaws, remember when ebs when down - AGAIN?) do people not realize this.
Amazon has lost a lot of key tech talent, it's been happening since about 2006 when the economy picked up a lot more.
Seems like only people in Seattle, and Ex-Amazonians have a clue about working for Amazon. Don't be surprised if HN trolls down-vote your comments out of sheer ignorace.
I think a large part of it is that traditionally companies that are back working environments also produce crap for products.
But yet Amazon, product-wise, is fast-moving, innovative, and often right on the money when it comes to what customers want. It's a lot like Apple in that regard.
So it becomes difficult to grok how this seemingly innovative company that has its finger on the pulse of retail (and beyond) can become such a doggish place to work.
It's the ultimate siren call isn't it. It took me two years before I decided throwing myself at that brick wall every day wasn't worth it, cool products or otherwise.
Haha it's so sad when companies can't even buy decent equipment for an employee they're spending 30-50x that much on per year. I'm currently spending half my time at this job developing enterprise Java in a VirtualBox instance on an old Windows XP machine with 2GB of RAM. I'm just hoping they pay for the JRebel license before my demo license expires.
I did some interviews with amazon, when they told me that their devs get a 22 inch monitor, I almost dropped the phone. They said that they wanted to keep a "lean startup environment", bullshit. That alone stopped me from going further along in the interview process with them.
When I was there, new hires got 24" monitors. Not too bad - but hilariously enough the old hands had to live with 17-19" old Dells (though they got two of them, as if that really helps that much).
I just don't get it. Monitors are items that survives multiple tech generations, have huge demonstrable benefits (moreso than speedy laptops or pretty offices), and don't even cost much at all! (certainly less than SSDs or high-end MacBook Pros!)
Forgive me for being dense, but is 22" insufficient or were you just suggesting that you didn't believe Amazon? Here in Memphis I've seen devs work on setups ranging from 13" to 24" depending on the team.
I have had a 30 inch at home for the past 3 years, I'm looking to upgrade to twin 30s. At work I have a 30 inch, it's all so inexpensive, that its not really worth discussing.
Considering that I've seen that in a prior bad job myself, and the correlation between that and "bad work environment," I'd say that shitty computers for a developer is a classic red flag.
In my book, it means that bean counting has taken over productivity. That's no place to be a software developer.
>Attrition at Amazon is at horrific rates. I know the actual number, though I'm pretty sure that'd violate my NDA to reveal. It's high. It's really high. Guess a really truly terrible number. It's probably higher than that.
Maybe this explains why I've been contacted by Amazon recruiters three times over the past three years...
I still periodically try out some of the regression tests that I'd done back when I worked there... there are bugs that have been in the site for about 4 years now. I think when my team was reduced by %90 from people leaving, they just disbanded it and nobodies doing that work now. Certainly the major initiatives haven't moved forward.
I don't think Bezos has a technical background... I thought he was a hedge fund guy before moving out to Seattle. But I agree with everything else you said.
The funny thing was, when I got hired I was told that they were going to let people use Macs and that it would be a few months. I had my own laptop I was willing to bring in and use, and though they were trailing macs with a few people, I was told I'd be fired if I used my personal mac for work.
So, I had to use a piece of crap HP laptop. The thing was always in the shop. There were many days when I basically lost an entire days worth of work because it would break. They replaced it several times. (and I was babying it.. .it lived on my desk for the most part.)
So, not only could they have had zero costs by letting me use my own machine, but they lost more than the cost of the laptop several times over in lost productivity by me not being able to work when the machine they made me use was in the shop.
And when I left, they still hadn't approved macs (or maybe the IT department decided they were "too insecure" or some BS.)
While I was there, they were constantly starting initiatives and then abandoning them. Like the restaurant menus. The movie schedules. The scanning of mail order catalogs!? They'd start some project, do a press release, then disband the team and never advance the code again... it would just sit there and rot.
I think one of the reasons that most of management there is not technical is that non-technical people are threatened by technical people in that role. Technical people have quite an edge when managing programmers. I think engineers who express an interest in moving to a management role are often perceived as a threat.
Regarding laptops, the situation has improved a lot from what you describe. Instead of crappy HP laptops, we now have thinkpads like every other tech company. And if you want a mac laptop, they'll give you a new one.
Of course there's room for improvement (SSDs, linux desktop, bring your own OS) but IT is aware of the pain points and making the appropriate cases for expenses and head count.
John Doerr (big-time VC) was at some of Amazon's early off-site meetings and he would always talk about how gnarly it was "inside the sausage factory". Meaning that when you knew what was really going on inside a company, nobody would want to work there.
Do you guys remember the contraptions they stuck on the laptop's for secure logins/VPN? Made me the butt of all jokes, carrying that thing around..Sigh
I don't think Bezos has a technical background... I thought he was a hedge fund guy before moving out to Seattle.
So what can you say about this post posted here 3 years ago. http://news.ycombinator.com/item?id=465882. The blog post was down, archive.org didn't help also :). But as far as I remember the blogger was praising about bezos leadership skill. Also comments on HN supported that. I am reading HN for about 3 years. In first two years I never saw this kind of amazon bashing.In fact there was many post praising about amazon's internal culture. How on earth things change so dramatically in last one year. Is there some kind of PR war happening here? Honest question.
I had the fortunate opportunity to present to Bezos once. That guy is sharp as a tack - asked some very tough, but fair questions, all of which suggested he got what we were presenting and grokked at least the bulk of the technology underlying it. It was not at all a "uh huh that's nice go do it" scenario at all, and I was pleasantly surprised.
He may not write code, but I think it would be a mistake to claim he isn't a technologist.
If the rest of the company's management had half the managerial competence of Jeff Bezos, I'd run back to that company with arms wide open.
PR war? Check out Amazon Glassdoor reviews for engineers! This sentiment has been consistent. I am a little surprised that people were praising Amazon's culture here. This also explains I was down-voted in the past. One thing I really learnt well at Amazon was how not to treat your developers, and what mistakes you shouldn't make to build great, and long-lasting teams.
There is a PR war, and it's been waged by Amazon since the mid 1990s when they went public. They had terrible numbers, and so they reframed themselves as a "tech startup" to get in the dot com boom.... and it worked.
There has been, and continues to be, massive propaganda efforts from Amazon to try and pitch them to people, and to position Bezos as a visionary in the style of Steve Jobs. In fact, I saw an article the other day comparing the two.
It's nonsense. Bezos, in any other context, would not be a bad person. He's got good management skills, and he has a desire for keeping the quality bar high. But the problem is, he doesn't give a damn about other people.
He's got a very utilitarian viewpoint of other people. Every interaction with them, from his perspective, seems to be about how he can best profit from them. He sees people as resources to be exploited.
I'm a pure capitalist, I don't have a problem with trade, but he's more like a predator.
At least, this is what my interactions with him, and the culture he created at Amazon tell me.
You can sustain such an illusion only for so long, however. In seattle, as far back as at least 1998, everyone know that Amazon was a terrible place to work and an even worse place to do business with (as a supplier, etc.)
I knew that, but I didn't want to believe it, when I took the job.
I do accept responsibility for the stupidity that I displayed in doing that, and in sticking around after I should have left as others have pointed out. I could have avoided this, and should have, by simply holding myself in higher esteem... and never taken that job.
> There has been, and continues to be, massive propaganda efforts from Amazon to try and pitch them to people, and to position Bezos as a visionary in the style of Steve Jobs.
I can't speak authoritatively since I didn't work on that component, but Amazon takes the integrity of these things very seriously. I would be extremely surprised if any of these widgets are "tainted", as it were.
For all the crap I've thrown at Amazon in this thread, if there's one thing they are clean of it's working against their customers. It is, by a very long shot, the most customer centric big company I've ever seen.
> Amazon takes the integrity of these things very seriously [...] if there's one thing they are clean of it's working against their customers.
I'm pretty convinced this is true in general. I just couldn't help wondering if this one case would be a little too tempting for them. But absolutely, it could be completely on the level.
I kind of agree. They are at a stage, where their treatment of developers doesn't matter much. Walmart treats it employees miserably but they are doing quite well, and rakes ginormous profits. The way a company treats its employees says a lot about management. Amazon's top level management is super sharp. They are not idiots. It is not like they don't get it. The fact is they don't give a shit. As long as you are a success story, no-one really cares. If it ain't broken don't fix it. If there is an objective way to measure developer happiness across all top tech-companies, I wouldn't be surprised if Amazon ends up dead last.
Amazon internal propagand emphasizes that Amazon is a startup. "It's day one!" is a phrase I heard way too many times. They have "door desks" -- which actually cost them more than regular off the shelf furniture would-- but they pretend like they're being frugal to perpetuate the perception that they're a startup. (When I found out about the door desks costs, I was sworn to secrecy, it is very important for morale.)
I think the result of this is that a lot of employees believe it.
I think people generally, want something to believe in.
If you give them something to believe in, and it seems plausible, and especially if its tied to their income, they'll believe it.
And they'll work harder for it.
It worked on me-- that's why I didn't just go back to sleep that night. That's why I stayed on for several months after that, until things became untenable for me. Hell, I was going to stay with the company, I had met the AWS team, had gotten an offer for a position there and was in the process of transferring, and only quit when that transfer was blocked!
In a way, "well run" could mean that you get a lot of work out of your employees, even if they are miserable. I think optimizing for employee happiness can help you, but it isn't necessarily the only way to have high productivity.
I have an acid test for any place which claims to be a startup. When someone proclaims this, ask them to answer any two of the following questions:
- What's my name? (Covering your badge, naturally)
- What am I working on?
- Where am I from?
If the bigwigs can't answer that, I'm sorry, you've moved past actual startup-dom and you're just in la-la land where you just think you are one.
Unfortunately, I only thought of this acid test after leaving a place with 30K employees which had started proclaiming it semi-regularly during their Friday get-togethers.
Google never actually claims they're a startup, they just say they want to be like a startup.
There're varying degrees of success at this, ranging from "if I squint really hard, I could almost see it" to "Yeah...I don't think so." But I give 'em props for trying, as most companies with 30k employees don't even make the effort.
BTW, I could go all the way up to the VP level within the Search bigwigs and they'd be able to answer this.
I have to agree with your last point. IBM is a "well run" company; they take very good care of their shareholders. Some of the things they have to do in order to take care of shareholders is one of the reasons why I no longer work there. But I still hold on to my IBM stock....
You last few statement sum up my feelings too. I am curious to see, how long they can get away with poor conditions for Devs. It still amazes me that they get away with it.
I think there are huge numbers of low level, new, or just... B and C level developers who come in to fill the ranks. A lot of the best devs at Amazon, when I was there, were indians who had to keep working at Amazon as it was the only way they could stay in America. I felt a bit sorry for them (and of course, from their perspective, Amazon might have been great compared to the alternative.)
This country really needs a damn visa for technologists, or something.
Anyway, at some point software development became a very popular career choice and so there is an endless supply of warm bodies graduating from colleges each year, all of whom know the Amazon brand and think working there would be really cool.
My first job was at a company that I'd say was much, much worse than Amazon. Smaller, no real engineering practices, and they'd just chew through developers paying them as little as possible. Yet they made money!
I was migrating a legacy system to a new platform and we got a call from an irate customer. Apparently, he had just paid us last week but now his account was shut off. The odd thing was, no one I talked to even knew what product he was talking about, or what website he was on. I checked with our payments person, and he had sent us a check, but no one knew what it was for! Eventually I tracked it down to some legacy discontinued product that had been handed off between three successive engineers who left the company, then forgotten.
You don't have to treat your employees well, or even make a good product, to be successful. You just have to get people to give you money.
I've thought a lot about this. In part because, you can't generally say anything bad about Amazon without being attacked. "You must be disgruntled" etc. I only made my post because I had the cover of Steve Yegge saying very similar things (Though I went into more detail.)
Most people believe Amazon's press releases. In 2006, they said that AWS powered Amazon.com. It was a flat out lie. But how could I prove it? Fortunately, others there at the time have posted in the thread as well. But come back to HN in a couple weeks when AWS has done their next press release, and say that, and you'll likely be down voted to oblivion.
The thing is, Amazon, and Jeff Bezos are damn good at spin. You see glowing articles that talk about Jeff as if he were a visionary, boldly leading his commerce site into the future of web services. (As I understand it, AWS was pirate operation, which got cover from a politically endowed VP in the company, and they were able to get it far enough along that Jeff saw the value of it, when he'd previously wanted to knife that baby.) Their manipulative ways extend to other people as well.. and when you're getting most of your stuff from them, and you've had good customer services, you naturally inclined to want to believe in them.
People believe Amazon must be good in all ways, because they are good in one way.
Amazon is really, FREAKING, good at fulfillment. Amazon prime, their return policies, their streamlined ordering policies... at this point, ordering things from other websites has so much more friction that they just feel old. "You mean I have to enter my credit card? Why don't you just sell this thing on Amazon.com and let them do it right!"
I don't know how Amazon treats their stockholders. They treat their employees terribly (but they do tend to hire a mix of type-A aggressive and meek. The meek just are grateful to keep their jobs and the Type-As love the political sport). But they treat their customers damn good.
And they have the fulfillment thing nailed cold. I give them respect for that.
But you are disgruntled. You've got excellent reasons for being so. I always wonder why people will use things like that as stoppers for the discussion, the fact that someone is disgruntled alone should not be cause for dismissal, the underlying reasons are what matter. And you've gone over and beyond the call of duty in my opinion here and I am frankly surprised that Amazon manages to operate if they treat their employees like this.
But the real world usage of disgruntled is as a marker for "This person is biased against the company, so any fair-minded person should discount what they have to say."
Ad hominem doesn't mean "calling them a name or label that isn't true"--it means "implying that their argument is less valid because of their state of mind or perspective".
I think you are very right about the customer support thing. That is the one reason why I spend hundreds of dollars a year at Amazon. From the customer perspective (the only I have) you feel like a god. They nailed that one on the head.
Example: My girlfriend sat on my Kindle and broke it. I called and said that it was broken. Without any questions they just offered to send me a new one for free! After something like that I will always go back to Amazon (and tell my friends about it)...
That's amazing to me. I thought such things were never done in software anymore because: why not leave the company and do the same thing in your own startup? Same hard work, high risk, etc, but with giant upside. Was it because of something wrong with Seattle's startup culture?
There are a lot of really great products that simply cannot be built by a scrappy startup, and require the ginormous scale of a place like Amazon to pull off.
Not only for deep funding pockets, but also for existing relationships. Say you had an idea that would dramatically improve online retail - you can either develop a white-box solution and try to shop it around (and have them clone it out from under you), or you can build your own online retail empire (good luck), or you can join one.
It's part of what got me to stick around AMZN as long as I did. Myself and some colleagues were very much of the internal-entrepreneurial mindset. We developed lots of prototypes, some of which received rave recognition throughout the company. I left after I realized my management chain (can't speak for others) had little to no real interest in turning them into products. They were more than happy to give lip service, trophies, and have me put together presentations on how innovative and scrappy we were, though.
A startup doesn't have Amazon's network of datacenters or hardware resources.
(I've never worked at Amazon, but I'd also heard that AWS was a small skunkworks project that basically got cover from Amazon's CTO, Werner Vogels, who protected and nurtured it until it was too big to kill.)
There is no effective Seattle startup culture. I worked in the Seattle area for 7 years, and startups are not really a big thing. Going to work at microsoft is a big thing. You make more money there anyways.
A lot of this is due to the lack of a VC infrastructure I think. no sand hill road there.
It's probably really hard to run a company with tens of thousands of employees and achieve market success while also having everyone inside like and respect you. From a systems standpoint, it's hard to argue with Amazon's recent successes (AWS, Kindle Fire). If they aren't an A company in tech then no one is.
This is not to dispute your observations in any way, shape, or form. Just that it's a huge T-Rex from the outside in terms of objective metrics like products shipped, even if it does have dysfunctional internal organs.
I have been a victim of this down-voting in the past :) Even till end of 2007, majority of Amazon.com was not powered by AWS. If I remember correctly, website team tested out serving traffic on EC2 machines during 06-07 timeframe, and categorically declared that Amazon can't run on cloud without crossing major technology hurdles.
It depends on what you want, maybe they help you in some cases because it costs nothing, or doing so does not touch a "live wire" of corporate policy or government regulation.
But for other matters, HR does pursue their own agenda, not yours. It's important to remember.
When I worked in retail my name and zip code was incorrect in the company records. When I asked who I should contact to fix this, my store manager told me I'd need to contact HR but to never ever do that. I'll always wonder what would've happened if I had contacted them.
Then to be perfectly honest they are bad at their jobs. The purpose of HR is to protect a company (which in practice means, its senior managers) from the employees.
No, the purpose of HR is to manage one of the company's most valuable assets. Acting adversarially is a great way of driving away the most valuable assets.
So why does anyone good work at Amazon? And if the only people left at amazon are most crappy people willing to take the abuse, how can they build such a thriving company?
They actually do pay shitload of money to senior and especially principal people, mostly in the form of stock grants. They have really strange vesting schedule too: something like 5% first year, 5% second, 45% third, 45% fourth. To compensate for the dropped income they give you sign-up bonus for first and second years.
I left before my first vest as soon as interesting start up showed up (start up didn't survive, but at least it was fun).
Thanks for sharing. Makes me feel even luckier for failing to get an an offer after being flown in from the east coast in for an interview, around 3 years ago. The gloomy Seattle weather was the first turn-off. The smug (American-?)Indian guy that interviewed me with his legs on the table, chewing a gum and barely looking at me was the second. Glad to dodge this bullet.
It's rare that you can find candid descriptions of what it's like to work somewhere.... since Steve felt free to be candid, I figured I'd share my experiences.
FWIW, I believe this is the exact kind of thing that glassdoor.com wants to hear.
Whenever people ask me if they should work at Amazon, I always say maybe in AWS, but never in anything to do with the retail website. I'm glad I did it, I certainly learned a great deal, but whenever a recruiter from Amazon calls these days I just laugh in their face.
Also, when I left two years ago they weren't using AWS for anything internally. S3 got a lot of use, but anything considered essential to keeping the site up had to run on real hardware.
That first month after I quit, it was such an amazing feeling not to have to go on call. I agree, never take a pager unless it's an essential part of your job.
Interestingly, 3 times in the last 2 days, I've had the amazon.com website give me a 404 on a link on one of their pages. I don't remember ever getting a 404 on their site. In all the years I've been using them, which is a long time.
Your rant paints a bleak picture, and I hope my experience of the last 2 days was coincidence.
> of course, and I had to do it- RIGHT THAT MINUTE- in the middle of the night.
There is your problem right there. Why in your sane mind would you even consider fixing it at that moment? You should have told them to FUCK OFF - right at that minute - and gone back to sleep. Right there and then a loud and sound go fuck a rake and fuck off.
I think that in general, when you’re in a toxic work environment, you either realize it’s toxic or you don’t. If you don’t realize it’s toxic, then you are likely to assume that anything the boss blames on you really is your own fault, so you try to be a good team player, which is generally inconsistent with telling the boss to fuck off. If you do realize it’s toxic, then you will be looking for another job—but you don’t want to do anything that would get you fired before you can quit with dignity.
You're absolutely right. It would have meant I lost my job. When Bezos is posting on a ticket, everyone knows it. All the pressure rolled downhill right onto me. This means that, even if I did tell them to fuck off, I wouldn't have been able to get back to sleep. On some level I would have felt I was shirking my duties, and after all, I'd lobbied hard to get it fixed, months before.
I think, ultimately, it is kind of like an abusive relationship. People stay in them because they are manipulated by the abuser. Amazon has a manipulative corporate culture. It's a little bit like a cult.
I'm actually a bit hesitant to talk about this, even years later, because I expect to be attacked for it. (But I'm still pissed off, years later. And I don't really hold grudges, normally.)
I _hope_ I would I told my boss to check his email. Then I'd send him, cc: Bezos, a copy of the email from two months ago. I'd note that I'd done _my_ job, and that I wouldn't be _told_ to do someone else's, for free. If this meant I wasn't their kind of employee then they weren't my kind of employer.
I don't know that I'd actually have the stones for it. But that would be the right choice. I imagine you'd agree, better to get fired, then and there, than be pissed about it for years.
> I think, ultimately, it is kind of like an abusive relationship.
That is exactly what it is. I hope that your posting here will get read by lots of people at amazon that are treated like you were (or worse?) and that it will open their eyes.
One problem of being in an abusive relationship is that you no longer see it as such.
Nirvana, I'm very impressed by your latest answer which shows a lot of maturity and knowledge about yourself. It is so very easy to write "well, I would have told them to fuck off", but in my experience very few people do that in reality, regardless of what they say when not in that specific situation.
I agree that it is quite like an abusive relationship which is of course why you should get the hell out of there. Nothing you say or do will change the other part in the relationship (amazon in this case) and you should just learn your lessons and move on.
Although your employment at Amazon is not something that you look back on with fond feelings perhaps you can agree that it is something that has taught you a lot and in that regard was a good thing for you?
I wouldn't have told them to fuck off, but I'd have thought long and hard about the politics of the situation and what sort of edge I have (if my situation was as dire as yours was made to be). It seems like that could have been your moment.
You don't like politics, but it seems like at some point you have to come to terms with the necessity of politics to effect change in a situation, that is to say if it's worth it. You clearly have an opinion on how things should be done. Bottling that sort of stuff up is toxic.
I think in a healthy, functioning, company there is some politics. The thing about amazon is, it doesn't matter to anyone that I had pointed this out months ago. From my boss up to the person who reported to Bezos, every one of them would be embarrassed by it, but what could I do? Threaten to tell Jeff Bezos? He doesn't care. He was in the ticket and they were all pointing the finger at me. Me coming back and say "But, I pointed it out months ago"... would result in "therefore its your fault because you weren't persuasive enough!"
You can't make people take responsibility. Hell, Bezos would probably say I should have made the change anyway "You failed to take initiative". But if I had made the change, I would have been fired "You're not a team player".
Asscovering is the rule of the day and its very easy in that environment.
Making the code capable of the correct (but apparently not desired behavior), with a simple flag to turn it on is often the right solution (when you've received insurmountable push back, "Disagree and Commit!"). At that point, you document it in an oncall wiki and when someone finally decides it's actually a bug (or the people that said no 'go away'), it's sitting there with a good audit trail so you can tell your teams oncall one or two words and they can flip it over in a few minutes (after some QA). Note: I only learned this after surviving a really bad manager. I'm not saying you should have known to do it.
Having worked for companies like this, I know exactly what you mean. Even the anger, 3-4 years after leaving one of them, is still there. It's a bit crazy, but then, this is somewhere you spend 1/2 of your waking life....
> I'm actually a bit hesitant to talk about this, even years later, because I expect to be attacked for it.
A bit unfair, don't you think? There have been several HN threads about Amazon in the last few months where former employees chimed in, and nobody has been maligned for it.
I have mentioned this in the past, on HN, though much more briefly, and was attacked for it. (Though this was on a previous HN account.)
I don't consider HN to be a very receptive environment, especially if you're saying anything perceived as "negative" about certain companies, including Amazon, Google, Facebook etc. Though it varies widely, of course.
Re: the abusive relationship, that's exactly how a lot of bad employment situations work. The parallels are pretty much perfect. This post really opened my eyes about how this kind of situation is set up: http://issendai.livejournal.com/572510.html
Amazon was a purely political environment where, if you weren't watching your back you'd get stabbed and become a rung in someone else's ladder. In our group, the manager had zero engineering experience (literally had gone to college to be a prison guard, somehow ended up "managing" programmers, though barely computer literate.) In fact, it was so bad that when I'd finally had enough, and quit[1] (because my transfer to the AWS team was blocked by the prison guard) I vowed never to work for anyone else, ever again. Which means, I had to do a startup.
Anyway, the SOA effort was in full swing when I was there. It was a pain, and it was a mess because every team did things differently and every API was different and based on different assumptions and written in a different language.
But I want to correct the misperception that this lead to AWS. It didn't. S3 was written by its own team, from scratch. At the time I was at Amazon, working on the retail site, none of Amazon.com was running on AWS. I know, when AWS was announced, with great fanfare, they said "the services that power Amazon.com can now power your business!" or words to that effect. This was a flat out lie. The only thing they shared was data centers and a standard hardware configuration. Even by the time I left, when AWS was running full steam ahead (and probably running Reddit already), none of Amazon.com was running on AWS, except for a few, small, experimental and relatively new projects. I'm sure more of it has been adopted now, but AWS was always a separate team (and a better managed one, from what I could see.)
Regarding Bezos's micromanagement: I do remember, one fall, in the run up to christmas, surfacing an issue with the site several times. My manager told me that his boss didn't want to change it, but I knew it was a bug. I went above his bosses head and told that guy (who was a Bezos report) about it. I even cced Bezos on an email about it, and of course, the VP chewed out his underling who chewed out his boss, who chewed out me.
Then, at 3AM, the night before I was supposed to fly out to visit my parents for thanksgiving at 10AM, I was awakened[2] and made to fix the problem. The problem I'd wanted to fix 2-3 months earlier. The problem I'd gotten chewed out for trying to surface but been told "won't fix" all the way up and down the chain of command. Because Bezos had gone to buy something on the site and had seen the problem himself. So, my thanksgiving trip was ruined, of course, and I had to do it- RIGHT THAT MINUTE- in the middle of the night.
The icing? After fixing it and going back to bed, and coming in the next day (which was a vacation day, mind you, as I was supposed to fly that day...) I got chewed out by my boss for coming in at 10am.
I don't know about you, but if you get woken up at 3am and spend 2 hours coding, you should be allowed to show up for work the next morning at 10am.
Bezos was right that it needed to be fixed. However, he must be a B player because his direct report was a C player who wouldn't let me fix it when it was discovered.
Yeah, I wouldn't recommend you go work at Amazon.[3]
Sorry if I've gotten off topic. It's rare that you can find candid descriptions of what it's like to work somewhere.... since Steve felt free to be candid, I figured I'd share my experiences. I also worked for other large companies, like, for instance, Microsoft. Microsoft was weird in a sort of cult like way, and had its own management problems, but was much more enjoyable... and really treated their employees a whole lot better. At MSFT, hardship was having to share your office with another programmer. At Amazon, I was literally in a hallway, with a dozen other people, with major foot traffic walking past my desk (And right behind my chair) all day long, a lot of noise and a very large window over my shoulder reflecting right into my monitor... all day long.
Worst Job Ever.
Thank you for indulging my venting.
[1] It wasn't just me either, by the time I left, %60 of the team had already gotten internal transfers or resigned. I was being loyal, and went to HR to try and get some advice or mediation, but despite being promised confidentiality, the notes of my meeting with the HR rep were forwarded to my boss.
[2] At amazon they have this crazy idea that engineers should have pagers. I'm sure it sounded great at the time. I didn't have the pager that week, but that didn't matter to the boss[4], who knew I'd been the one to find the issue. So he called me. I think the phone rang for a good 20 minutes before I woke up.
Never let your employer give you a pager, unless you're an ops guy.
[3] After I left, and after my team was literally decimated by the hostile environment created by our boss, I found out he got promoted! Yep, now he's managing managers.
[4] Why was the boss up at 3am? Well, Bezos called him, but he'd been up already... he was a hard partier who, just between you and me, also was selling drugs on the side. Most of the stoners in PacMed were getting their bags from him.