Working for a VAR means that I’m quickly moving from customer to customer, from project to project, and from technology to technology. Often there’s an expectation that I’m able to configure anything and everything on the fly, and with little to no knowledge of a customer’s network. However, moving at this pace and having to touch so many technologies means that I’m sometimes working with tech I’m only vaguely familiar with and without enough hours to dig into training.
For me, the solution is to build a home lab. This way, I’m able to mock up the configuration I’m deploying before a project kicks off or at least prior to configuring a customer’s production network, and this applies to network engineers working in enterprise IT as well. I’ve built labs while working for large internal IT departments in order to create proofs of concept prior to rolling out new technology or just to test changes before applying configuration to production routers.
However, working for a VAR makes the need for a purpose-built lab that much more needful. While having a lab at your disposal when working in a large enterprise is very helpful, the limited time available to a VAR engineer to complete a project before having to move to the next customer makes the need for a lab a critical part of planning for success.
The only way to avoid winging it on new projects is to build out, to the extent that you can in a lab, a near replica of what you’ll be implementing for a customer. This doesn’t mean that we need an exact replica of a customer’s network, but it does mean we need enough similarity between the components we’ll be implementing and the components in our lab that we can create a reasonable facsimile of policies, routing statements, or whatever it is the project entails.
Recently, I tweeted:
I received several responses from engineers out there working in the field such as:
Clearly some engineers already value using a lab, whether it be at work or at home, to mock-up and test ideas prior to deploying into production – especially a customer’s production environment. As Matt mentioned in his tweet, it’s not always possible to test everything, but we should still strive to do the best we can on a case-by-case basis in order to set ourselves up for success. Not building a lab to test complex tasks is doing the opposite – setting ourselves up for failure.
But what do we do if our company doesn’t provide a lab environment? First, there are some free options that are great for testing networking configurations. I’ve been using GNS3 for years, for example, and though it’s difficult to get a topology in GNS3 to match exactly what you’ll be working on in production, it still offers an excellent platform to test routing configuration in even the most complex scenarios.
One person responded to my tweet with that same idea. Sure, you can spend huge amounts of money on server resources to run virtual routers, but GNS3 is a great way to “verify your approach to a new project.”
Some technologies are harder to test, though, and herein lies a problem for those unable to afford their own lab equipment if their employer is unable or unwilling to purchase it for them.
For example, I’ve been deploying Cisco ISE quite a bit lately, and each customer use case is slightly different. I have yet to do an ISE project for which I’ve done every single thing once before already. I’m pretty frugal, but I admit I was able to afford a few hundred dollars for a test server to run ISE, a domain controller, a vWLC, a test switch, and an access point at home.
But what do you do if you can’t afford it? In this scenario I believe it’s important to make the case to your employer that implementing technology without a lab, especially technology that’s new to you, is setting a project up for failure. A few hundred dollars in lab equipment can save many thousands of dollars of wasted time in the long run.
I’d begin with politely petitioning my manager for funds to build a lab for the team. I’d bring to the conversation a sample list of lab materials with their cost so that my employer has something concrete with which to make their decision. If they’re unwilling or unable, I really believe that if you’re serious about succeeding in your career, it’s time to scrimp and save in order to build one on your own.
Recently I purchased a used Dell R710 with a few terabytes of storage and 64 gigabytes of memory. This is more than enough to get going with the basics, and I can always add to that if I need to. My cost for the server was $448 (US). I happened to have a switch at home from a previous route/switch lab, so I didn’t need to purchase one. And just today I purchased an access point on ebay for a little over $100.
In total I’ve spent close to $600 on my home lab that runs Cisco ISE, several Windows machines, a virtual wireless LAN controller, a domain controller, and several other Windows servers. I know some have spent many times that, but as you can see from what I’ve just put together, it’s possible to do with much less.
Winging it on projects stinks. It’s stressful, it’s unprofessional, and it’s setting yourself up for failure. Instead, build a lab and test your design beforehand. To the extent that you’re able, put together something at home or at work to set yourself up for success.