site banner

Small-Scale Question Sunday for January 15, 2023

Do you have a dumb question that you're kind of embarrassed to ask in the main thread? Is there something you're just not sure about?

This is your opportunity to ask questions. No question too simple or too silly.

Culture war topics are accepted, and proposals for a better intro post are appreciated.

3
Jump in the discussion.

No email address required.

There's lots of programmers and software devs on the internet, you can hardly move without encountering them. Seems like there's a lot less sysadmins and network engineers. Clearly both are deeply engaged with the internet as a technology and equally essential to its functioning. Am I right to think it's because programmers have a lot more free time to shitpost leading to a skewed impression of the tech landscape? Maybe network engineers just call themselves programmers to save on splitting hairs when talking with laymen? Or can software engineers do all the network tasks if they need to but chose software because it's a better salary? It shows up in the "learn to code" memes too where people offer advice about leetcode practice but I rarely hear anyone suggest getting a Cisco cert. On the other hand I sometimes read posts by software developers who admit to having no idea how anything works outside of their IDE.

Asking mainly out of idle curiosity but if I ever get to the point where I need to look for a job in tech I feel like I'd be more inclined towards network tech than working in a game studio or brewing up a new algorithm for FAANG.

Network engineer with Cisco certs here, AMA if you want to. Some bullet points I would offer:

  • A lot of my friends are devs and, if anything, it's a little surprising how little we each know about each other's fields. I don't know how to code, except for some bash/PowerShell scripting that I use in my job. They don't know how data gets from their computer to anywhere else. Our working days look very different. There certainly are engineers out there who have strong expertise in both areas, but in real life I very rarely meet them. My best friend is a dev and he wouldn't have a clue how to do my work. Of course, being a dev, he's a smart guy and he'd figure it out eventually.

  • Devs do make fun of us.

  • I think software development is more recommended both A.) Because it's easier to access the higher-paying jobs in it and B.) Because it's more extensible to other areas. Network engineering will not help you do data science, for instance. (Not that I'm saying network engineering doesn't pay well, especially if you take it as far as you can. I'm four or five years in and have had six-figure offers, and will probably take one of them this year; and I live in the Midwest. The CCIEs that I know have fabulous amounts of money.)

  • I have loads of time to shitpost. The only problem is I'm not very good at it.

  • I really do like network engineering for its own sake, and I'd encourage you to investigate it more. My work has a good amount of "Aha!!!" moments where we take something from not-working to working, and it feels good.

I guess my first question is what do you actually do in a day? Are you remoting in from a comfy cafe laptop to restart a buggy service and then Googling how to write a script to automate the task for the next time it happens, or are you up to your neck in cat5 cables while your phone explodes because Shanghai is losing $20m for every minute that their server is offline. Or is it more like sitting in meetings looking at project dashboards and politicking to pass the responsibility for who will do another site inspection to check on the contractors you tasked to do the dirty work of scripting and plugging in the cables?

Does Cisco certification mean you're effectively dedicated to routing infrastructure or does network engineering bleed over into other aspects like storage provisioning and electrical specs, or interfacing with ActiveDirectory or AWS and those types of network dependent services?

How do you keep track of all the infrastructure? Running a home network with a few self-hosted services gets pretty complex when you start adding in everything from power demands to storage demands to network segregation to virtualisation, I can't imagine running a full commercial network with all the attending expectations. I guess you just aggressively silo responsibilities into limited roles.

I'm a curious amateur at best, but only being passively exposed to what's on the internet gives the impression of reading the output of one multi-faceted omnipresent techetype who runs everything and without working in the sector it's hard to untangle that into more accurate and discreet person sized models.

Are you remoting in from a comfy cafe laptop to restart a buggy service and then Googling how to write a script to automate the task for the next time it happens, or are you up to your neck in cat5 cables while your phone explodes because Shanghai is losing $20m for every minute that their server is offline.

Not a network engineer, but I've spent enough time in IT operations to have a decent idea what they do. It's more like "users/customers can't get to x or are having flaky issues, figure out why" and then troubleshooting what piece of equipment is failing or what configuration on a router needs to be fixed. Network engineers aren't bouncing services (sysadmins do that), and they definitely aren't usually tracing cables (they could, but it's more cost effective to have a low level tech do that while the senior guy troubleshoots the hard stuff).

Does Cisco certification mean you're effectively dedicated to routing infrastructure or does network engineering bleed over into other aspects like storage provisioning and electrical specs, or interfacing with ActiveDirectory or AWS and those types of network dependent services?

More or less the former. Being an expert at network infrastructure doesn't mean you're an expert at storage or anything else, so people tend to stay in their lane. Obviously these are smart people who could do those things, but may have no interest and would probably have to take a more junior position to switch specialties like that.

How do you keep track of all the infrastructure? Running a home network with a few self-hosted services gets pretty complex when you start adding in everything from power demands to storage demands to network segregation to virtualisation, I can't imagine running a full commercial network with all the attending expectations. I guess you just aggressively silo responsibilities into limited roles.

It's exactly as you guess. A small business may well have a jack of all trades tech guy (and some people prefer to work there so that they get the variety), but at larger companies you have specialists. You have data center techs (racking servers, running cables etc), virtualization guys, storage guys, Active Directory guys, security guys, network guys, phone guys, application-specific guys, DBAs, all that sort of thing. In a healthy company all these teams work together as one big team, but yeah at the end of the day it's teams of specialists. And it's more lucrative to be a specialist, as you might imagine.

I used to work for Charter Communications (the cable company/ISP), specifically in the division that ran the residential network. For something that size, even your network engineers had various specialized areas. You had one team maintaining the nationwide backbone, another which maintained the regional networks connected to the backbone, another which maintained data center networks, and another which handled the part of the network where it transitions from Ethernet/fiber connections over to cable. That was just for residential, there were entire other divisions of the company handling business class service and internal networking that served employees. Long story short, in a large business there's a lot of specialization going on.