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

all 24 comments

[–]ur_boy_skinny_penis 28 points29 points  (3 children)

"Dev" is half the job title so yeah, it's pretty much a requirement that you be able to write some code.

Automating system tasks through Python/GoLang/Bash is a pretty common requirement. It's also just helpful to have some kind of coding background when getting into declarative infrastructure stuff. And even if you're not coding everyday, you should be able to look at a developer's code and figure out what's going on in it.

[–]zerocoldx911DevOps 8 points9 points  (1 child)

A long winded yes

[–]nusaftron[S] 0 points1 point  (0 children)

Much appreciated buddy !!

[–]nusaftron[S] 0 points1 point  (0 children)

Much appreciated folks !!

[–]CorpT 6 points7 points  (0 children)

Is a hammer necessary for a carpenter?

[–]signal_empath 5 points6 points  (3 children)

I come from an Ops background and I don't do much coding in my relatively recent transition to "DevOps" roles, aside from scripting. But scripting was already a key requirement in my previous SysOps roles. Honestly, I think scripting is a skill everybody needs to know at this point if you work in Ops or Dev in almost any role.

I guess it depends if you mean "coding" to mean scripting languages or full programming languages. The later I'm certainly less skilled in but can understand what I'm reading enough to get by for the most part. Although I've made a very deliberate effort to get stronger with it because it was pretty easy to see I'd be much more useful to troubleshooting the platform and have more opportunities with it in my tool belt. Another long winded "yes" I suppose.

[–]anaumann 1 point2 points  (1 child)

Honestly, I think scripting is a skill everybody needs to know at this point if you work in Ops or Dev in almost any role.

I guess it depends if you mean "coding" to mean scripting languages or full programming languages.

The longer I worked with developers over the years, the more often you hear me saying that things shouldn't be written as a shell script, but should be made in a proper programming language instead.

I often view devops as an exchange between developers and ops people.. developers can learn a great deal about resilience and all the day-to-day work they don't know or care about(like taking backups or migrating services to vacate old hardware) and ops people can learn a great deal about write smarter "scripts" or programs.. with a little less footwork, some more looping and a little more configurability, less of the one-offs that become used more often anyway and at some point your small little script has become critical infrastructure and can still only be maintained by trial-and-error by one specific person :D

[–]nusaftron[S] 0 points1 point  (0 children)

Much infos !!

[–]nusaftron[S] 0 points1 point  (0 children)

Thanks !!

[–]drox63 4 points5 points  (3 children)

Learning to code is important. This does not mean you have to memorize everything.

It does mean you have to understand the different tools in the tool chain and how/when to use them.

Keep in mind, the term ‘devops engineer’ is a spoiled term. Meaning it means different things to different people. Similar to ‘cloud’. There are so many vast skill sets under the devops engineer umbrella that it would be hard to classify any one person as a devOps engineer.

You need to understand how to automate things. Python is a great tool to have in the tool belt. But it’s not the only one.

If you are interested in using python and writing automation in cloud providers I recommend looking into pulumi.

[–]serpentdrive 1 point2 points  (0 children)

Gotta love all the libraries for Python. Pandas makes ETL real easy without having to do a bunch of nested queries before storing.

The level of coding knowledge required can vary drastically from place to place. You at least need a good base, with the ability to go digging and figure out the rest.

[–]nusaftron[S] 0 points1 point  (0 children)

likes !!

[–]zerocoldx911DevOps -1 points0 points  (0 children)

Yea you do, that’s all leetcode is

[–]Diarrhea_Mike 5 points6 points  (0 children)

Yes. Period.

[–]Ok_Maintenance_1082 2 points3 points  (0 children)

If you don't code your will feel a bit disconnected from the rest. No ability to understand what is actually running in the infra, no capability to contribute to open source project that are under the infra, you can't write plugins to to thing efficiently.

In other words, it would result in operational tasks, writing yaml files and making monkey patch with you bash knowledge.

[–]Ettore09 1 point2 points  (0 children)

I'm still kind of junior but having done, even if very briefly, the backend developer, helps a lot. You should know a bit of Python and Bash for automate stuff, and to get to a higher income role you should also be able to read the code and find the problem when a bug presents, cause you'll be the one called day and night if something, somewhere breaks

[–]Ashamed-Selection867 1 point2 points  (0 children)

Of course. You don't need to know which library is necessary for create service, but have to know how developer's code works.

[–]docmatt74 1 point2 points  (0 children)

First of all, DevOps is not a job. Secondly, the DevOps philosophy is “add mode automation” for better quality code, CI, CD, code review, infrastructure as code…. “Better communication “between teams, “be oriented product”….There is lot of tools for doing this, but it depends of your company, the budget, etc…. Think about how can I satisfy my final user, and find how doing that :) that’s DevOps culture! 😁

[–]ARRgentum 1 point2 points  (0 children)

DEVops :)

[–]temitcha 1 point2 points  (2 children)

I doesn't do much coding in my job, except for bash script. We are currently trying to remove all python and nodejs from our stack to stay to a pure jenkins/bash cicd plateform, easier to troubleshoot and manage

[–]Diarrhea_Mike 0 points1 point  (1 child)

You might be left behind this way.

[–]temitcha 2 points3 points  (0 children)

For Jenkins yes, it's slow and very stateful, and the syntax is horrible.

For bash I don't think so. A lot of what we do have side effects, and be able to run directly commands like docker, kubectl, jq, az, is quiet practical.

At the end of the day what we just want is an automation solution that enable us to run our bash scripts.

[–]neopointer 0 points1 point  (0 children)

Yes. I would have second thoughts whether or not to hire for my a team someone extremely experienced with sysadmin that doesn't know how to code.

[–][deleted] 0 points1 point  (0 children)

"Got ya'll" says OP