Real World AUTOMATION // Top skills, jobs, certs, laptops and more

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
you actually doing what you were preaching um exactly and what gets preached you you it's not theoretical this is real um what what kind of stuff do you use in production so just like again i want to put put put myself in the shoes of someone starting all this theory is nice but give us an example of someone who's doing this at scale u and what do you actually do what do you use [Music] hey everyone it's david bumble back with hank preston hank it's been way too long what have you been up to it has i mean it's been a really long time david since we've talked and and the world has changed careers have changed the land of certifications have changed i mean so much is different these days and it's exciting to catch back up with you and see let's see what's new so for everyone who doesn't know hank i interviewed hank many many times in the past and i'll put a link below to a playlist hank goes through a lot of development stuff hank you and i were talking about devnet's stuff and i didn't even know devnet was a thing but you you probably knew so tell us what's changed since those days you know let's talk about the shirts let's start with that so devnet cert yeah so devnet now has a certification track which is something that we didn't have the last time we were chatting and it was one of those things that people would always talk through is like where are the devnet certifications how do i get the cisco certification showing network automation and we didn't have them at the time but we do now and we've actually just recently announced kind of the the the apex of the devnet certifications which will be the new devnet expert certification that's out that like the other expert certifications from cisco the ccie and the ccde the design expert the devnet expert is intended to highlight the skills of a senior network automation engineer but for the last two years we've had devnet associate and devnet professionals so kind of corresponding to the typical ccna and ccnp certifications and then associated specialists kind of in the the tracks so we've got devnet specialist in data center automation enterprise networking collaboration cloud devops there's a whole suite of certifications where engineers kind of diving into automation can kind of get that certification to prove to themselves and potential employers that they've kind of got those skills that are important and today's careers and organizations are looking for is they all start to strive to transform so i'm going to take the position of someone who's new to this and i'm going to ask you some basic questions and some difficult questions so forgive me i'm going to push you a little bit like i like to do in these interviews um it's all good are there jobs for people certified with devnet so i'm assuming that cisco did research and that's why this exists but can you talk around that yeah absolutely it's one of the things um one of the things i learned from becoming part of the cisco learning and the learning and certifications group at cisco is just how much research and proof goes into any certification effort that cisco puts through so there's there are job interviews that are done there are profiles about who might be interested or who might need this type of a certification um interviews with hr managers uh pouring over job descriptions and job requests so yes there are definitely jobs available for people with these certifications um it's still fairly early like there's always a lag behind when a job when hr people are those kind of canned job descriptions and what are the requirements um so we're not seeing the level of demand like in posted job descriptions for a devnet associate or devnet professional yet but they are starting to show up and it will grow the explicit requests for the certifications i believe will grow over time what we are seeing and what we've been seeing for many years are job descriptions where it leaders and hiring managers are looking for people with scripting skills with the ability to use python or ansible experience with public cloud containers are starting to pop up and so those types of skills are important to to organizations today as they're trying to figure out how to handle this this rapid influx of change and demand for change that's been pushing into the infrastructure for many years and so even if a job doesn't doesn't say we require the devnet associate or we're looking for someone with a devnet professional look at the skills that they're asking for and you'll likely see correlation to the types of skills that show up on those blueprints and so candidates for those jobs can go in and say look i've got this certification it shows these skills these are the things that were tested so there's absolutely a market for people with these types of certifications i think that's something you know we saw for you and i for a long time and that's why we created that whole series is um there were the this demand for like python ansible as you've mentioned like just general dev skills so let me ask you this question is the devnet track for network engineers learning about programming or is it developers who are learning about networking or is it both it's actually so when we wrote them we wrote them to target both sides of the track because we're seeing both of those folks come through i don't have the stats and the numbers to know like which one's more but it's it's some mix where we've got traditional network engineers people that maybe come out of a background with a ccna or ccnp or even ccie looking to get into automation and so we wrote it to kind of highlight and test the skills that they would need to kind of have to go through but there's also software developers that maybe are looking their background as in web development or java development or some type of of software more software focused but they're being asked by their organizations to start help helping automate infrastructure go into a network engineering team and become their net their their development team the the the engineers that are going to kind of build those automation and templates and routines for the the networks that are engineered by the more kind of focused engineering minds and so for those engineers or the software developers they probably already know how scripting works and how to use git appropriately and so there's elements in the certification around fundamentals of networking so what is a bridge versus a router right what does it mean what is spanning tree used for versus routing protocols it's a cisco certification so understanding the cisco portfolio if a software developer is asked to interact with a cisco aci controller right it'd be really important that they know what an aci controller is for and how a data center fabric relates to maybe a non-fabric based architecture and so the certifications bring and kind of mix these things together the majority of the certification and the tasks and the waiting do fall into the automation skills kind of the software side of it but there's a part of every exam that kind of focuses in on those core infrastructure skills the way i like to talk about it when i would when i described the difference in the interplay between like a ccna and a devnet associate is that organizations will likely need both skills but those people with the skills need to talk and so there's a portion of overlap right so there's a little bit of network engineering skills in the devnet associate and there's a little bit of programming topics in the ccna and where they touch it allows for those individuals to kind of communicate and collaborate on projects so that you bring two people together they talk and now they can do even more than individually they could separately so so if i'm a young person starting out today would you recommend like do i need to go and do my ccna and then perhaps go and do devnet associate or is there sort of like a path that hank preston would take um like if you were talking to your younger self that's why i like to to phrase it so this is not cisco official necessarily this is you what would you do today if you were just starting out is there sort of a track that you think you would take it's an interesting question and it's it's a type of question i get quite a bit and i'll give you the same general answer i give anybody that asks me is it always comes back to like where's your focus what's your interest today you asked me specifically my interest today is definitely on the automation and the software side of it um when i was a kid that wasn't the case right when i was younger that wasn't the case but if i was doing it today i would probably start out on the devnet associate track and then go and get maybe the ccna afterwards but i've talked to engineers that are that will send me messages in email or on twitter or webex and say i'm i'm not sure where to go i'm interested in all of these pieces i really like networking i love connecting wires together i love the ip protocol and looking at packet captures and understanding kind of the intricacies of routing but i also don't want to miss out on the automation pieces and for those folks that's well that's fine right there's still a need for really for engineers that understand the fundamentals of networking we're always going to need people that know how to build a well-designed network how to operate a well-designed network so go for that first right go for the ccna and then you'll get a taste of automation in there and if you you get interested and you want to broaden your skills be a little bit wider then go study for the devnet associate pick up some of those skills so you can enter on either side of it there's no prerequisites there's no expectation it's actually something that we we constantly get reminded by a a job role i'd never heard of before which is a psychometrician these are the folks that really understand how testing works and how to evaluate skills and whenever we're talking about what to put on a blueprint or what questions are appropriate they always remind us right these are these are entry points there can't be just expected knowledge on the other side if it's not listed and we wrote them that way and the tests are set up that way so what happens if i'm a a more seasoned network engineer let's say i've got like three years five years ten years experience it looks like the trend at cisco for the last five years i mean you and i have been talking about this for a long time but the trend is more and more to network automation so do you feel that a network engineer has to do devnet or at some level uh could they just go to you know devnet professional or should they start at uh devnet associate and again hank this is just your opinion but i like this thing about you know talk to people who are in the trenches who've walked this road like all of us have and what you know what's your opinion my opinion is that not everybody needs to have a devnet professional um not every engineer that wants to do networking needs to be at that level on the automation side okay just like not every engineer that goes into networking needs to be at the sys the ccnp the cisco certified network professional level um a lot of it comes down to their interest level and what they're after what the organizations are in place what i do believe is that let's say you're a network engineer and you want to do networking you want to kind of design networks you want to do good inter routing protocol interactions you want to build campus fabrics that are reliable you want to work on a wireless i don't think you can ignore automation um and that's the same thing i've been saying for a long time is i don't think you can ignore automation you need to understand what the purpose is you need to be able to read a script maybe um maybe make a couple of api calls and work in postman like you need those fundamentals on that side i kind of like it back to just the general skills i think every it engineer needed a decade ago right when i was really kind of building up my own career and diving in there were things that were not specifically related to networking that i needed to understand right i had to go through a microsoft office class so that i could use excel yeah i needed to know how to do like basic math in an excel spreadsheet i needed to know how to type up a word document and share information back and forth how to manipulate a csv file which in fact is still a skill that's really important today those are the types of skills that you just always have to have to do the job and i think that's where just the basics the basics around automation are starting to fit into um i think every network engineer shouldn't be scared by postman and and saying okay i want to make a rest api call because i've got to do the same thing 100 times and it'd be quicker if i could do it this way rather than copy and paste from notepad which is how we used to do it right we would we maybe would like i remember my early days of automation as i would create an excel spreadsheet and then use like fill columns and like add up numbers and like manipulate to craft the cli commands that i wanted and then copy and paste those in um that worked right we got a long way doing stuff like that but now that we have apis it's just an easier way to do that and i think that's where that's the level of skills that every network engineer is going to need so i remember you you were interviewed by eric and you i'll put a link to that interview below you mentioned that in the devnet expert it's not required to write code from scratch is that right it's not for a handful of reasons that go through um not the least of which is just like the logistics of an exam like that um there's just not enough time to write all the code eight hours is that right like cci it's it's eight hours total there's three hours of it that is the design portion and then there's five hours which are kind of the the do the the implementation portion of the exam okay um it's modeled very much like the other ccie exams expert level exams that are out there and so in a five hour window which is the part where and then where you're going to be asked to do some programming tasks and interact with things i mean if you were just sitting down to work on one script to build even a simple script for a solution that could take you five hours from scratch and we couldn't you can't just we can test just for that there's specific skills that we need to look for and so we focus in on those in the exam so yeah you're not going to get like open vs code start a new document and then write me a script for this there's not enough time to go in and frankly that'd be kind of boring right particularly for someone that truly is kind of at that expert level that wants to show those skills off um there's a lot involved in coding from scratch that's more at the associate professional level rather than the expert level we're trying to focus in on those expert level skills with the the somewhat assumption in that you know an expert candidate would know how to do like the basics of like code from scratch we're focusing in on specific parts of it so yeah i want to cover all the stuff that you discussed with eric because he you and him went through quite a lot of detail in this in the in the uh in that interview what are the prereqs for um for the expert exam do you have to do something at ccnp level what do you have to do to to be able to go to the exam so like um like the all of the cisco exams um in the engineering track the devnet track was modeled the same with the the latest refresh that happened about a year and a half two years ago now um it used to be to take to earn a ccnp you had to earn a ccna um it used to be to actually i think the ccie was always different but the ccnp was always like that like you needed the ccna to take the ccnp um the devnet associate and the entire devnet track was built the same way so if you are a seasoned automation engineer you can go straight to the devnet professional you don't have to like pre-earn the devnet associate to earn the devnet expert you don't have to become a devnet professional the one thing that's kind of may make that may uh may seem like that's not true is that the written exam for the devnet expert is the devnet core exam which is one of the exams necessary to earn the devnet professional but to get a devnet professional you have to take the core and then one of the specialist exams there's no specialist exam requirement for the devnet expert if you could take the devnet core which is the written and then sit for the lab exam and then earn the devnet expert as it goes through there's no other requirements outside of that we're just testing the knowledge at that level rather than make people kind of jump through the hoops to get all the way through so would there be another ccmp type level uh cert that you would recommend someone get or would you recommend they go and do a lot a whole bunch of those electives if you like before going for the expert oh uh so like as part of a preparation yes okay um because i think you mentioned with eric the i was going to ask you this but let's just add it here um i'll show you this later sorry the expert seems to be more focused on network automation rather than like trying to write an app is that is that correct yeah so we had to we had to pick like what what type of candidate we wanted the this first devnet expert lab exam and certification to target yeah and if you look at the devnet specializations that are out there they range from enterprise networking to data center to collab devops cloud and we couldn't we couldn't cover them all it could be too much and it'd be too much to ask any one engineer to like be be at the expert level across that breath and so we had to focus in um we didn't focus in on a specific specialization we kind of focused in on a job persona of infrastructure network automation engineer on that side and so if you're you're trying to prepare for it and you you don't mind taking and you want maybe pick up a couple of certifications along the way i think that the devnet data center automation exam the enterprise automation exam or the service provider automation exams any of those or all three of them if you really want to do like the the hat trick and get them all they they're going to be give you an opportunity to kind of see the types of skills different types of questions and examples of the types of things that you might see on the devnet expert exam but they're not required the the devnet expert blueprint doesn't kind of assume a a level of knowledge from like the sp automation exam like it's an independent piece there's some some overlap like you'll see nso referenced on service provider and then you're also going to see it on the devnet expert as it goes through like things do show up but it's not like a requirement you don't have to take those to learn the knowledge you may have to go pick up some skills outside of the exam but you you don't have to take them so hank the certifications seem to be like formalizing kind of like just random technologies that you and i would have covered perhaps in the past like okay we're going to learn some python because python's important for network automation we're going to learn some ansible it's kind of important but the devnet cert seemed to have formalized this so here's a difficult question um what type top five skills or technologies or is it ten that you that you think are really really important that the devnet certs are perhaps capturing or you know basically if i'm a if i'm a cisco network engineer or just a network engineer what top skills do you think i should learn like if you were starting today again is it like linux is it python i don't want to put words in your mouth but like what what do you think are really important skills no it's a good question um and i was actually just i just sent some answers to one of our marketing folks very similar to that type of a question for for another purpose so python i think is is really important you'll see python that shows up on all the devnet the devnet blueprints as they go through and even on the ccna and ccnp ones you'll see some python in there um it wasn't just and that's not because cisco and the the folks inside so picked python it seems like that's the language that has risen to the top for infrastructure automation um it's not the only one that's out there right we're starting to see yeah i was just gonna say go like go is popping up and it shows up and it's i think it's a good language to learn if you're interested the way that i look at it is and actually what i put into the question that i had to send this morning was what's important to know are basic fundamentals of how to do scripting and how to do programming the specific language is less important like you should pick one and learn it um but and if you're trying to study for a devnet certification pick python because that's the one you're going to see on our exams and you're going to be asked to craft and understand python scripts to go through so scripting in general python specifically i think is a really good good one to pick up rest apis right how to work with a generic rest api so that if you're presented with api docs for some new platform you'll understand how to read the documentation how to interact with that api from authentication to retrieving data manipulating data like understand how apis work that is a really important skill for an automation engineer i can't can't minimize that enough like that is going to pop up the another one that i think is important is becoming comfortable with data format manipulation right a network automation engineer has no no idea the types of data that they might have to work with on a daily basis they're going to get json from some things they're going to get xml yaml csv files be comfortable with with just taking any data as it comes know how to manipulate it how to translate it into other formats that can be standardized like data format manipulation is a huge huge skill for any automation engineers they go through i i've long been a fan of the new standard network interfaces so netcomp resconf and then the yang data models that go behind them not every platform supports them particularly when you get into the controller platforms they tend to have kind of not necessarily jumped into the yang model for standards yet but i'm hopeful that maybe we see some standardization on that in the future but becoming comfortable and knowing how to interact with the device using netcomp and resconf not being scared of having to work with a yang model not necessarily write them right that's a different skill set um but being comfortable with those interfaces i think will be good um get skills so this is this is almost like a new soft skill for ninja for anybody in i.t and we're even seeing it outside of it today more and more we're seeing like the traditional way of sharing documents and maybe sharepoint or box being translated over to kind of git based workflows as they going through so being comfortable with source control systems git's not the only one but it seems to be it's like python it's it's the one that is risen to the top that you see the most often so being comfortable with git manipulating um working with files like that i think those are kind of a good fundamental set if you become good at those pieces you can bounce and be confident that if you're presented with if you go to take a job and it's like okay well i've never seen this product before maybe they're using a vendor that you're not familiar with you can have the confidence that you could read the docs look at some examples work with them um because you've got that nice foundation based level of skills to build upon okay so two that you didn't mention i'm going to push you and you didn't you didn't mention ansible mm-hmm that's all important so i didn't leave it off on purpose i almost no that's fine it's only because we've often had this debate you and i answered python which is best which one should i learn ansible's not going anywhere i i almost to some extent kind of group ansible in that first category of scripting okay it's not exactly the same and you'll you'll get all sorts of debates and see like blog posts and people are ranting that ansible is not a programming language it's not but it is a technology that can be used to solve similar problems um you see ansible all over the place um having some basic understanding not being scared of it i think is a valid one to go through but i kind of group it into that first one if just know how to do something in an automated fashion if it's not python if you've kind of gone in on ansible initially that's great and if you've started with python you'll likely have to learn ansible at some point if you start with ansible you're probably gonna have to learn python go might show up i'm a big powershell fan for a lot of our compute work we do in powershell um so it's like that's where for me that's where ansible goes into it's kind of all in that just automation tooling scripting bucket of skills it's a it's a great answer i mean i'm only i'm really you know being nice to here it's only because this kind of stuff comes up all the time so it's like you know you've been you're a seasoned person in this field um you've seen all these debates raging and the rants and stuff so if i was starting today would you recommend do a bit of ansible and then python or should i start with python because some people find like python a big ramp up yeah i know my personal choice is python because i just feel python gives you so much power but that could be because you know i developed stuff in the past and i just find coding easy um but what's your take i think if anybody's had has any background even like an old comp psy class like way back in university and they had to take something um learning python is not that big of a ramp um if you understand like if you know what like how conditionals generally work like if you've ever written an if condition or a for loop or a while loop in any language right getting into python is not hard for people that don't have that at all right have never had that experience it can be really intimidating to open up a file and start writing code and i think that's where ansible's really helpful is it's weird because yaml is not not something that we grow up like we don't learn yaml out of the box right we're not born knowing how to speak in yaml but it seems like the comfort level is there for a lot of folks um and so it's it's a great place to start it's a nice entry point to go in um there are some things about ansible i just i just had to install ansible yesterday yeah i had bad experiences with ansible sorry i didn't want to interrupt you go on so we use ansible ansible is part of how we're building the devnet expert exam because we have to automate the actual exam creation so ansible is part of our stack we're using to automate i will say it's it's mostly being used not to automate like network components necessarily but to automate like the spin up of systems and control linux machines um which i think is still where it's real strong suit is um so i had to install it for the for the first time one of the newer versions um my by day and we can go into what my day job is if that's interesting later but by day we we locked a version of ansible a while back um and so we haven't moved in our day job in the team i work on on a daily basis to some of the newer versions of ansible so it's been a while since i did like a fresh install of ansible and holy cow it took forever um and just the size and like the just how much is in there was was just i was like holy cow like this is a lot just to be able to like run some basic um ansible playbooks against some linux machines so i know why ansible's making this change and the ones that go through there but it's been a it's been a a bit of a bumpy ride kind of watching them kind of grow and make these changes and it's caused a lot of frustration i think for engineers myself included as things just start breaking and drastic changes which for me personally has kind of kept me away from keeping up with ansible's changes it's just gotten really hard to keep up with it when by i mean eighty percent of my time is spent kind of in an engineering and operations role it's really hard to keep up with like drastic changes like that so we we lock the versions in so you know one of my biggest complaints with ansible is you upgrade your version everything breaks it's like i mean we had that with python 2.7 going to three but um yeah it's you know that was also nightmare but um yeah ansible just seems to you know update on a regular basis causes problems now for anyone who wants to flame me you put in the comments below but you know it's not like i hate ansible it's just that's my personal opinion and it's interesting to get your opinion as well hank yeah everybody's got it and we've got one of the guys on our team um is a real big fan of ansible um and he's doing a lot of the work and the pieces and he's a proponent and that's awesome and then we've got other people on the team that i'm i'm somewhat i consider myself indifferent like i use it and i've chosen to use it and we're using it in projects so i have no problem with ansible it's just one of those things i look at it like um choosing a bank right no bank is perfect there's always problems with with banks and picking like which accounts to go through and like dealing with customer service but like you learn what those problems are and you just kind of go through them and i see ansible the same way it's like any other tool nothing's perfect i know what where the where the challenges are and you deal with them i'm indifferent and then we've got we've got one other person on our team that is a very vehement ansible anti-ansible folk uh so it's a nice mix as we go through on on the group so hank please don't get too angry everyone who's watching this what's what's the best machine hank linux mac or windows let's you know let's cause a fight i mean oh yeah yeah it's it's the one you know how to use that's that's my cop-out answer as it goes through it is if you know how to use it it's the best machine for me personally i'm i'm a mac guy have been for for god probably 15 years now i think is when i switched from windows to mac um i like linux as a development machine actually most of my my day these days my desktop is a mac and then i do all of my development using remote connection through vs code to a linux linux machine i think the bigger debate might get into like is it centos versus ubuntu like which flavor of linux do you want to go after um on that side that's that's just as heated up as a debate i think but i mean you so let's just step back you changed roles uh about two years ago i think it was and you like got really into the trenches now is that right so day-to-day you building devnet labs did i understand right so this is this is how long it's been since we've talked david there's there's been all sorts of changes so i my where i live inside of cisco these days is in our learning and certifications group so learning at cisco um is a is the part of cisco that creates and defines what the certifications are we build the blueprints we write the exams and then we create classes certification focused most of them are certification focused classes and we have instructors that teach those classes they're delivered electronically so that's the group in cisco that i that i'm in today and the part of the team that i'm part of is the actual lab engineering team so we're the group that that maintains and designs the data centers that deliver um the the dc auto classes the ccna classes from cisco if you if you've taken the dev associate class from cisco you're taking that off of infrastructure that our team builds and maintains and operates and so i'm the the principal engineer architect and kind of product owner for our back-end data center infrastructure teams that are there and we're aggressively adopting kind of a modernization effort to update just the base infrastructure we're using as well as the way we we manage it so what the what tools we use for pushing configurations out um monitoring logging um automation routines we've been doing we've been doing lab automation for for many many years and a lot of our our automation tools were written long before anything like netcom for rest conf or ansible or python were available and but now that they're here we're finding it's important to kind of like update and modernize those tools use these new infrastructure pieces rather than write every every library to interact with the device ourselves because we used to have to now it's like okay can we can we take advantage of some of these newer libraries and things that are out there so that we can build on top of them and not have to maintain the underlying code but kind of focus on using them and so that's this transition that we're in the process of now and that's my day job is helping kind of run that i spend i spend probably 20 of my week every week kind of working in jira which is a help desk issue kind of agile project management type of a tool and so i'm in there kind of managing um what are we working on in this sprint uh what are our milestones that we're after what are we trying to accomplish in this release as they go through and so i've i've gone full-on um kind of agile developer project uh project management side so the reason i ask you that question is um you're in a you're not just talking about this stuff from a theoretical point of view you doing this day in and day out is that right like spinning up new labs resetting them building data centers that kind of thing is that right that transition from like i when we first started talking i was a um my job role was as a developer advocate for for inside of devnet and i would lead classes build demonstrations look at labs um kind of showing the fundamentals and like theory like implementation details as they went through but i was really curious what it would be like and what's that what are the challenges and applying that those skills to an actual organization that has customers and deliverables um and that's what kind of led me into that type of a piece and so yes absolutely um one of the i've learned many things from kind of taking the theory applying them to to real life like what works well in the lab doesn't always work well as it went goes through um prioritization of projects um versioning like and that was one of the things i had to write a document last week and i just presented it to our leadership team on what is our upgrade strategy right when i'm just working in a lab and building demos like i'm happy to use the latest version of a library or tool or hey let's grab the the latest container image and see where it goes through oh netbox just released a new a new version let's give that a go um that's really easy yeah in a lab with that type of a role um we we can't do that and i've i've had to push back on some of our engineers that want to upgrade i'm like we can't we just we we've got we've got deliverables and milestones like we have to build this solution we can't we can't take you out of the field to go like upgrade a tool unnecessarily so i had to write an upgrade strategy like how are we going to decide what gets upgraded when it gets upgraded what are the testing process we have to go through and those are things that i never would have thought about before kind of getting back into that that day-to-day operation engineering role but they're super critical skills and important parts of the process but it means a slowdown in how fast you can transform how fast you can you can implement changes when you have to kind of deal with those types of things as well i mean for me the great thing here is that you're not you you you what what's that what i think it's an american term you're eating your own dog food is that right you actually doing what you were preaching um exactly and what gets preached you you it's not theoretical this is real and there's two parts to it if i understand right you're building the actual underlying infrastructure then you're also building the labs that run within that infrastructure so it's like you have to build a lab that ccna is going to use or whatever and then you've got all the infrastructure that hosts all those crazy amount of labs and there's i mean it's we're talking about money now because this is like classes that are running stuff that's running on in production it's not just a lab that you're playing with so hank that's great because that's going to change the conversation slightly so based on that sort of change in paradigm and you know job role what can you share from the trenches you know people will say you know it doesn't i learned this in like a theoretical course but it doesn't apply in the real world and obviously like your environment is different to say other environments but what are some of the big takeaways you've got from you know that experience yeah i think one of the most important ones that hit me um when i made the transition was i had to become comfortable not not knowing and being aware of everything that's going on right you have to you have to you have to pick what you're going to focus in on it's it's like a depth versus breath type of a piece and i i look out there and i i i i'm not on i'm not on twitter as much as i used to be um for a bunch of reasons but i go on there occasionally and there's the the rate of change and updates and announcements and cool projects that are happening continues to accelerate um and and i still occasionally feel get like a a fomo right fear of missing out because i don't i'm not aware of what's going on as much as what it is like what's the latest release of this tool how does this one work as it goes through um and so i had to become comfortable saying you know i'm not going to know every single tool in the the potential tool chest that's out there like i used to but the ones that we've picked the tools that we've identified that are going to be fundamental to our architecture that we're going to use to operate and become really good at those ones i've become much more capable with right much better a much better engineer with a smaller set of tools than i was before when i was a decent like i was a good engineer but and i could do a lot with like almost any tool but not at the level that i can do now with those those chosen tools that was that was a big change for me when i made the adjustment was just that comfort level being like i don't i i answer a lot of questions these days with i don't know i haven't touched that in two years um the last i used this this was how we did it and i go and look and it's completely different now and and and trying to help connect people maybe just to folks that are still doing that because they're still great great engineers that are doing kind of that technical and developer advocacy so i i've been able to connect folks and help people get answers to their questions but that was a big change for me was recognizing like i can't keep up with them all um uh the pi i used to go and say okay well let's let's compare ansible to near to napalm to pi ats and like do the same thing with all of them and go it's that's tough to do when i've got we've got tickets to release and things to go through um so that was part of it um the other the other one that was in there is just the amount of the amount of the amount and clarity and type of documentation that i've had to create for some of my projects has changed quite a bit because when we when i write a when i write a routine or some automation that's going to manage our data center infrastructure it needs to be written in such a way that any one of our the other engineers that kind of are in scope for that type of technology for us can pick up that work and follow behind me and so that that level of kind of collaboration has become really important and we're driving into our team is every every part of every task right our definition of done includes documenting something so that somebody else could do it behind you and so there's that communication skill that's become really important um as part of it is to be able to kind of relay relay the information that's out there so it's i can't remember what question you asked me to start out with but those are some no no it's like what what's the top like takeaways from you know what i what i'm hearing from you is like soft skills communication documentation that kind of stuff's really important don't try and you know drink from the kool-aid all the time and um so i should say drink the kool-aid all the time and like try and get the latest the best because in the in the trenches you you can't your environment needs to be stable it mustn't break every second day now do you want to say more about that otherwise i'm going to ask you you know what tech technic technologies do you use yeah the last thing i'll add on that is is one thing that i'm working with our leadership team is to make sure that we still give we give our engineers and our team enough room to be flexible and experiment but i don't want anybody on our team to feel like oh my god it's terrible we're stuck in time we can't do anything interesting we still offer opportunities for innovation every every project we assign to somebody has time built in to kind of learn how something works propose new ideas when we go to pick a tool or pick something there's engineers are given an opportunity to evaluate so it's not like we we stick everybody in time as it goes through but once a decision is made it's like it's it's made we'll revisit this in a quarter or two quarters and see if it's time to update or make changes on that side so that was i didn't want to make it sound like we're just stuck in the dark ages of uh of python 275 because we can't upgrade so i i understand the problem you know when you when it's a lab you can try the latest bleeding edge stuff because if something goes wrong it's not the end of the world it's a lab but when you've got money on the line and paying customers it's a totally different you know kettle of issue you can't take the level of risks that you would perhaps if you were just demonstrating the latest and greatest so getting back to the question what now in your environment and i mean you share what you can what kind of technologies do you use like i remember when we spoke in the posh you really liked nso what what kind of stuff do you use in production so just like again i want to put put put myself in the shoes of someone starting all this theory is nice but give us an example of someone who's doing this at scale u and what do you actually do what do you use so you mentioned nso so i'm still a huge fan of nso so cisco's network service orchestrator product that is our primary network automation configuration management tool um so it's the tool that we use to deploy kind of anything network related um i one of the the primary engineering development tasks i do on our team is that nso development so abstracting what it means to be a network router and make it easy for us to kind of program what those look like how do we build lab environment containers in a very fast automated standardized fashion that can be easy to spin up and and go through so we do a lot of that with cisco nso and it programs against our data center network so that's made up of cisco nx os switches ios routers or ios xe routers we've got out-of-band management switches that are also ios xe so those are kind of the primary network operating system platforms we have it also talks to our compute environment which we're cisco probably not a surprise it's cisco ucs uh specifically hyperflex and so our our data center compute stack is hyperflex based and kind of a converged architecture so we're programming that um our hypervisor platform is vmware like probably 90 of the world so that's what kind of runs our vms as they go through um we're using from a firewall perspective cisco's both kind of the traditional asa style firewall so layer 3 4 as well as the next-gen firewalls the firepower platforms that are in place there we do use ansible it's a very heavily used tool for us but as i mentioned before it's primarily kind of in the linux system administration zone to kind of do configuration management stand up of all of the the the vms and the systems kind of manage those um we're using hashicorps terraform for a lot of our actual implementation deployment of machines so kind of like stateful infrastructures code tooling we also use vault from hashicorp for secret management i've also been a big fan of netbox for years so so the netbox tool is our ip address and data center infrastructure management source of truth git lab provides our version control ci cd capabilities artifact repository for containers and binary files i'm trying to go through our stack sheet to see where we're at on there um we're using pi ats for testing so writing python tests against kind of the network and the health of the network on there we went through an evaluation for centralized logging so that's one of the things that we've been doing in our modernization effort is to pro i kind of implemented a concept that said okay rather than have logs spread everywhere with some some things aggregated other things independent and just maintain on their devices so let's get all of our our logs together um we looked at a few different solutions for that um it looks like we're going to select the last a search for that we're still doing some final tuning on sizing and whether it's on-prem or cloud and some of these other pieces but elasticsearch looks like where we're going to go for log aggregation we use zabbix for our health monitoring so our is the network up are our vms up is are things healthy zabex was the tool we chose there we evaluated a handful that's the one our team liked the most um which i think what other categories uh specific parts you're interested in obviously python shows up all over the place too so yes i mean my question my next question was going to be a nasty one is it's there's this argument that network engineers don't need to learn all this automation stuff because they're just going to buy tools it it and i'm not saying that's the right answer that's just an argument some people have it's like why as a network engineer should i learn python and ansible and all this stuff if i can just buy solarwinds or you know xyz product doesn't matter what it is um you've mentioned a whole bunch of like solutions there um what's your take on that so would you what what would you say to that kind of argument i think it's a bit naive um yes there are tools and i mentioned a bunch of tools right we we didn't build everything from scratch that would be ridiculous i don't have the staff for that um we've we've got giant gaps and skills and we're hoping to hire extra people and go through and it's both on the engineering as well as on the the automation side i may be impossible for me to build everything um what we do need to do though is use those tools to the best of their ability and efficiency's sake um and so it's it's an integration task a lot of the time is how do we get these tools to work together and rather than feel like i've worked a lot of jobs where yeah we had we had dozens of tools but every tool was like its own little island yeah um we don't want to do that we want to make sure that like we're operating a platform right and the platform talks to each other and so when we add something in netbox um here's an example for like a workflow that we went through is netbox has all of our devices our vms our switches our routers our firewalls every system that's deployed like they're all in netbox and i need to monitor them in xavix xavix needs its own inventory of hosts that it needs to monitor in the old day right someone might manually go and add them or maybe they do some export and manipulation and then import something in um but then you end up with problems you're out of sync right is xavix monitoring something that netbox has shown is is inactive right maybe it's offline for maintenance as it goes through and so one of the tasks we had one of our engineers do is i said i need a way to automatically populate all of the devices in our monitoring tool based on netbox and if netbox shows that the device is active it needs to be enabled in xavix and then based on the device type in netbox so netbox knows that this is a network router right that should drive the types of templates and temp in zabic's templates determine like what are we monitoring on this device are we monitoring interfaces we monitoring what services are being monitored so it's like i don't want i don't want anybody to have to like touch anything in zabx to set a host up i just want an automation to go through and say go make sure that zabx is monitoring everything that we have live in the data center so i have the tools but i still needed something to put them together and right so we i needed an engineer that could understand the apis from both sides write a bit of python code make it a reusable tool that wasn't like just a some back of the napkin script that would run once but nobody would understand if they had to update it in the future so that those types of skills are necessary for automation as they go through there will be there will be organizations and teams that happen to be in a case where they they have a tool or they select something and everything they need is capable within that one tool and and it's all got workflows and wizards and pieces and if for organizations that can do that that's fantastic maybe they don't need to automate as much that's not the case with most of the folks i talk to um there's there's automation skills necessary to connect these things together right it's the integration glue network engineers have always been connecting things together that's kind of what networks are i think the automation side of networking is the same it's it's connecting these tools making clear workflows um function so that's a great answer i mean i i i think what you're saying is it there's no single answer for everyone yeah you've got to find what works best for you yeah and that's why like when you ask me what skills are important i kept them fairly generic because i think if people have those if someone had has those skills i will hire them to work on our team right that's what we're looking for is like do you know how these basic things function because i can if you've never used nso before i can teach you that right if you've never used pi ats um i can teach you that it's and we can teach you like the fundamentals of like how computer science and algorithms work um but like that's that's not necessarily what i want to teach someone coming in right if i'm gonna hire somebody there's a level of knowledge that i'm looking for and there's stuff that i'm happy to put on top of it um and that's that fundamental base skills are what we're usually looking for yeah i mean the skills that you mentioned were like scripting python like python rest api data format uh net conference confian type stuff and get you those were the top ones yeah yeah those are if if people have those like the specifics if you've never used terraform i can teach you we've got we've got a um a guy that just joined our infrastructure engineering team he's he he had been working on our team more in the systems development so building the actual like automation tools and interfaces that students interact with um so he we brought him in to work on some of our infrastructure he'd never used terraform before i said that's fine it's this is kind of what it does here's here's the knowledge the learning that we've put together to help people go it's like go take take three days kind of figure the basics out here some examples and now he's a pro right he can use that tool to spin stuff up um it's that base fundamental piece the the specifics that are unique to each organization what tools they pick um what what requirements they have those those are going to be different from company to company team to team so i have to push you understand linux mac or windows it sounds like you do a lot of dev in linux is that right i do my so my my desktop is a mac and macs obviously are kind of like linux like in the back end which is there but when i do my actual development i connect from my mac into a linux machine um we are currently on centos but because of some pieces we're also looking to to kind of co-support centos and ubuntu as they go through but i connect to one of those machines and that's where we do all of my development so when i'm get cloning it's onto a linux machine when i'm building docker containers and testing services and pieces like i'm doing that like the development work is happening on a linux machine um my desktop is the mac experience people always ask this question and i mean just give us your opinion again i need to buy a new computer i'm just starting i want to become a network automation engineer or someone like you what would you buy do i need a certain amount of ram disk space what kind of laptop would you recommend or device would you recommend that i buy that's a good question i so if if the if we take a few things off like if they don't if they don't come to me with it with an egg with experience and that they want to maintain right if they if they're not like i've been a windows guy for 10 years i love windows what should i buy now well by windows yeah as it goes through but if the if it's wide open like that um i would say either windows or mac are probably okay i generally would recommend if you're not worried about price and you don't have like a problem with the mac kind of there's there's parts of getting into the apple ecosystem that some people don't want to do then i like macs right they're they're rock solid they work really well there are plenty of complaints out there and people really kind of ragging on apple for taking ports away and then putting them back like if you get over all of those i've been very pleased with being kind of on in the mac ecosystem for a while machines last forever um i i recently upgraded to an m1 mac mini and the previous machine to that was like a 10 year old macbook pro that that i was still using and the biggest driver for me to upgrade frankly was the fact that it couldn't push out the resolution to my 4k monitor and i was just gotten fed up with not using my monitor appropriately um i i've got a a 10 year old imac that is still super useful and works great um to go through so i love the longevity of the mac machines they're they're stable they work really well i like the linux back end but more and more like like i said i'm doing the development in linux so i would say if you're buying a machine make sure you do have enough ram so that you can maybe do some virtualization i do think that there's some importance there the car the outside of that is you can potentially like farm out the virtualization to a cloud someplace whether it's a public cloud or a private lab data center um that's what i do right the vm that i go into and do my my development on is actually not running on my mac it could but it doesn't it runs in our data center um so if you don't need like if you've got another place to run that type of stuff maybe you don't need as much ram on your laptop but if you want like an all-in-one lab machine make sure you've got at least 16 gigs of ram that's pretty reasonable on a mac one thing that's nice on windows is sometimes it's easier to add ram yourself later so you can upgrade that maybe it's a bit cheaper on that side to go through number of cores in your processor will be important if you're going to run vms and things right on your machine it's going to need some cores and it's going to steal them particularly if you're going to spin up like a network router or switch they like dedicated cores because a lot of them are based on kind of physical hardware platforms and so i i often say okay if i'm buying a machine and i know i'm going to use it for vms i want as many cores i don't care how fast the cores are i just want a lot of cores like give me the most cores that i can get out of the machine those are the the factors i go through other than that i mean you can do a lot with just about any of the machines these days the new windows subsystem for linux is great um though i've been seeing a lot of people complain these day lately about it it seems because it by using it like turns off your ability to do some other things i haven't been windows guy for a while so i don't know the intricacies of that i'm glad to avoid that i kind of just stuck in the the mac land so what about your team dude are they you just to try this is obviously not scientific it's just to try and get a feel from someone who's you know in the trenches what are your team users mainly macs mainly windows mainly linux or just a mix of everything yeah cisco cisco's been somewhat unique for from the day i started every cisco employee could pick which way they went um and and in the engineer group um macs have long been prevalent um we see more macs than we see windows machines as they go through on that side so i would say that we probably see more macs than we see windows um but uh but it's it's probably somewhat close i mean it's not like it's a 90 10 split it's probably closer to like a 60 40 type of a splint split we'll see plenty of windows machines out there and anyone like run linux natively or is generally just split up with vm we i think we have a couple of software developers that their primary machines are linux based um as they go through but it is it's the rarity and it's it really is our our software developers like the guys that are writing like hard code code our our infrastructure engineer folks i don't think any of them have gone like all in on linux but we've got some of our our software developers that i've noticed that that kind of live within linux all the time which is cool i don't i don't have that background like i never i was never a dedicated linux sys admin um i kind of like missed that part of my it career i would be probably fine with linux as my primary machine if i had like the gnome desktop and would interact with it like it was a mac but if i'm going to do that i'll just i'll just use my mac i like it it's easy less thinking hank we're running out of time but i just want to ask you you know in the past you were heavily involved in the devnet website and like some of the sandboxes can you let me give me an update are there any favorite sandboxes that you have or you know for if you're studying for devnet associate developer expert are there sandboxes there that can help you with studies yeah it's a great question so uh for the about the last year when i changed formally over to the learning and certifications team i kind of get so i'm not as close to the devnet in the sandbox team as i was and we worked before but i can't answer the questions specifically as they go through my favorite sandbox um has become kind of the cisco nso sandbox and it's not just because of the nso side it's because when we built it we put in a lot of things that make it kind of a nice all-in-one sandbox so it provides when you spin that sandbox up it gives you a network topology that is made up of ios ios xr and xos devices i think there's a firewall as well so it's it's a nice topology that has a little bit of everything um it has a functional kind of development workstation devbox that has the tooling necessary to do a lot of kind of network automation tasks and then we recently added in um gitlab and netbox and so it's kind of got the source of truth ci cds um version control type of capabilities built into it and so it's it's the sandbox i often go to when i just need a j a place to develop like a lab or an example from because it kind of gives me everything necessary to get started um in one place um if you're studying for the devnet associate or professional or expert and you want to experiment with the apis from a particular platform you'll find sandboxes for i believe everything that's that's in the certifications available in the catalog so there are aci sandboxes and ucs sandboxes and there's access from rocky apis so you'll find everything you need in there one of the questions i've had before is is there going to be a devnet expert sandbox like one sandbox that is kind of designed for the expert exam with everything in there um i don't think there's anybody i don't think there's any plans to build one sandbox to rule them all right now but there might in the future show up but you'll find all the components necessary in the catalog i mean the in the past one of the problems we encountered is like to learn some of the new technologies it's hard i mean some of the to virtualize it you need a lot of ram and stuff but the but the devnet sandboxes have like you say almost everything now yeah yeah and it's that well it should continue to do that i don't anticipate any any changes to that you'll still find the machines there so if you want to experiment with aci or firepower you'll find them all up there and then you don't have to run the vms yourselves hank it's been too long and this went too quick but you know thanks so much for you know taking the time and speaking with me yeah absolutely great to catch up with you david i'm sure we'll uh we'll have a chance to chat some more as they go through i'm curious to see what the feedback from your audience is on our chat if they've got any questions we didn't get to yeah so let me put it this way anyone you know if you've got questions put it in the comments below would you like me to interrogate i like it interrogate hank about uh you know techy topics we tank and i did a lot of technical you know interviews and discussions in the past are there any topics that you you know want us to talk about and hank i mean is there any that you think would be useful coming up oh man i mean there's there are all sorts of stuff we could dive into um and we can certainly brainstorm some pieces that are there but i think what would be awesome is that if your audience said what what do they want to see like what do they want to see us dive into what do they want to see us dissect and explore and kind of explain and that would be i think even better than us just brainstorming pulling out of the wind if we get no suggestions we can brainstorm and pull out of thin air but it'd be great to see what people want to hear hank thanks so much man always a pleasure [Music] you
Info
Channel: David Bombal
Views: 23,703
Rating: undefined out of 5
Keywords: python, anisble, git, github, devnet, cisco, devnet associate, devnet cisco, devnet expert, devnet certification, top 5 skills 2022, ccna, it certification, devops certification, certification courses, ccna study, cisco ccna, best it certifications 2022, linux, ansible, linux operating system, cisco ios, ios, apo, rest api, restful api, cisco devnet, devnet professional, devnet associate (devasc 200-901), devnet sandbox tutorial, devnet sandbox, hank preston, eric chou
Id: es7hEYS1woM
Channel Id: undefined
Length: 60min 34sec (3634 seconds)
Published: Mon Nov 15 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.