5 ms·
It makes a lot of sense. People don't need a CS degree to do programming or even to be really good programmers. They just need to have a passion for constantly
by ta1234567890 7y ago
It makes a lot of sense. People don't need a CS degree to do programming or even to be really good programmers. They just need to have a passion for constantly learning and solving problems. Then they'll be able to figure things out as they go, just like all of us do. There's only so much pre-training you can do.
Also, a much better predictor than school, of how well someone will do at a job, is how they get along with their team. If they have a great degree from an amazing school, but they don't get along with their teammates, they will perform very poorly.
- p1esk 7y agoPart of the value a good school provides is learning how to get along with teammates, during many class projects one has to do to graduate from a good CS program. Re passion: you need a lot more of that to be "constantly learning and solving problems" for 4 years, rather than for 3 months. What do you think people do in college? Party non-stop?
- maxaf 7y ago> What do you think people do in college? Party non-stop? Yes, that's exactly what they do.
- commandlinefan 7y agoNobody parties harder than CS majors.
- deleted 7y ago[deleted]
- potta_coffee 7y agoLearning to get along with teammates can happen in many different environments. I learned those things from sports, working construction, military experience, and a few other places.
- asdfman123 7y agoAlso I think the formal education system weeds out people with major personality problems. People who have trouble with authority or showing up to places in time don't graduate.
- mieseratte 7y agoOddly all of my worst coworkers had degrees. The folks who would bullshit their way through life, never really do work, expect their coworkers would pickup the slack. Most of the self-taught or folks with blue collar or military background have been the best. Hungry and resilient. Strange crowd at times, but great people.
- torgian 7y agoYeah we can be a weird bunch ;)
- com2kid 7y ago> They just need to have a passion for constantly learning and solving problems. Then they'll be able to figure things out as they go, just like all of us do. The best people can learn on their own everything college teaches. College is designed to help ensure there aren't any skill gaps. It isn't perfect, but I'd expect someone from a good university to be able to: 1. Put together a professional looking presentation. 2. Have good to above average written communication skills 3. Sit in a meeting with engineers from a different discipline and have at least some vague idea what is going on, and have less of a ramp up before they can start contributing. 4. Have an understanding of statistics and calculus. 5. Be at least familiar with all of the main hard sciences (chemistry, physics biology) 6. Have a greater than average understanding of, at minimum, the society that their college was based in. When it comes to technical abilities, 4 years of learning is going to better prepare someone than 6 months to 1 year of learning. Multiple programming paradigms help a lot as well, someone who knows just JavaScript or C# is going to have less mental tools at their disposal than someone who has programmed in purely functional programming languages, used pattern matching, and who understands what code actually compiles down to. I've hired from boot camps, 4 year programs focused on games, and CS programs. The best boot camp graduates are of course amazing, but just coming out of school they are lacking a lot of skills, and there is no guarantee that any random boot camp graduate will be able to pick up those skills (again, of course the best ones can). CS programs have no problem failing students out if they hit the C++ courses and can't hang in there. Graduates from schools like DigiPen can hang in there, but they also have huge gaps in their knowledge that have to be filled. (On the flip side, they also have skills that people with CS degrees don't have!) A student from a good CS program should be well rounded. Ideally they should be able to join a team doing low level systems programming and ramp up on embedded C just as easily as joining a team writing some sort of insane load balancing / network caching system.
- jstummbillig 7y ago> It makes a lot of sense. People don't need a CS degree to do programming or even to be really good programmers. Even more so (and maybe more shockingly) you don't need to be a capable programmer to get a CS degree. I have worked with people who have master's degrees from respectable universities who have not used Git or a command line in their life. And yes, both are teachable -- but then, everything is. It is hard to quantify exactly how much inexperience in any given discipline hurts the outcome to what degree, but I feel there is a strong bias towards algorithms over practical skills, including having worked on and completed real life projects, that does not correlate well with their importance in common real world situations.
- dvt 7y ago> I have worked with people who have master's degrees from respectable universities who have not used Git or a command line in their life. This is kind of a strange bar to set. There are entire companies that don't use git. In fact, most projects hosted on Google Code (now defunct) were using Mercurial.
- dwoot 7y agoWhile you believe this to be strange, it is just another metric. If you've not used Git or GitHub or any of the cloud providers for Git, it's a signal. To me it signals that someone uses open-source software or has some passing familiarity with it. As a person that conducts interviews, the things that people leave public on a GitHub profile have been a pretty invaluable signal of attention to detail or code quality. If I see someone with a dotfiles repository, it likely means that they care about their craft a bit, and it factors into a part of the whole evaluation pie.
- NTDF9 7y ago> I have worked with people who have master's degrees from respectable universities who have not used Git or a command line in their life. I think you're too young to know that code management systems existed before git.
- 7y ago
- streetcat1 7y agoI think that a better predictor for a programmer skills is how they get along with the computer than with other teammates.
- commandlinefan 7y agoYou're demonstrably correct, but that's not going to stop the "team work makes the dream work there is no I in team" types from insisting that "soft/people skills" are the only thing that matters in any sort of work.
- streetcat1 7y agoThanks. To elaborate more, evolution mandate that in order to be the top 1% performer, you must practice in a specific setting, which in case of a programmer implies dealing with logical , precise structures of programming, than the messy, sometime illogical world of humans (also known as politics).
- heavenlyblue 7y ago>> logical , precise structures of programming, than the messy, sometime illogical world of humans (also known as politics). In my Computer Science libraries and applications are written by people and people make political, marketing, historical and technical choices that directly influence the design of the said software. So whatever you're saying about "precise structures of programming" is clearly heavily dilluted by "the messy, sometime illogical world of humans". It seems like in your world Spectre would never happen. But it did happen in mine.
- streetcat1 7y agoI did not said that a programmer (even the best one) do not create bugs or misunderstand requirements. Of course they do. The original question is what is more important when hiring: a team player or technical skills. Everyone has both but at a different share.