3 ms·
This article is just a list of unfounded assumptions about the side-skills that CS programs teach . In my experience working with fresh CS grads and PhD student
by tikhonj 7y ago
This article is just a list of unfounded assumptions about the side-skills that CS programs teach . In my experience working with fresh CS grads and PhD students, these skills are not taught with any consistency and have to be picked up in the first six months to a year of full-time work. At the end of the day, an academic program is just a loosely connected set of courses that don't even do a great job teaching the subjects they're focused on, so we shouldn't have high expectations of how well the courses teach skills they aren't focused on!
The kind of full-immersion one-on-one mentoring you get as a junior member of an effective team is going to have a much larger impact that anything you do in your formal education. And that's a good thing too, because I've worked with numerous CS grads who:
• are weak communicators, especially in writing
• are not effective in a team, either for interpersonal or technical reasons (ie writing unmaintainable code)
• are not particular fast or effective, especially in situations where projects and priorities are not fully specified
Now, to be fair, some fresh grads are great on all these points. Just as I've worked with ones who are incompetent, I've also worked with some who are as effective as senior engineers right from the start. But that is not entirely common and almost always a function of things they did on top of getting a CS degree. It's hard to reason about counterfactuals, but I am sure that the same fresh CS grads who are incredibly effective would still be roughly as effective even if they had taken a different path to becoming a professional programmer.
And even if there is any systematic difference between junior programmers with and without degrees, I am absolutely certain that it gets completely erased after several months of working and mentorship in a professional context.