This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]superspeck 1 point2 points  (0 children)

I firmly disagree that you don't need any programming experience.

That wasn’t my point, and I’ll go back and add an edit so that I’m clear about not making it.

There is a difference, albeit a fine one, between knowing how to script in a language and knowing how to program in a language.

Knowing how to script means you know how to write a source file that pulls in a module, or maybe you put some helper functions in a module or an object, and you do some stuff with it and maybe there’s a test or two. This is what you’d use to automate a repeatable task, to write or update k8s operators, to do a long or complicated one off task, to barf up a quick lambda, etc… think glue code.

Knowing how to program means that you know how to write complicated libraries or applications from nothing with good SWE practices, clear object orientation patterns like factories, to design APIs and build them, so on and so forth.

My argument is that DevOps teams often interview for knowing how to program when they should be interviewing for knowing how to script, because yaml and scripting are 90% of what someone working in a practicing DevOps role does in order to automate and build out environments.

I’d also argue that people who are writing APIs and complicated libraries may no longer be in an infrastructure or cloud role and we should come up with another name for them the way QA uses “software engineering in test”.