DEV Community

Discussion on: Computer Science fundamentals are still important.

Collapse
 
tracygjg profile image
Tracy Gilmore

I agree, but. Although it is important to know they exist and their purpose, very few of the CS concepts and algorithms learned at university are employed daily. They might be fresh in the mind of new graduates but those of us who graduated more than a decade ago have to look things up to recall the detail.
I have found that interview panels seldom take this into account, expecting candidates to be able to recant something like Dijkstra algorithm verbatim, as if it were memorised only weeks before. Those of us with a few years experience, might have to delve deeper into our memory to recall the exact details. But why do that in the day job when we have the internet or, dare I say it, find a book to look things up.

Collapse
 
moozzyk profile image
Pawel Kadluczka

Any company that asks Dijkstra, Kruskal's, or A* during interviews will have trouble filling open positions. These algorithms are useful to solve only a narrow set of problems. However, tree traversal or backtracking are far more common, and knowing them can pay off.

Collapse
 
mrtillman0000 profile image
mrtillman0000

I think it's by design. CS fundamentals are a gatekeeping device to surface young, fresh minds. it doesn't have much to do with your ability to apply the CS fundamentals. it has more to do with what you alluded to: a new graduate will be more familiar with CS fundamentals.

think of it this way: if CS fundamentals were employed daily in real world business, then interview panels wouldn't even bother with CS fundamentals. they only bother with them because it shows you recently graduated, and they would rather hire new, impressionable graduates. those with battle scars and real-world experience (beyond just writing code) are wise, worldly, and refuse to put up with the nonsense.