Well at least harming Amazon is a net good
Was in this position at Microsoft for two years. I already hated them because I ended up working for them after they acquired my smaller company. Pennies on the dollar, massive layoffs beforehand, fired literally all the most important people (which is why I wasn’t fired, I really am just trying to collect a paycheck and do nothing more).
Anyway, ended up basically being placed in a middleman position that I quickly realized didn’t need to exist. Basically, spent two years slowing down communication between my companies team and the existing Microsoft team. Literally, I just kept the two teams from directly communicating and going through me for everything. I think I wrote less than 1000 lines of code during that time.
And no, I didn’t like my team either from the original company. They were all new hires prior to us being acquired and they fired everyone on my team that had worked on the project for nearly 5 years. So, didn’t feel bad about slowing them down either.
Basically a shitty startup that milked it’s employees with hopes of Microsoft becoming our customer. Encouraging people to exercise their options only to sell the company for pennies on the dollar and fire them.
Got through two years of slowing down an awful genocide supporting company before the layoffs finally got me.
Was a good run.
Not really. If that service costs x2 in compute, it also means it causes x2 pollution.
You write clean code and you get replaced in 2 months, because everyone can work on that code.
You write an unreadable mess that no raise will convince other employees to work on and suddenly your holiday requests don’t get declined anymore.
It’s almost like the “meritocracy” under capitalism is a bald faced lie.
Reminds me of the time when we wrote an internal tool with strict SOLID principles. As new programmers came on, they had no idea what was going on cause no one in college told them about design patterns. Most of the OG’s quit soon after and the new guys remained.
Or you get fired because everyone else says your code is an unreadable mess.
In my experience… nope. Never seen it happen. Even when there are clear coding guidelines, and stacks of code smell violations.
If the code actually works and is vaguely important, I think you are right.
If anyone ever has to fix it because it’s also broken on top of being a mess, well they aren’t quite so safe. Maybe if you are always available to fix it same day, but if you ever go on vacation and it hits the fan while you are unreachable…
I fought for getting a 4/5 rating at an old job and gave lots of examples. Their argument was that I didn’t deserve it because those were just expected. I pointed out my work compared to others in my team and was told that it compares across the company, not the team. I kept causing a fuss about it because I was so angry about it and finally my manager said something about the bonuses has already been communicated and people would be angry to get less. I was confused because I didn’t want more money, I was just offended they said I was performing on average when I was going above and beyond every day. It was also really embarrassing to me. If they’d just said the rating doesn’t affect anything except your bonus I wouldn’t have even cared.
The whole thing is all BS.
finally my manager said something about the bonuses has already been communicated and people would be angry to get less
That’s because they have a fixed budget and the proportions are tied to evaluated performance tiers, increasing your rating would contractually require them to compensate you more from the same pool of money
You’re falling for the “we’ve constructed this machine to tell you no so you can’t argue with us” ploy
No, as I said to another, upper management has every opportunity to fix the budget. Your direct manager however can not
I’ve found that laughing in their faces and putting in 2 weeks is fairly effective at breaking that wall. Amazing what money they can find when faced with the alternative. Otherwise, the correct move is to actually leave. All of you cowards that submit to the machine make it worse for everyone.
And I have in fact left that kind of jobs myself. Not trivial in a job market like this one though.
Need to make unions stronger again.
Nah, that’s bogus. It’s a private company, they can do what they want. They could have absolutely given OP the 5/5 rating, and just had them sign something saying that they were content with the bonus appropriate to a 4/5 rating. No one would have had to receive a penny less.
It’s very annoying to have managers say their hands are tied when they very well could go to bat for you with their superiors. I was lucky to have one manager really push for me in the past like that. It’s rare.
Yeah, no shit, thank you for repeating what I said. The point being I never cared about the money and didn’t even understand it was only about the money. I only wanted recognition.
At one job, my manager had a spreadsheet that he was tapping away at during my review. He had the audacity to tell me that he had to downgrade some things so that he wouldn’t have to go to a committee to defend at the individual or group level.
I transferred to a different product.
I don’t work at Amazon, but we have a similar system. I’ve gone all-in on a couple of subordinates saying they deserved a 4/5 for this or that work. And because they were new-hires, I eventually got the grades punched through after a bunch of hemming and hawing.
Also advocated for my own higher-than-average marks on a few occasions. And just arguing the case gave me the grade as often as not. If everyone in the department had been as stubborn and insistent, I don’t know that they’d have given the whole floor these grades. But the squeaky wheel…
What’s L5 and L6? What’s TC?
L5 and L6 is a label for career progression, like getting promoted from staff to senior, just with different words. TC is total compensation.
Total compensation per what, year?
Yeah, typically per year. And usually it’s called Total Compensation because some of it is in salary, some in stock, some in stock options, sometimes even some kinds of perks, etc.
So all of that gets balled up into Total Compensation, which is different than annual salary
$550,000 a year as a software developer. That’s insane money. You could buy a luxurious house in the city CASH after saving for two years with that salary, where I live. Including other expenses. They are making 3x my salary, also as a software developer.
The “where I live” part is key. Because very likely this person is in SF, where they cannot buy a luxurious house cash with that money, and where cost of living eats surprisingly far into that stupid high number.
But notably, this is why all the normal people who don’t make a half million dollars a year can’t live in SF! 😅
That’s why I mentioned “where I live”. 😉
Big tech pays large amounts of money. This is why people choose to work there.
Well yes, that goes without saying…
PS: 🇸🇪👋
At Amazon you have the following levels
L4 - Junior. A new grad. Expected to be promoted within 2 years or let go
L5 - Mid engineer. Very wide band. Encapsulates anything between a level 2 engineer and a team lead at other companies. Can be expected to lead individual teams at times. Is considered a “terminal” position (there’s no expectation of a promotion past here)
L6 - Senior. Has the scope of what a Staff engineer would at other companies where you’re not only concerned with your team but others in the department. I think like 10% of engineers ever hit L6
L7 - Principal Engineer. You have like 1-2 of these per department. These are more like architects at other companies. About 1-2% of engineers ever hit this band.
L8 and beyond are for fancy hires and shit. Very few if anyone ever works their way up to those bands.
Yeah this was my experience when I worked there. Driving goals and doing good work isn’t enough. You need a fancy project to demonstrate “expanded scope” otherwise your promo would get rejected.
Sometimes things worked the way you wanted and people got promoted doing their normal job. A lot of times though there were a lot of fancy projects built to get people promos that suckers got stuck with the bill on.
This ain’t a case of one dude scamming the system as much as it is institutional rot from red tape.
Its pretty well known that “lines of code” is a horrible metric to judge programmers with. It seems “number of new projects” is pretty similar, though at a higher level of abstraction.
Unfortunately that metric is applied to a lot more than just programmers; and I think getting rid of it would involve completely restructuring the type of activity our society is oriented around, and would run up against the life philosophy of the people in charge.
Of course I’m not against progress, but I’m talking about executives that don’t plan beyond the next quarter, politicians that don’t plan beyond the next election cycle, the endless pursuit of growth, and the inability of market economies to cope with the fact that sometimes inaction is more advantagous than action. All of this encourages endlessly churning out ‘new’ things, without designing those things to last or putting in the effort to maintain them.
Not really. That’s just how it works at mega tech corporations. He should try working for a startup.
The whole thing is pegging my BS meter, including letting an L5 deploy without a code and architecture review, TC, and the fact that they’re posting this and claiming they’re still there.

I’ve got a few friends who work at Amazon, and while the story certainly sounds embellished and a bit too “just-so”, the corporate attitude of make-work to justify a promotion even when its a waste of time and resources rings true as a bell.
Did this guy actually oversee a fully transition to a new service and waste a bunch of internal time and money for a system that’s sub-optimal by any conceivable measure? Idk, maybe. If he’d just written “Twitter” instead of “Amazon”, I’d have taken it at face value no problem.
Did this guy author an overly-complex plan as part of his promotional material, get it vetted and reviewed and rubber stamped by a bunch of friendly higher-ups because they wanted to justify his promotion, and then stuck on a shelf marked “Maybe we’ll do this in 2029 if we’re not busy with something else”? Equally likely.
Does Amazon have a bunch of bread and butter break-fix work they could be dedicating staff to, rather than chasing the next digital White Whale so they can feel cutting edge? Yeah, no shit. Absolutely.
I’ve seen some garbage slide through code reviews. Most people don’t do them well.
I’m doing contract work at a big multinational company, and I saw a syntax error slide through code review the other day. Just, like, too many parenthesis, the function literally wouldn’t work. (No, they don’t have automated unit tests or CI/CD. Yes, that’s insane. No, I don’t have any power to fix that, but I am trying anyway). It’s not hard to imagine something more subtle like a memory leak getting through.
In my experience, people don’t want to say “I think this is all a bad idea” if you have a large code review. A couple years ago, a guy went off and wrote a whole DSL for a task. Technically, it’s pretty impressive. It was, however, in my opinion, wholly unnecessary for the task at hand. I objected to this and suggested we stick with the serviceable, supported, and interoperable approach we had. The team decided to just move forward with his solution, because he’d spent time on it and it was ready to go. So I can definitely see a bunch of people not wanting to make waves and just signing off on something big.
I can’t speak to this situation, but broadly speaking I am familiar with general messed up stuff like this as well as perhaps adjusting some fine details to make the scenario relatable to an audience unfamiliar with the specifics of the real situation and/or obfuscating the details so that the person doesn’t out themselves to someone else familiar with the specifics enough to recognize.
The broad strokes seem plausible and any oddities in details I consider to be less important and/or understandable if it was tweaked for an internet audience.
Perverse incentives combined with underskilled management 😐
[ In lieu of a comment, please see “Bullshit Jobs”, by David Graeber, which is incorporated here by reference. ]
This almost makes me appreciate my current job, where most stuff has been in place for years and any changes take forever.
It’s kind of a bummer that it’s going to take like six months to add a linter, and they only started using git like last year.
I worked in a heavily regulated industry. Everything required a manual test. Let’s say you have an employee ID that is 10 digits long which they use to log in. You had to have some else (couldn’t be the developer) to write a series of tests, get those tests approved by 5 people(with specific titles) then a third person to execute the test, then the second person had to write a report saying it all passed, then that report had to be approved by the same 5 people.
That typically wasn’t the delay. The delay was to execute the tests we needed to stop production. That typically was a 6 week wait(unless urgent for “reasons”) and changes like “I will drop scrap by 83%” was typically told wait till July 4th or Christmas breaks. Why? Because production would be down for 3-4 days typically. Someone had to start the system, ok no entry produces error, executor and developer have to sign a physical paper, restart the whole system, now an entry of 1 digit produces an error, sign the form, repeat for all digit quantities up to 9, repeat for all digit quantities up to the choosen value(based on severity if an issue occurred), 2 people sign for each one, system restarted between each. If you had say an enter button and a cancel button each had to be checked for each quantities of digits. Oh but wait what if someone just types there name… Now repeat everything for alphabet values… What if someone does combination, more tests, more restarts, more signing.
Reports easily surpassed 1000 pages, no one really had time to check all that so I saw so many missed signatures and missed tests. I asked the “senior validation expert” can I just automate a lot of these tests using unit tests and attach a computer generated report of all tests passing and the source code of the tests? " the response I got was" what’s a unit test? "they still don’t use any of them to my knowledge.
Similar boat, it’s kinda frustrating that it takes 6 months to approve 30 minutes of work, but at least the job is boring.
Which VCS did they use before git?
SCP to prod, or ssh in and copy paste. Devops only removed write access to prod machines this month, and people complained. (No, we don’t have docker)
I think they used Amazon CodeCommit for a while, but I don’t know what that’s like.
Wow, I imagine that caused a lot of problems.
You would be surprised how far that type of thing can get you when the team is small and experienced.
It tends to explode when you hit a certain number of people or you replace a senior with a junior who promptly explodes the thing.
we dealt with similar stuff at our company as the design team grew. amazing how far simple systems can get you with basic practices and common sense.
now with triple the team size and a few less than extremely competent people, we have tons of file management issues, even though there are more processes in place to avoid them. I hate it.
I apologize for bashing Java so hard in the past. I wish everyone wrote everything in Java these days. Digital life would be so much better.
You owe royalties
Yeah, Oracle licencing has really taken the shine off Java and relegated it to the legacy dust bin.
Fuck no.
I wish everyone used C#, Scala, Rust or Python (DSLs like VHDL, SQLs and CUDA and super specific languages like C, Erlang, Haskell and Bash notwithstanding).
You can hate on them, sure, each for their own reason, but they’re all very well supported and good for what they’re intended for.
Sure, me too, but that’s my point. Even Java is better than what we have now, especially from the user’s perspective.
I say this is only ok because he did that in amazon. Fuck amazon
If he did that in a medium-or-less sized company that would be a really shitty move.
In a small company noone would try to label you “l5” or “l6” and probably an actual human would make your comp decision. You take the byzantine incentive structure away and people just try to do a good job.
The problem is the large companies like Amazon buy all the small ones and put these people in charge lol
The one thing which COULD justify it, is technical debt. A programming language not supported anymore or in short-term/mid-term, bus factor, too much knowledge transfer, etc. But yeah, lots of times it’s “business as usual” just for “progress” and fancy buzzwords.
Java is still supported… Or did I miss the memo?
What’s Java???
Ok, now fire him.
The fact they had to do this to earn a promotion is an institutional problem. Don’t hate the player, hate the game.
the player can always choose not to play, though
It’s a big company. Someone’s going to play.
hate the game.
Game rules: You want a promotion? Make something cool, improve something while using approaches that will show that you deserve a higher position and, therefore, a bigger salary.
Player: (Lies and creates shit that is even worse than the initial situation.)
Lemmy: Don’t hate the player, hate the game.
More like game rules: manager needs shiny buzzwords and big number go up. Having something that works fine for 5 years is considered stale and corporate culture is all about useless innovation.
Flawless victory.











