Here's my conspiracy theory: It's a jobs program.
If you been in other areas of software engineering like embedded development, OS development, language development, database development, game development.... then you will see that Web development is the easiest and most accessible. The filter for intelligence in web dev is much less stringent and thus the people in web development tend to reflect that.
Not trying to offend anyone. I've been a web developer most of my career and I switched to embedded development and I have to say, web dev is definitely really easy.
These things are trivial compared to what other fields of software engineering have to deal with (and other fields have to deal with all this stuff too along with extra harder stuff as well)
At the most advanced levels of pure web dev it is still FAR easier then other fields of programming. It only gets a bit harder at massive massive scale, which 99% of developers are shielded from through frameworks or the fact that the company itself doesn't deal with that level of scale.
And what's that level exactly? Creating one's own markup language or browser engine from scratch?
It's blurry in this area. It's hard to fully define and arguing about the borders of this field is sort of pointless.
Take the definition to be fuzzy but to be referring to the Majority of Web Developers in general, and advanced web developers to be people that are harder to define.
>It's hard to fully define and arguing about the borders of this field is sort of pointless.
I don't think it's pointless at all. If advanced pure web dev is relatively less complicated ,even at the highest levels, then it's important to define where the line ends and begins. I might not have the answer, but I think it's an interesting question worth asking instead of leaving such definitions up to a God of the Gaps-like argument.
99.9% of front end web developers and back-end as well won't even know how to begin to do this in C or C++. Nowadays to even build a trivial renderer in C or C++ using vulkan is not something someone can pull up a tutorial for and learn. Not like React or Vue or even some backend framework.
>I don't think it's pointless at all. If advanced pure web dev is relatively less complicated ,even at the highest levels, then it's important to define where the line ends and begins
You accomplish nothing with this other then to put one set of developers in a stupid bucket and another set in a smart bucket. These buckets are real but specifying and talking about the bucket only pisses people off. Additionally the line is very complicated and has several dimensions and in many areas the line is not a line, but a gradient.
You'd only be aware of of this dichotomy if you worked outside of web development (and not in datascience).
I disagree but I suspect an argument about difficulty will go nowhere until we have a proper way of measuring such things. But for reference, many Javascript tools and frameworks are made by FAANG teams (like React, Angular, Yarn, etc). If smart people are working on these problems, I would expect them to be hard.
This isn't a logical statement. Who says smart people can't work on easy problems? Is there some rule that says smart people HAVE to work on smart problems? FAANGs definitely has a bunch of mundane problems to work on, and they have an over abundance of smart people to work on those problems.
>I suspect an argument about difficulty will go nowhere until we have a proper way of measuring such things.
Not everything has to be done through scientific measurement. If I punch someone in the face I don't need some scientific measurement to tell me he will be in pain? No. Anecdotal experience is enough here, and such "measurements" only serve to make things too pedantic.
The same applies to web development compared with other fields of software development. I think it's actually quite obvious. If you disagree, which you're free to do, then I would ask, do you have the relevant anecdotal experience? Have you worked on something outside of javascript or web development?
If not then I would say your experience and thoughts are biased. Among most people who have experience in software development outside of web, it's obvious them. If I'm wrong and you do have extensive experience outside of web then I'm actually interested in what you have to say because it's like hearing someone say that being punched in the face is not painful at all.
As for anecdotal evidence, sure I have some, my professional experience is pretty evenly split between Java and Javascript, both backend and frontend. I feel like they are of equal difficulty, and to me this is obvious as well. It was always in my power to scale up the difficulty as high as I wanted. I have no doubt you won't be happy with this answer though
You seem to view FAANG as some school of superior humans. I can assure you the amount of variance in intelligence is quite high.
But let's assume everything you said was true. It doesn't change the fact that FAANG can put full time employees on EASY problems to produce "FAANG level" work. FAANG companies have a bunch of menial developer jobs that need doing. And if the only people in the building are geniuses then the geniuses are the only people available to clean the toilet. Yeah and you can probably expect them to build a robot (that no one will use) that automatically cleans the toilet.
Additionally I should mention that google in FAANG is a bit different in terms of web. They use C++ for most of their backend services for scale, so it's a step above typical web development. Although I'm very sure it's not too far away as their developers extensively use frameworks so the experience of development doesn't deviate too much from your traditional golang or java app.
>As for anecdotal evidence, sure I have some, my professional experience is pretty evenly split between Java and Javascript, both backend and frontend. I feel like they are of equal difficulty
A web dev includes both "backend" and "frontend" your statement shows that your experience is exclusively web dev and as I suspected very javascript focused. When I said web dev was easy, I wasn't talking about just front end. I was talking about everything from the front end all the way to the back end. This includes architecture, optimizing queries and all that jazz.
>I have no doubt you won't be happy with this answer though
No of course not. Don't attribute it to some predictive power you have about my bias. It's not, I stated plainly what was needed. I literally stated what it takes for me to be interested, and you literally stated that you had nothing. I'm pretty sure your opinion will change if you ever do a big software engineering career switch outside of web.
Well you did say you have experience with Java but you never said what you were doing with that Java. So if you're one of the few developers doing things outside of web with java then I stand corrected.
Your (incorrect) assumptions are a bit of a red flag. But honestly not too surprising given your earlier statements. However now that I've shared my professional experience, what about yours?