3 ms·
Just because you've finished a machinist apprenticeship doesn't mean you're a master machinist. It's the same thing for software development. You can learn how
by jcranberry 9y ago
Just because you've finished a machinist apprenticeship doesn't mean you're a master machinist.
It's the same thing for software development. You can learn how to be useful or productive (albeit with a limited set of skills) in several months of applied training. That doesn't mean you're automatically skilled in things such as handling big data, compiler construction, HPC/optimization, systems programming, multithreaded applications...the list goes on.
However, as far as I can tell, not only is a 4 year program overkill for what most people want to do, a CS bachelor's degree usually doesn't cover particularly relevant information. A computer science degree teaches computer science, not software engineering. It's intended to introduce basic concepts which will be needed when proceeding on to do research.
What most people really want is an education in software engineering.
- q845712 9y agoMy background is a CS degree from a liberal arts college, and I've found that my coursework in compilers and operating systems has often come in very useful. Additionally I've found that recent grads who have "computer *" degrees (e.g. "engineering" instead of "science") often are lacking exactly the most helpful and applicable knowledge I picked up in undergrad. That said, I completely agree with your sentiment: Had my priority been to establish a software engineering career, a whole lot of what I did could have been skipped and substituted for things like learning how to write good unit tests. I also strongly agree with you on "finished apprenticeship" vs. "master."