New on LowEndTalk? Please Register and read our Community Rules.
What exercises should I put myself through if I want to be a good devops backend developer?
I want to t become really good at packaging software, grafting existing software together to get unexpected functionality, and extending already existing software and getting those extensions committed upstream. What exercises do I put myself through to get good at it and how do I measure my progress?
Start working on meaningful additions to the software. Pay attention to how the authors write their code- and try to make your flow the same way, as well as following similar naming conventions.
exercises...good backend...there is a rich landscape of potential booty gifs here.
scissor jumps and squats...
An idea, look at existing github projects and feature requests to see if you're in a position to add them.
Would you believe I decided to try to be useful for a change? Me neither.
For extending the capabilities of existing software and getting changes committed, look at the bug tracker of a FOSS package that you like, and start fixing stuff. You can even collect bounties for lots of things like that.
For packaging, hmm, every platform/language has its own packaging system and they're all different from each other. So I'd start by writing some useful small library in your favorite language, going through all the steps of packaging it (Ruby Gem, Python Egg, Node NPM, or whatever), and upload it to a package repo. You should also get familiar with deployment tools like Ansible/Chef/whatever.
The term devops has fallen out of favor and either way to be good at it, you have to be a strong coder with decent CS awareness (the "dev" part of devops) plus some knowledge of system organization. The hardest core devops-like organization is probably still Google SRE (site reliability engineering) and they have an online book that I like:
There's good notes about it here:
The way Google does stuff would be massive overkill for any other organization but I found the book instructive about how huge systems are kept working.
Not sure what else to tell you. Depends somewhat on your existing interests and strengths.
@willie the last I heard was the the term sysadmin was going away and devops people will literally the exact same thing sysadmins used to do. I asked based on that premise.
I want to be strong in ops with enough dev to build prototypes.
Heh I'd say sysadmins are still with us, though I think of it as more of an internal IT role, while ops is about maintaining production servers. Devops went away because it morphed into devs who found out that they also had to be on pager call a lot.
So you're describing normal ops, which is perfectly good and in demand, and yes you do have to be able to code a little for it. The original meaning of devops was that you had to be quite a strong coder who also did ops stuff. It was trendy for a while and then it wasn't.
I'm not sure what exercises to suggest for ops, other than setting up and using some deployment tools like Ansible, and maybe some CI (continuous integration) tools like Jenkins. I'm stronger at the dev side so can probably give better suggestions from that angle.
git clone LEEEEEROYYYY JENKINSSS!
DevOps: Get me scalable a build pipeline for our product
Sysadm: Get the email server working with LDAP (and go through everyone's mail)