I've stumbled upon this: Working as a Software Developer but then I've realized that there's a couple of things missing from it:
- the number of programming languages one has to know and the way to solve problems in each of them. It's like speaking a foreign language for each programming language you know. And while you can learn the abstracts and apply them based on the language you need to write the code in, you still have to know the caveats and how to optimize things for the specific language
- the sheer size of the information in the industry one needs to keep up with every day / week / month so that you can always make the best decisions when implementing changes