<p>
</p>
<p>You could argue that, but the fact remains that those people are indeed hired. The IT space is notable for the proliferation of workers who have no technical degrees, or in some cases, no college degrees or any sort. At many companies, the IT staffers who actually hold CS or IT degrees is strictly in the minority. </p>
<p>
</p>
<p>I agree, which is why I would say that advanced CS coursework is simply not a practical option for many, probably most, IT workers today. As I said, many current IT workers never even majored in a technical subject - and may not have ever taken even the intro CS course - so the notion that they might survive an advanced CS algorithms or database course is simply fanciful. </p>
<p>Nor would it even be useful for them. For example, many Cisco routing protocols are based on the Dijkstra algorithm. But how many Cisco network admins actually know what Dijkstra is at all, let alone how to analyze it? For the vast majority of them, all they know and care about is what the simple commands are to have the routers discover the network topology and calculate Dijkstra by themselves, and if something goes awry, that’s something that needs to be reported to Cisco. </p>
<p>Now certainly I agree that if you were one of the senior developers at Cisco who was implementing faster routing features, or were working in an academic/research capacity to design entirely new routing protocols, then you would certainly need to understand Dijkstra. But the truth is, there are probably no more than several hundred people in the entire world who do that. The overwhelming majority of Cisco IT workers will neither know or care about Dijkstra. </p>
<p>
</p>
<p>And what I’ve found ironic is that the latter are often times actually paid more than the former. That’s right - those who actually use the kit may actually make more than those who designed it in the first place. </p>
<p>As to why that is the case, it seems that the IT space rewards breadth more than depth. To extend the above analogy, if you’re a routing developer at Cisco, you may learn Dijkstra to excruciating detail. But the fact is, there are only maybe 10-20 companies in the world - the networking vendors - who actually need somebody who truly understands Dijkstra. However, as a routing protocol expert, you’re probably going to learn practically nothing about Ethernet, or network security, or WAN-signaling, or dial back-up. </p>
<p>On the other hand, a Cisco network admin can learn all of those topics and more. He will not learn any of those topics in depth - ask a typical network admin how SHA hashing actually works and you’ll receive little more than a blank stare - but at least he’ll know how to type in the commands to invoke those features, even without really understanding what the feature actually does. And that breadth over depth is what the market wants. Every company that utilizes Cisco products - that is, the vast majority of all large firms - could hire you. You can then play them off against each other in pursuit of higher pay. </p>
<p>That’s why I’m so hesitant to endorse an advanced algorithms course not because it has no value - because it probably does - but because it seems to be a low-yield activity. The gains you would obtain from such a course do not seem commensurate to the effort you would have to expend. The same seems to be true of most formal CS networking courses, which have a habit of devolving into a morass of queueing theory which few if any network admins actually need to know. They would be far better served in simply practicing on a Cisco home lab on their own time. Not once have I ever known a network admin interview where the candidate was asked to calculate queueing models. But all of them have asked whether they know how to utilize various Cisco features.</p>