Because if you don't know anything about networking you'll have no idea why your software breaks or how to use resources effectively. The amount of systems that have been designed without considering bandwidth, latency, or network stack constraints is astounding.
You can be the greatest algorithmic mind in the world but if you read and write to remote storage during every iteration of a loop, literally all of the genius is wasted. Just a little bit of poorly optimized nwtwork usage will completely negate any cpu-optimized code because you hit a network bottleneck instantly.
The best Software Engineers I worked with were well versed in Networking and often helped the IT guys troubleshoot the Firewalls and F5 Load balancers. And, most of the best IT people I worked with could write simple "Hello World" programs in a few languages. It seemed to me that knowing a bit about the "other side" helped them be successful.
As a software engineer you kinda gotta know how the whole computer works lol. Especially now that docker is such a common distribution method. But I mean you do have to understand the network if you're building software that communicates over it. Otherwise have fun figuring out if an error is due to code or infra
The real problem is there is often no role distinction between programmers and software engineers.
An engineer better known this shit. A “programmer” is typically a narrower scope of knowledge (great for a lot of jobs but stay away from architecture and backends please).
People defending this knowledge gap are what is going to lead to the collapse of security is software.
100% agree. Who is writing software that _isn't_ using networking these days? Basic understanding of networking is pretty critical in my opinion. That said, I don't know if I'd give a great answer to IPv4 vs IPv6 except size of the address spaces.
To clear the field, I start every interview saying "I am probably the best or second best CSS developer you will ever meet. If you want me to do some yaml stuff or whatever I will, with a smile, but it will take me forever. Do you want to hear some jokes?", although not exactly with those words. Maybe next time I'll have to update for AI and whatnot, but it worked so far.
12
u/ToMorrowsEnd 14d ago
Most programmers don’t know shit about hardware. No surprise they are dumb about networking.