a15971
Browser also severely limits the bloat, mutual compatibility and privacy issues (also Android and iOS up to certain extent). This makes technologically much easier to have a bunch of different content stores on the same device.
They remain one-stop shop for games. The gamers don't have to weigh down their systems with a bunch of different bloated game stores, each "needing" several GB of memory occupied at all times and adding minutes to machine startup.
Not to mention conflicts between a bunch of different anti-cheat and anti-piracy technologies on the same machine. And stores with bad UX (e.g. that make you suffer additional wait screens or naggings; Steam is as unobstructive as it gets).
Compare that to Netflix: at the begining, it was a "one stop shop" for movies, it had a lot of classic movies for reasonable price. When the concept was proven, the production houses revoked the license for content. Competition came to the sector and each movie production house set up their own subscription based streaming service. You need to keep paying a whole bunch of services if you want to be able to keep up with all popular TV production or watch classic movies.
So, the competition would in theory be great. But even if stores didn't have subscriptions, the gamers don't want to fill their personal data, check privacy settings, configure, troubleshoot, debloat, ... a different app store for each game. When people have a slice of time to play, they don't want to deal with all of these.
I'm sure that when Valve forgets what keeps them successful and start becoming a Netflix, the Steam store will get replaced.
Us, the older folks, are not allowed to complain, lest we get branded as old fashioned, unable to adapt, etc.
EDIT: Speaking as a European.
They don't do that because they are lazy. They do that because of competitive pressure. In SW development, in most cases, particularly in enterprise development, "the fastest person wins". Whoever moves fast and delivers fast will get to do more projects and have more influence over direction of projects. "Not reinventing the wheel" is of course in vast majority of cases faster than reinventing it.
Because in most cases it's not important to write the best possible code, it's to write "good enough" code, on time and on budget. Insecure code is of course not "good enough", so competitive pressures will adjust accordingly.
Of course there are jobs at the intersection of those sets, but also there is much competition for them. It's harder to find them and you might have to accept lower pay for them.
You also mention "corporate world": larger teams impose their tax on participants. "The Mythical Man-Month" book (by Frederick Brooks) says that for a team of size n you have n(nā1)/2 possible communication paths between participants, which means that the communication and coordination overhead rises much faster than the team size. This accounts for half of your time being taken by "process".
So small companies migth be more interesting, but also riskier (because small companies are tipically start-ups which haven't yet confirmed the validity of their business model). Of course there are exceptions, but on average this also means you get paid less.
One case study for fun job is id Software at the beginning - the guys who developed Doom, the first significant 1st person shooter game. In early 1990ties it was the most installed software on computers by one Microsoft study (googling for details left as an exercise for the reader). The game was technological breaktrough, something new, it had massive impact and was financially successful. And you bet they had a lot of fun doing it.
Edit: corrected the group intercommunication formula
You make a name for yourself in SW development by adding features that others deem useful. You get money (in commercial setting) or prestige (in freely distributed software) if you seem to be producing something useful. It's trivially easy to recognize a contribution that adds code, but it's hard to recognize a contribution that means absence of something (e.g. absence of bloat, absence of memory hogging, ...). You get inclusion in newer, larger or more important projects easier the more you make yourself recognized.
So any useful software gains more contributors that add things than those who remove things. Commercial code can and does gain developers if it earns money, open source software gains developers if it is deemed useful by programmers.
This is a force that shapes both the group of involved developers and the resulting software in a process akin to evolution. In both cases the selection is biased towards adders of code. There's also always possible to add improvements that help some use cases and audiences. On the other hand, arguing for removing something or limiting might make you unpopular (you are seen as an obstacle to everlasting progress) and removed from the group of developers. Rare people have enough recognition and clout to prevent inclusion of something (Linus Torvalds is one of them - he can get away with rejecting patches to Linux kernel and he can play the role of the kernel guardian).
On the whole, software expands until it fills the resources available.