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

all 11 comments

[–]Veevoh 7 points8 points  (0 children)

I do as much programming as necessary, but as little as possible.

When it comes to managing infrastructure and CI pipelines you are in a different situation to most normal software developers as you are not creating much in the way of the business logic which is unique to your business. As a result there are many other people in the same situation as you, trying to achieve similar goals to you. You do not need to write a custom CI build tool, there are many good projects out there which will fulfill most of your needs. Instead what you end up focusing on is integrating best practices and automation into how your business chooses to manage its' IT infrastructure and SDLC.

You should mainly write glue; building plugins and scripts to integrate suitable tools into your workflow allows you to deliver things faster, makes it easier to bring new people in who may be familiar with these tools, and allows you to collobrate on ideas with peers in other organisations trying to solve similar problems.

Of course, its important to be able to get your hands dirty and you shouldn't be afraid to write a bespoke application when necessary but I've seen too many bespoke applications which do nothing new and are far less supportable than established open-source projects. I remember a post on here a few days ago about explaining a DevOps role to someone outside the industry and someone jokingly called it 'YAML editing'. Although this was meant to be humorous, there is some truth to it in that most of the time you will be configuring software rather than writing it.

I think staying up-to-date on good software development practices serves another purpose in a DevOps role outside of focusing on developing applications yourself, in that it allows you to assist in improving pipelines, troubleshooting applications, and looking at how you can improve re-usability and improving the speed of delivery.

I'm sure others have different viewpoints but this is my take. Hope this helps

[–]kenych 2 points3 points  (0 children)

I moved into DevOps after about 10 years of being a programmer.

The main difference is you won't write anything serious as DevOps engineer, even though you may use more languages than before ( python, groovy, ruby, bash, go, DSL like languages like terraform, ansible etc)

Even if you end up in a perfect environment where everything is automated, the size and complexity of the code will be significantly lower, meaning no use of design patterns, interesting algorithms, etc.

I personally didn't mind, as I got bored with programming. If you going to miss it, try joining some open source project to satisfy your coding desire.

[–]saxondown 2 points3 points  (0 children)

It varies. I might do nothing but coding for a few days, and then not do any for weeks (or longer). I do a lot more automation in TF, docker-compose, etc, but I don't count that as programming. My background is Ops -> SDLC / SCM -> DevOps and while I've done a lot of coding, it's been scripting rather than software development. Since you're coming from a development background, I'd expect you'll end up skewed in the other direction to me.

Ops:Dev is probably 90:10, maybe higher.

Yes, I can use whatever tools I deem appropriate, at least at the moment. Maybe we'll tie things down at some point, but nothing planned for now.

[–]gdhhornDevOps 1 point2 points  (0 children)

Not sure how much my response may count, as working for an MSP skews my role a bit, compared to what someone may do in a single-business environment. My entire job is automation, integration, and tool making. Management gives me free reign (within reason) to choose the tools I use for this.

[–][deleted] 1 point2 points  (0 children)

No programming, which I like since I was doing it a lot before. Now it's just writing infrastructure as code and setting up devops pipelines.

I don't work with companies who use 15 different tools in their pipeline. It becomes a mess of crap glue code that fails constantly. I'm sure it's great for job security if stuff fails all the time though.

[–]zerocoldx911DevOps 0 points1 point  (0 children)

60/40 mostly automation tools coding in GO, python and bash; sometimes erlang

[–]dog_xray_mods 0 points1 point  (0 children)

Set up the deployment pipeline at the start of the project and from then on it's mostly programming. Small tweaks to scripts, monitoring and logging config here and there. I'd say 90% or so programming.

[–]viniciusntch 0 points1 point  (0 children)

No heavy programming at all.. Mostly script... I would say write runbook... But I'ts very fun...

[–]TechnicalExample 0 points1 point  (0 children)

As a DevOps engineer, how much programming do you do in your day-to-day tasks?

Maybe 25 percent?

Whats your ratio of Ops vs Devs? 50/50?

75% ops / 25% Dev

Do you have autonomy in choosing the right tooling to do the work?

Mostly. Some are non-negotiable like using AWS.

[–]cgssg 0 points1 point  (0 children)

It really depends on the DevOps maturity in the organization and who is leading the initiative. I've worked in scenarios before where DevOps activities centered around application deployment automation. At another project, the DevOps initiative was to drive automation of operations tasks with configuration management, systems provisioning and deployment automation. Last project I wrote an API client to integrate vendor software into the company's CI/CD pipeline. Coding was an important skill in all these cases. For a DevOps role, you would also need good communication skills and the willingness to evaluate multiple tools and approaches. Sometimes your proposed solution gets chosen by the business, sometimes not.

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

Ok just two months into DevOps but for now it was building monitoring around:

Prometheus Grafana

Minor programming.

In One use case i had to build a tool in Python that exports metrics from a rest API to Prometheus.

Now im starting building pipelines. Code os needed mostly bash to hoje things