We were interviewing someone for a DevOps position. They were working at a managed network / security services company and needed to change a life and career. Their work was pretty much summarized as “A client files a change request; we implement it at the network device and we’re done”.
No provisioning, no automation, no versioning of configurations was in place. The candidate was not in a position to write code also. Since they were clearly more junior than the position required, we were saddened and in a way gave them some subtle advice to improve on their skills in order to have better luck next time they knock on a door:
- Learn to program in Python.
- Do that because you can learn to code with paramiko and Netmiko.
- Learn some basic git usage.
- It does not matter that your employer does not require you to automate stuff and practice version control. You will write a program in Python that will ssh into the client’s equipment, backup the configuration in git and push the requested changes back.
- You will have automated your work and will have more free minutes per day to read about stuff.
- You will have more to talk about in your next interview.
When you’re not pushed by the environment, you need to begin from somewhere. Oh and understand some basic statistics, because you will need to understand what you graph. It should not only be pretty. It should be useful.
I use pexpect, fabric and sup to perform repetitive actions to servers that do not run CE systems (SaltStack, Puppet, Chef, etc.), but Paramikro looks more advanced, thanks for sharing.
pexpect looks interesting. I have not used Expect for quite some time.