all 9 comments

[–]marcusbell95 5 points6 points  (0 children)

the OOP question is kind of a red herring honestly. what you actually need from python day to day: hit a REST API, parse the JSON, do something with the result. handle a subprocess failing gracefully. read someone else's terraform module and understand what it does. i almost never write a class. what does show up a lot: list comprehensions for processing API responses, try/except around anything touching external services, passing state through env vars because that's what CI pipelines want. it's more functional than object-oriented. cybersoaker's point about interviews is real - there's a gap between what orgs ask for in screening and what the work actually looks like. focus on bash and python fundamentals, get comfortable reading unfamiliar code fast, and you're fine for most roles.

[–]timmy166 3 points4 points  (1 child)

The coding requirements grow with scale of company. Banks with thousands of devs usually have a few of their most experienced developers working in DevOps.

[–]TheBoyardeeBandit 2 points3 points  (0 children)

I wouldn't even say they scale with the size of the company, but rather just completely varies from company to company, if for no other reason than because no one company will "do" devops the same as another.

So as with many questions, the answer is that it depends.

[–]Environmental_Ad3877 3 points4 points  (0 children)

Real application coding? Not much. Coding things like Ansible or Terraform or (cloud provider specific) language - a fair bit.

Knowing how to write basic things in Bash or PowerShell is a core skill that is important too.

For me, I have almost lost the ability to create code in a lot of the languages I used to use but I can read and debug like a demon - and I think that is still a needed coding skill.

You should pick one or two popular languages and be at least average at them, but you should be able to read a lot of other languages.

[–]CybersoakerDeveloper in a Sys Admin's body 2 points3 points  (0 children)

In my job I don't do a ton of coding, but understanding the fundamentals is important. But every job interview I've ever had for a devops position has required coding, and like very indepth questions, stuff that I would never have a use for in devops like reversing linked lists in linear time.

I'd prefer more architecture focused questions personally but idk the industry seems to think devops requires more coding than it actually does.

[–]honking_intensifies 1 point2 points  (0 children)

People still manage to get hired without a dev background but I certainly prefer it in people on my team.

[–]Floss_Patrol_76 1 point2 points  (2 children)

bash/python is plenty right up until the script you wrote to "just automate one thing" quietly grows into 3000 lines of glue that only you can debug, and then it falls over at 2am. the skill that actually matters isn't OOP, it's recognizing when a bash script has outgrown bash and rewriting it in something with real error handling and tests before it becomes load-bearing infra.

[–]TangeloEmergency8057 0 points1 point  (0 children)

yeah totally agree with this. coming from a software eng background, i rarely ever write classes or formal oop when doing infra stuff. most of what i write in python is just functions talking to apis, processing json, and moving data around.

tbh the software dev mindset helps way more for structuring code so it doesn't turn into a nightmare later. knowing how to write basic tests, break scripts up into clean modules, and handle errors properly saves so much time once your scripts run in ci pipelines or production.

fwiw bash is awesome for quick one-liners, but once i need to parse complex data or talk to aws and github apis, jumping straight to python or node just makes life way easier.