4 ms·
There is very little overlap between computer science and workaday software development. Some analogies might be that an auto mechanic doesn't need a mechanical
by caymanjim 6y ago
There is very little overlap between computer science and workaday software development. Some analogies might be that an auto mechanic doesn't need a mechanical engineering degree, and a chef doesn't need a chemistry degree. Most software engineering work is skilled craftsmanship. You don't have to know much about the inner workings of a computer, or have the ability to invent (or even understand) efficient algorithms, in order to use the tools of the trade to construct something. Having the theoretical and academic background is helpful, opens a lot of doors, and is required in some challenging environments, but the vast majority of professional software developers don't need CS fundamentals to produce software.
I've got an academic CS background. I didn't learn much beyond what I'd already learned on my own, and the more advanced topics didn't stick because I didn't use any of them for the first decade or so of my career. Only a few jobs in the ensuing decades used any CS theory or advanced fundamentals. My bread-and-butter is web app development and devops, and I do believe anyone can learn to do that without a CS background. Especially in the current market where there are so many unfilled openings. There are plenty of small companies where a self-taught developer can thrive; not everyone needs to be a FAANG-level engineer.