This post is about IT Networking. Having been in Web Application Development all of my career, I spent a couple of months learning about computer systems networking. My belief in being that well-rounded technology architect, basic networking knowledge is fundamental. More than just knowing how to use ‘ping’ and ‘ipconfig’ command line tools, I wanted to know more.
I wondered about the following:
Networking hardware in-depth
How to troubleshoot extensively
Other command line networking tools
DNS, DHCP, Firewall
And so for those of you in any type of application development, especially SharePoint, I highly encourage understanding the many basics elements of networking and server software.
The key benefits in doing so are
Interface with IT administrators and IT architects
Know how to ask the right questions
Understand their designs and implementation that they provide
Understand the infrastructure of your development machine, testing environments and production environments
As a result, troubleshoot problems and escalate to IT
Fix your own networking problems
Become a well-rounded Technology Architect
Design architecture with IT touch points in mind.
Understanding networking and system administration involves a different mind set and I can appreciate the skill and breadth of knowledge of a competent IT administrator. For example, IT must understand the relationships and dependencies of all layers of hardware, server software, networking protocols and configuration. Whereas a software developers’ troubleshooting process is simpler with the use of debuggers and custom error/exception logging. IT must rely on multiple tools with a methodical mindset in troubleshooting issues.
So invest in learning networking and troubleshooting issues, and you’ll impress the IT folks when you hand them root cause analysis and perhaps a recommendation to the solution 😉
And so to wrap up my knowledge and my notes, I have assembled a powerpoint presentation deck. There are some notes and resource links in the Notes section of each slide. I have presented to my colleagues and plan to speak at technology user groups and conferences.