DevOps, SysAdmin, or Something Else Altogether?
We all know the buzzwords, we here them everyday. Ok so SysAdmin is not a buzzword, but you get my point.
Who I Am, What I Do
The company I am working for hired me as a Software Engineer (a fancy way of saying PHP Developer). On the surface my job is to write code and handle problems with the code. Dig deeper and you will find that I actually do quite a bit more than just develop software.
I manage the configuration of our servers, the updates and maintenance of said servers. I work with the security team, and Ops and Helpdesk to get those machines in line with proper needs. I work with my development team to provide the services they need on the boxes. I am also in the R&D department, researching new technologies to make the jobs of my co-workers easier.
I do a lot. I am NOT a Software Engineer anymore, nope I am more along the lines of DevOps (Developer Operations). I am that guy who straddles the line between Developer and Systems Administration, but also handles the relationship with security, QA, the business needs, telecom, and I am sure I am leaving someone out.
Ideally I would continue on my path from Software Engineer to full time DevOps (Manager), and continue helping to create better environments and faster deploys for my team.
My company is working its way to an IPO, and this introduces some problems for the continuation of my career path. The problem is that we have to become SOX (Sarbanes Oxley) compliant. One of the requirements for SOX is a separation of environments. Basically put, software engineers can no longer handle server details. We can’t even touch the production servers.
On the surface, that sounds great for my career path. I can stop developing the software, and continue working on the continuous integration, the deployment scripts, the server architecture, the configuration management, and work on better tools to better support my team.
However, I find more and more that those roles are being taken from me, and handed off to what will eventually be called “Application Engineer”.
Our company is hiring Application Engineers. One of the developers on my team was actually approached by a local recruiter for the position (somehow they missed that he already works for the company). Long story short, the position pays more, and according to the description on the website, is more like what I want to be doing.
This position will be working in a 50⁄50 Linux/Windows environment. Experience dealing with COTS and proprietary software. This individual will have experience working with the QA and software development team and will be heavily focused on applications (configurations,management),Apache, IIS and code deployment.
Really the only problem I have with this, working with Windows. I haven’t used Windows for more than a gaming machine in quite some time. I have latched onto the Open Source scene quite well, and I have really enjoyed it. I have grown accustomed to finding solutions, writing fixes, and configuring the hell out of my systems. The thought of working on out-of-the-box solutions just seems wrong to me. I want the customization. I want the challenge.
However, more pay, and more Systems Administration like work is up my alley.
At the same time one of our SysAdmins left the company this week. That position has been filled, by a very junior admin, but he is family to another admin and will be trained well in time. However, there are two other positions they are hiring for and I have considered those positions as well. Again, the only hang up being that I would be dealing with Windows environments.
To be honest, the Windows thing aside, I think I would like being a SysAdmin for up to 5 years, and then I would want to get back to being the middle man. The DevOps guy.
So what do I do? Do I apply for the Application Engineer position? Do I look at becoming an Systems Administrator? Or do I stay where I am, and force my boss to let me do more DevOps work?