As you know, I had the great privilege to attend #NFD20 in San Jose at the beginning of February. On the back of some of the great vendor presentations there, we started some very interesting discussions around the big debate of our times.
Network Engineering: to automate or not to automate?
We already know in good faith what the answer should be, but it seems that some of us are still reluctant to accept that, mainly because they struggle to get out of their comfort zones I believe.
I thought about it and decided that real examples are much more meaningful than my rants on this blog, so I said to myself: “why don’t I interview the people I know who carved out their way into the network automation jungle?”
So this post is the first episode of a series of interviews, which I hope will be useful to all of you out there.
Today we start with Federico Olivieri, Network Automation Engineer at Ticketmaster.
Hi Federico! Thanks for making the time to answer my questions. Let’s start with who you are, and – can you remind me – where did we meet? 🙂
Hi Nicola, Thank you for giving me the opportunity to tell my story through your blog!
I started working in the IT industry since 2009 as soon as I finished secondary school. After five years spent as Network Engineer in telco companies in Italy, I moved to London to work as an Access Network Engineer for BskyB where I was exposed for the first time to basic coding stuff: writing Bash scripts for monitoring and data gathering on access CPE.
At the same time I decided to attend a Cisco Academy course at London Met University. Once I earned the Cisco CCNP R&S certification, I moved on from telco market to focus more on datacenter networking, where I would have the chance to work with bleeding-edge technologies, open-source tools and dev-ops teams.
That experience gave me the opportunity to learn automation tools such as Ansible and Salt-Stack, to use python to build custom code, to learn API and to use a wide array of dev-ops software such as Docker, Grafana and many more.
After few years of experience spanned across start-up companies such as Yoti or bigger ones as Paddy Power Betfair, I decided to move to Ticketmaster as Network Automation Engineer. At Ticketmaster I am now building custom solution with open-source tools to meet the network team’s needs as well as moving the concept of the classic CLI network configuration approach to a source-control and automated fashion.
I heard about you when I was in Italy. At that time, around 2013 if I am not mistaken, I decided to move to London with some level of awareness around what skills were required by the IT industry in UK.
I was not even a CCNA when I was looking around internet to get and idea about what was the best study path to follow in order to find a job in London.
By coincidence, I landed on a blog called areanetworking.it where I found an interview where a guy called Nicola Arnoldi was talking about his experience as Network Engineer in BSkyB. I was very demoralised at that time, because I knew my skills were very weak and my English…even weaker.
Reading about a fellow countryman that successfully “conquered” London though, gave me a bit of hope regarding my plans. So I reached you via LinkedIn and asked you tons of questions. If you dig into Linkedin chat history I am sure you will find them….or probably you thought I was a stalker and decided to block me! Anyway, after 1 year from that conversation, with my fresh CCNA and a job in BSkyB in London, I walked into Brick Lane office and I met you. From that day on, we remained in touch sharing our passion for Networking.
You’ve become a network automation bad**s. Can you tell me more about it? When did you start and why?
I started pretty much 1 year and half ago while I was working as a network engineer for PaddyPower Betfair. Everyone in the networking environment was talking about “automation” and “python”. It sounded really scary to me to learn tons of new tools and languages, to change my way of working and start a kind of new career path after the efforts and time spent in learning something in networking.
I had promised myself that I would have never faced the coding beast as I always considered it too much difficult to learn. Too much abstraction and a proper language to learn? No way! At that time I thought that life was too short for spending time on that.
Everything though sounded like a proper challenge, something out of my league.
I always felt a kind of attraction for things that I consider unreachable, like a provocation. So I decided to fight the beast and start to get down with automation and coding.
I moved my first baby steps with very basic stuff, without any ambition, without any big plan in mind. The more I was playing with coding and more I was understanding of how things worked and the real potential of automation. So I started to have tons of ideas, on how to improve the day to day way at work. I started to build small pieces of code that brought quite good benefits to the team and reduced the workload and the human errors percentage in network device configuration.
From that point on, I have always been obsessed to improve my style, learn new languages, new tools and to develop new ideas.
I don’t consider myself a bad**s though, I am just a drop in the ocean. There are people out there that you have not idea what are capable to do it with few lines of python code. I have a very long learning path in front of me.
Which are the technologies that you use and love the most?
In terms of coding language, I have started with python as most of the people that face coding for the first time. I have explored GO as well and I found really interesting, however my “mother tongue” remains Python.
Next step probably will be Java as is widely used. It is something that I believe must be known or at least, would be good to see which potentiality Java has and which ideas can bring it to me. I work with JINJA2 (a lot !), YAML, different kind of APIs and libraries like NAPALM for example.
As automation tools, I mainly use Ansible and Ansible Tower but I fell in love with Salt Stack and I hope one day I’ll have a chance to implement in production. CI/CD is a must for every project so design pipeline is something I had to learn and I find quite fun!. Every day I work with Grafana, Git, Docker and AWS. Sometimes I had to wrestle with databases as well, but I rather prefer to “delegate” that to someone else.
Today I talk to a lot of network engineers who still think that doing the things like they’ve always done them is just fine because “this is what the business wants”?
What do you say to them?
I have seen many managers or head of departments refusing to invest time and money in automation, because they need things to be done now, not understanding how much time (..and money) a week worth of coding can save for the rest of the year. The change of mindset has to come from the above otherwise engineers won’t see any value in learning something that is not supported by the company.
So, to those that find themselves in this situation, I suggest to be more perceptive as possible and listen to what the IT world required today. To be hungry, to read news, to be part of meet-ups, to dig and investigate, to try, fail and try again. Do not listen to those that do not support innovation: those will always stay in their comfort zone. They don’t share the same passion for technologies as we do. Trust your feeling and follow it. Sooner or later that, it will bring something good on the table.
What do you think is the biggest challenge in spreading the love and awareness for automation in the network space?
The most difficult aspect I have faced in Automation world was, and still is, people who struggle or refuse to change their way of working and their mindset. Having a proper mindset is very important for a Network Engineer nowadays.
Unfortunately, in most cases, Network Engineers are bit scared about coding (like I was) and they rather prefer to keep doing things as they have been doing them for years. It is not unusual to see more Software Engineers that approach networking instead Network Engineers approach coding. In some cases, people do not understand or perceive the potentiality of automation.
This is a big fight in front of all the IT world, not just Networking but I am sure that, with time, changes will come and we will have IT engineers looking more like Software Engineers. However, it will require some time to see people studying automation in the same way they studied BGP, for example.
I remember a while ago you shared a picture of yourself reading a novel book at work. Did you not get fired for that? Why do you think you still have your job?
Well, I have been lucky I would say: at the end HR liked my book. Most probably that is the reason why I did not get fired. Joking aside, I remember I worked quite hard for all the week, and I completed my test the night before. That was the first time we run some configuration changes in production against 300 devices using Ansible Tower. I was quite confident of the test result that I got the night before, so all I had to do at that time was to make sure everything was running smoothly and as expected.
Even though I coded until late in the night, I could not sleep on my desk (even if I wished…oh…wished a lot!) so I carried on with my reading. That, though, wanted to be a perfect example of the benefits that automation can bring. I worked for a week pretty much, to set-up all stack Ansible-Pipeline-Tower and now we have a product that every week make sure all devices are up-to date, and an implementation on 300 routers can be done just with few lines in a yaml file.
Now ask yourself a question and give yourself an answer. 🙂
How long can I keep up with all these technologies that spring like mushrooms every day? Not too long. I am 32 and I’m already dreaming about my retirement in a sunny and tiny island as fisherman, somewhere around the world. Maybe I should take a break and open a bakery? I am also good with mechanical engineering on Vespa…plenty of options. The important thing is to run away from the shell!
Indeed, automation and coding require a lot of time, energy, patience, swearing and crying so it is normal to feel a bit sick after a while. But the passion that I have, that all the people doing this job have always bring us back in front of the terminal, trying to fix that piece of code, no matter what timeit is. It is a love and hate relationship in which, at the end the love always wins.