This week, I’m taking a break from my CI/CD pipeline series to talk about my DevNet Professional journey. For those that don’t know, the DevNet Professional certification is relevant to the new CCNP Enterprise. It requires you to pass a “core” exam (DEVCOR), along with a “concentration” or specialist exam (ENAUTO, CLAUTO, DCAUTO, etc.). For a more complete exam list, check out the official DevNet site here: DevNet Professional exam list. In this post, I’m going to talk about where I’m at in my DevNet Pro journey, my current experience studying for the DEVCOR exam, and my ultimate goals.
My DevNet Journey Status
As you may have saw a couple months ago, I passed my ENAUTO certification as part of completing my CCNP Enterprise certification. That was done intentionally. Many traditional network engineers prefer the Advanced Routing and Services (ENARSI) exam, since it builds on traditional networking concepts (routing protocols, VPN services, etc.). I want to emphasize that I’m not downing that exam at all. The topics in that exam are foundational for all network engineers – no matter your networking path (WAN, campus, DC, automation, etc.). However, I intentionally went after the ENAUTO exam since my overall goal is to continue down the DevNet certification path and learning about network automation.
So now with the ENAUTO completed, I now have full focus on the 350-901 DEVCOR exam. Besides the DevNet Associate exam (200-901) topics, this has been one of the only exam blueprints that I actually got excited about every exam topic. To put it into perspective, I actually yelled “YES!” out loud when I saw on Twitter that CBT Nuggets released their DEVCOR course right before Christmas. It felt like an early Christmas gift. Now that you understand the level of enthusiasm I have for this content, let’s dive into my first impressions after my first full week of studying for DEVCOR.
A Little Background…
While attending Cisco Live US 2019 in San Diego, I spent most of my time in the DevNet Zone. If you haven’t, it’s one of the most invigorating environments at Cisco Live. It’s an area that allows you to learn, connect, and get inspired by network automation. One of the best sessions I attended was titled “Working 9 to 5 as a NetDevOps Engineer” by Hank Preston. Here’s a link to the presentation slides from the Cisco Live website. Before attending this session, I dabbled with some network automation scripts that I ran locally on my laptop and began noticing some of the limitations I was experiencing. This session combined all the buzzwords you hear about surrounding network automation (Python, git, source control, CI/CD, etc.) and presented them in a big picture workflow that addressed many of my experienced limitations. This was overwhelming in a good and bad way. It was good because it unlocked so many new techniques/processes in the network automation world. However, on the flip side, it gave me serious anxiety about all the new things I had to learn ASAP if I wanted to thrive in this new, automated world.
I wanted to provide that small story because it helped me provide some perspective on my future and the reality that is NetDevOps. I think we can all agree that network automation will slowly creep into every network engineer’s life sooner or later. However, when you initially hear about it, the common question comes up: Are we network engineers or becoming software developers? This gets the room quiet because many of us do not want to go down the software development path, which is understandable. However, software development and the tools that come with it (version control (git), automated testing, etc.) are not new to the world. Software developers have been using these techniques and trying to perfect them for a long time, so why reinvent the wheel? The question now becomes, “What are we then?”. I think the simplest answer in my mind is “network engineers”. Even with automation and programmability in some of our day-to-day and on the horizon for many others, we need to understand that automation is going to be another component of network engineering, alongside L3 routing protocols, L2 protocols, network services, etc. The best thing we can do to learn about coding and automation is to understand the current best practice techniques and processes that already exist, which ultimately revolve around software development.
DEVCOR First Impressions
I began my first full week of studying for the DEVCOR exam, mostly using CBT Nuggets as my study resource, and have been quite impressed with the content. They keep it high-level so that you understand each topic and dive into practical examples when needed. So far, I’ve covered all the topics under the first major topic: 1.0 Software Development and Design. These topics help lay a good foundation for how applications are developed and interact at a high-level. It makes you think about the different apps/websites you interact with daily. I began paying closer attention to website URLs and figuring out how the presented webpage was queried on the backend. Trust me, I don’t spend 20-30 minutes looking at the web developer tools in the browser when I’m online shopping, but I do consciously think about how my searches are queried and account information is pulled on the backend.
Going back to my background story, I began understanding why, as network engineers, we would want to begin learning best practices of software development. If we ever want a shot at creating a network automation tool or introducing a new NetDevOps process in the enterprise, we need to learn and apply software development practices.
As you may be able to tell in this post, I’m passionate and persistent about network automation. There are many things I don’t know, but I always try to find the time to read and learn each new topic. Most recently, I began reading about Kubernetes. Why you might ask? Microservices (using containers) is a type of application architecture and Kubernetes is one of the most popular container orchestration tools out there. Have I deployed containers? Yes. Have I tried deploying Kubernetes? Nope. It’s not always about mastering a new topic – it’s about understanding how it applies to your ultimate goal. Will I learn and understand Kubernetes, or more specifically container orchestration, in the future? Yes. Why? I will need to understand it because I plan to be part of a team that builds an application one day potentially using a microservices architecture. You should always assess each new technology or exam and figure out how it affects YOUR career goals – not just accept it because it’s the industry trend.
For my career goals, I plan to obtain my DevNet Professional certification in the first half of 2021, with the ultimate goal of becoming one of the first DevNet Experts (pending the release of the certification).
I hope you continue following along my DevNet Pro (and later, Expert) journey. This upcoming week I’ll be diving into the next major topic on the blueprint: 2.0 Using APIs. I will continue tracking my progress and documenting my experience here on my blog. Hit me up on Twitter (@devnetdan) if you have any questions or feedback!
Thanks for reading!
For more context about NetDevOps and the Cisco Live presentation I linked in this post, please check out Cisco DevNet’s NetDevOps Live video series here.