So you have a networking co-op job….

Once upon a time, in my first year of engineering, before I had any marketable technical skills, I had to get a co-op job (which is a Waterloo way of saying an internship). Because I took networking in High School (in French), I got interviewed and matched for networking based jobs. I did horribly at those jobs. Here’s what I wish I knew before I jumped into the world of networking, as well as where/how to acquire this knowledge. Luckily, most of these skills can transfer to other jobs if you decide (like I did) that you hate networking.

Get some basic networking knowledge with the Cisco

Cisco has a weird monopoly on business networking hardware and education. I have no idea why this is, however their learning materials are pretty good. You should be able to get some resources for the most basic level certification, the Cisco Certified Network Assistant (CCNA) from the library, your co-workers or some other free source. Once you go through those materials, you’ll understand how the Internet works and have enough base knowledge in networking to build off of.

Learn to use the Command Line

When doing networking, a lot of your tools are going to live on the Command Line Interface (CLI), also known as the Shell. A good introduction to this is the Software Carpentry materials.

Be a super-searcher by learning Regular Expressions

You know how you use CTRL+F to search a document? We’ll there’s a hardcore version of that called Regular Expressions. Go through a tutorial online to learn how to use them. You’ll definitely need them for searching for specific patterns (like phone numbers) in a file.

Use Python to automate network tasks with pExpect

Python is a good scripting language that won’t be too hard to transition to from whatever programming language you learned in first year (in my case C#). It’s also good for automating network and general system tasks if you use the module pExpect.

Learn to automate web-page interactions with Selenium

Sometimes the only way to interface with something is through a web page. Luckily, Python has got you covered there as well with the Selenium library. You’re probably going to have a bit of a hard time telling Selenium to click the right things, because the XPath selector stuff looks really weird, but there are tools that automatically generate XPath expressions for you so don’t worry!

Learn to automate Windows desktop applications with AutoIT

Although most things have web page or CLI interfaces, some people just want to watch the world burn and make you interacts directly through a Windows application. AutoIT has you covered for that.

Participate in the Server Fault and Networking StackExchange sites

As a new co-op, you’re basically guaranteed to get lost and get way over your head. Having a community to bounce ideas off of and find out where the hell you are in a knowledge base is essential. Asking/answering questions on the site, as well as participating in the chat rooms will help you out a lot.

Everything else, like learning to problem solve on your own and knowing when to ask for help, is going to be learned on the job. But the most important thing to know as a technical worker, is that anytime you are doing a repetitive task with a computer, it can probably be automated and now that you've acquired the skills above you can figure out how to do that.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.