4 ms·
Public code repositories are the first place I go when I look at applicants. Surprisingly, however, public code rarely tells you anything about a user's CS fun
by jnovek 16y ago
Public code repositories are the first place I go when I look at applicants.
Surprisingly, however, public code rarely tells you anything about a user's CS fundamentals. Can they tell me the time complexity of a method they just wrote? Do they know the difference between a depth first and breadth first search?
I've met individuals with good code who were unable to answer CS 101 level questions like that. It's not a deal breaker, but it needs to be given some weight and consideration in hiring. It's also a matter of seniority -- I would never offer a senior developer position to someone who didn't have CS fundamentals because I expect such a person to solve hard problems that fall outside of "hacking up a webapp".
- joh6nn 16y agoi think you and i must have taken very different CS 101 courses. CS 101 where i came from was "learn you some control flow, for great mediocrity".
- obitoo 16y agoPossibly the difference between "Computer Science" and "Computer Studies"?
- joh6nn 16y agoi don't think so. CompSci 101 is gonna be stuff like fizz-buzz. you're gonna learn the absolute basics: loops, conditionals, maybe even functions, depending on how the course is structured. but depth-vs.-breadth? calculating big O, or even what big O is? that's not intro level stuff. it's certainly important, and i agree that you should think long and hard before hiring someone for a senior role if they can't handle that kind of stuff. i just strongly disagree with categorizing it as introductory.
- jnovek 16y agoYou're right, I didn't literally mean CS 101. In fact, at my university I believe the class was CS 1511. What I mean is, "Things that a CS major probably should have been exposed to in his or her first year of college."
- Robin_Message 16y agoThe University of Cambridge's computer science course includes big-O notation in the first term. It is introductory. Look at it like any other subject: you spend a lot of time analysing and understanding existing work before you make new work. Why would it be different for computer science? The introductory course syllabus is at http://www.cl.cam.ac.uk/teaching/1011/CST/node11.html http://www.cl.cam.ac.uk/teaching/1011/CST/node11.html if you're interested.
- deleted 16y ago[deleted]