I can't speak for other because people choose different walk of life but I thought I share what I felt about specialization vs generalization w.r.t to large companies and startups.
Generalization will limit career and compensation eventually. There will be a point where the market will have a glut for general skillset.
Specialization, on the other hand, usually leads to higher compensation and valuable skillset.
This does not mean that Specialist can't be Generalist. It could be that Specialist was once Generalist and get bored :).
By 2012-2014, the landscape of web development has not changed drastically so if a Generalist stops doing what he/she did and chose to be a Specialist from 2014-2018 (say, in Storage design, Distributed Systems, Machine Learning, or AI), that doesn't mean he/she can't go down to the product/web layer and contribute: it's still MVC doing CRUD backed by MySQL/PostgreSQL and with a touch of some client-side stuff.
Generalization will limit career and compensation eventually. There will be a point where the market will have a glut for general skillset.
Specialization, on the other hand, usually leads to higher compensation and valuable skillset.
This does not mean that Specialist can't be Generalist. It could be that Specialist was once Generalist and get bored :).
By 2012-2014, the landscape of web development has not changed drastically so if a Generalist stops doing what he/she did and chose to be a Specialist from 2014-2018 (say, in Storage design, Distributed Systems, Machine Learning, or AI), that doesn't mean he/she can't go down to the product/web layer and contribute: it's still MVC doing CRUD backed by MySQL/PostgreSQL and with a touch of some client-side stuff.