3 ms·
"""Fundamentally, this emphasis on short term productivity is a problem rooted deep in the modern tech culture.""" I think it's mostly driven by agile developm
by ascotan 4y ago
"""Fundamentally, this emphasis on short term productivity is a problem rooted deep in the modern tech culture."""
I think it's mostly driven by agile development. Agile has killed technical apprenticeship in the workplace. What has replaced it is the project manager/product owner with a cadre of junior engineers, all of whom are trying to 'figure it out' by reading Stack Overflow posts.
Many tech interviewers prioritize 'fundamentals' during hiring (and by doing so bias the hiring process to college grads but i digress). Your team has a lot of well versed, knowledgeable engineers that can write heap sorts, bubble sorts and compute the bigO notation and write a left-handed parser, but they don't know how to build a piece of software yet. The internet becomes your mentor and you get that gadget shipped.
The result of course is the Cambrian explosion of garbage systems left behind by junior engineers that have since moved on to other jobs. Looks like it's time to rewrite that code with a new team!
I think fundamentals are important but unlike other academic disciplines there's a huge gap between academic CS and actual software work. In CS you need senior ICs to bridge that gap.