2 comments

  • AnonymouslyPost a minute ago

    For SWE's Amazon does not do enough to invest in tools that would speed up the internal and external devs by X%. There's complete tunnel vision in every org and the higher ups don't seem to understand how much more money there would be if they fixed the pain points.

    The clearest example i could give is the code review tools. eg. Both Google and Meta have great code review tools (Critique and Phabricator). You can comment on a diff with a suggestion to change the code and 'approve with suggestion' and the person that submitted the code can 'accept changes and ship'. No going back to dev environment, typing the change, resubmitting and waiting for approval. Please allow me to rant;

    Amazons CRUX is as barebones as possible. Actually it's not really barebones, it's overcomplicated and broken and barebones would beat it. Someone makes a suggestion? There's no 'accept and merge' feature right there that others have had for over a decade now. In fact CRUX ties itself heavily to your local git structure for some reason instead of working on a raw diff of +/- changes which can then be merged by the tool itself and flagged if conflicts. So you have to load it locally, edit, resubmit, wait for new approval and then try to merge. No trivial editing in the online code editor tool. After your reload and update it will probably fail because it's not just a diff that it merges in, it merges based on your local repo state and if you locally had an unrelated unmerged change earlier in your local stack, even if it could trivially merge remotely it will fail (CRUX reporting "i don't see your stack history merged on my side!!!") which then requires a restack and then another rereview.

    It also doesn't allow you to review commits. You have to review the entire stack in one go and there's no way to get a view where you can see individual commits and comment on those. You know how at Meta and Google you'll be drilled on "Break the commits into small reviewable units!!!"? Well at Amazon the team that makes the code review tool is like "fuck that, you have a change of stacked commits? The review has to review all 1000 lines or nothing, screw you!"

    In fact CRUX is so bad i believe it causes a massive drop in code and product quality at Amazon compared to the other big tech co's. I honestly have a strong feeling people let anything but the most major issues slip because the code review tool is so shit it's just not worth the hassle for anyone.

    To go more into the Google vs Meta side;

    Their platforms are wildly different and i have an unusual and controversial opinion that Meta's PHP (Hack) based platform is waaaaaaay easier for teams to collaborate on and is the nicer tech from an engineering point of view. That might sound crazy since it's an evolution of PHP while Google works in 'better' languages. I will point out that Hack looks like Java pretty much these days, it evolved a lot. But unlike Googles Boq based microservices the Hack stack is a big monolith throughout the company. You might balk at that but you know what? It works. Since it's Meta's own language they just add new language features to make it work for them. No care to outside usage. No need for Microservices to make it work. At Meta you can load up the repo locally (it maps over network and doesn't really load locally) and execute and it uses JIT to launch pretty much the entire stack locally instantly. You then make and edit your changes and test on the fly, no recompile. It's pretty damn quick for development. I remember when we added reals and man we had a prototype up quickly. At Google you'd spend a few weeks designing your Boq micro-service for other teams to integrate with and then provisioning how the micro-service runs and setting up alerts etc. Meta just goes fuck that, just edit the code, we'll warn you if your code path appears to use a lot of resources. It's waaaay faster even if you want to argue the Boq path is better engineering (Although i'd suggest better engineering is the path that allows us to go in and make the change needed quickly without undue burdens).

    You can kind of see then when the companies go head to head in various ways. Eg. Google Circles had glacial feature improvement while Meta can steal and implement ideas in weeks (Groups was launched literally weeks after Google Circles showed the value). Amazon doesn't even try to compete in similar areas. We now have the three competing in AI in various ways although for Meta i'm not sure that's an infra issue as much of a leadership issue. I mean seriously who the fuck is Meta's 'head of AI' and why the fuck is he the head of AI over pretty much anyone more qualified? I seriously know PHD bearing L6's at Meta with waaaay more qualifications to be the head of AI and this leadership grates on the whole org there atm. I have no idea what's going on there and it's affecting their whole talent pipeline.

    Sorry massive rant over.

  • znpy an hour ago

    > They don't give a single shit about charity or helping the needy or community contributions or anything like that.

    Back when i was at amazon a senior (L6 at the time) engineer was working on adopting Rust in our codebase and found a small bug in the tokio library.

    He had to send in a bug report along with a patch implementing the fix with an anonymous github account in order to avoid all the annoyances of amazon’s legal ceremonies with open source software (despite using it A LOT)