So while FB certainly intended to fire underperformers and increase average performance, I doubt they were able to identify the right people for that.
Not to mention that the remaining "A" players may each be saddled with the work of ten laid-off "C" players because, as far as management is concerned, programmers are fungible. Why not have their 10x programmer take care of it?
Or maybe you're not as good of a judge of these things as you think?
Don't know much about Meta's HR department, maybe they're really good at that. But in the end we're all humans and never unbiased when we make those decisions.
a) the technical challenges at these large tech companies are probably way more interesting
b) compensation is very likely better
c) you are working with many many more peers who are super talented
Not really, if I come up with a novel algorithm or a different architecture to do a task better at Google then they will give me the chance to implement it even if it takes months or years. Small companies doesn't care about your ideas, they just want a cog that can give them a basic website because that is all they need, novel things doesn't help them.
If you mean "novel product ideas" then sure, but we aren't product managers we are programmers so our ideas would mostly be related to architecture or algorithms.
Yes, just not challenges that requires ideas to solve. They are mostly just following the same path every other tech company went, re implementing the same systems. To them it doesn't matter if the system is better or worse, they just want a system since going from 0 to 1 is huge, meaning that they wont give you time or resources to implement your idea, they just want a cheap idea.
This is a very strange point-of-view.
I've worked in "small" (~100 employees or fewer) business my entire career, and not once was it strictly CRUD stuff in C#.
The freedom is debatable, I guess, since I have no experience at larger companies, but I certainly never found that my freedom is confined. Most often there is opportunity to contribute anywhere and everywhere, and management is happy to have the help.
Similarly, most of the devs I've worked with that are obsessed with "exciting" work still turn out pretty questionable stuff, and their careers would probably be better served if the built out a "simple" CRUD app, took it really seriously, and then examined the effects of their design on other teams.
As other have said: is there such a high demand right now ? And if you know and feel that you are an "A" player; and so far you have seen "C" players getting laid off, you might actually feel that the average level of the people you interact with increases which makes you want to stay more.