Too Long; Didn't Read
The ability to troubleshoot the network and systems separates good developers from great developers. Great developers understand the TCP/IP model: great developers understand it: "Tcp-IP" Great developers should gain some proficiency in network troubleshooting. This is especially true if you find yourself gravitating towards systems programming. Regardless of whether you work on the front-end or back-end, I think all developers should learn some basic networking skills. Here are some basic tools you should add to your toolbelt: