Rackspace Linux Systems Engineer in Remote, United States
Overview & Responsibilities
YOU ARE THIS PERSON: You are the technologist who knows and loves your Linux (CentOS is our primary but we’ve got RHEL, Debian, Oracle Linux, Ubuntu…). Specifically, you must know how to fix it, build it, design it, understand best practices and be able to plan for a smooth transition to best practices for a system that might have been launched with a less-than-ideal implementation. Quite honestly, it also helps to just have a good attitude when you get pulled into supporting a system that isn’t perfect and it’ll be a while before we can rebuild it in the way we like.
Our team’s focus is on Linux infrastructure; but within that broad scope your job will have an immense breadth and the opportunity to get as deep and technical as you want. We are the back-end of the back-end of the back-end; we architect and design the systems that update the servers that support the applications that support the Rackers to work with our customers. We also help support those servers and some complex apps directly (and set up the Linux Operations team for success doing the same), but ultimately our job is to be the masters of the watch-works that keeps Rackspace’s internal Linux systems running. Our unofficial mascot is the octopus – we have our tentacles in everything and we might be a little weird but we’re wicked smart.
As you find or settle your specialty within our group, some of your tasks at first will both tactical as well as strategic as we push Rackspace into the future of containerization, active and stateful Configuration Management, Repo and Package Lifecycle Management, and deployment pipelines. Containerization helps our internal customers spin up services quickly without needing the resources of an entire VM, and we need to guide internal requestors through the discussion of “is Kubernetes right for you”? The Configuration Management portion involves both Salt and Puppet currently so as we move into the future we’ll streamline and expand the capabilities and footprint until we’re managing our entire fleet. Repo and Package Lifecycle Management is our Katello installation that we’re working to deploy and help mature how we do upgrades for system packages as well as build the infrastructure for custom applications to use it as well. The Jenkins pipelines we build enable our own processes as well as set our Application support teams and developers up for safe success in promoting their code for QC in a safe process without requiring access to the systems onto which they deploy.
While coming on board, your first tasks could include:
Bootstrapping and implementing new servers, both hardware and Virtual Machines; VM builds could be in either running scripts in a semi-self-service automated virtual platform or working with other departments for builds that may have to be on legacy VM environments. We have a Scrum Master to keep the logistics of these processes on track so you can focus on the technical elements. We have an architect to help with customers choosing the right platform (containers, Virtualized, Metal) and designing the specifics of hardware or how to optimize storage, so there’s a lot to learn there and room to step up if this is an area you have a passion in. And of course, there’s always opportunity to work with our sister teams to automate the parts of the new server / environment spin-up process that are still manual handoffs.
Support the Operations team in their rollout of Katello repo management and help write any playbooks that can streamline patching and help with consistency. Work with the project manager to design the Phase II implementation of Katello, and provide engineering support until the Operations team is self-sufficient with the rollouts, only getting involved for escalations and
Write Ansible playbooks for deployment and installation of Configuration Management (Puppet maybe sometimes Salt)
Help onboard existing systems into Configuration Management– if this is really your thing you could head up the effort to create a safe and repeatable process for this. There’s no small amount of risk in onboarding a system that was kicked ages ago, and it’s not for the faint of heart. Perhaps that’s your jam and you could be that hero.
Be on call as an escalation point for the Operations team and also as a direct infrastructure support point for some of Rackspace’s most mission critical applications.
Write Run Books – the glamour awaits for The One Who Can Write Documentation To Rule Them All. We’re constantly developing processes and improvements and we need to be able to provide solid handover and documentation so that the Operations team knows what we’re handing over and can support what we’ve built. Remember: If you don’t document it, eventually we’ll get woken up at 3 am to help support it.
Other things that would make you a good match for us:
You’ll need to enjoy a team dynamic. We are distributed across the US, and we hang out in a virtual video bullpen a lot of the time. We joke, we troll, we collaborate to get our work done and solve problems. We cover the boss’s desk with 50 tiny squeaky rubber duckies.
You should have an overwhelming passion to jump in and help a coworker.
You should always be asking “what’s next” and demanding that the group “give me something to do”.
You should be empowered to fix problems you find but seasoned enough to not go crazy off the rails into some exotic fix no one else can easily figure out. We have some structured commitments we need to meet every 2 weeks, so you can’t exactly dive into esoterica for weeks at a time, but there’s room for you to explore and fix things that need it that you have passion around as long as we all know what’s up and we have our team priority basics covered.
Work out of Jira tickets for your work and log your time. (The glamour never ends).
Fanatically, cordially, and passionately work with our internal customers – the development teams and application support teams that build all the tools that Rackers use to deliver Fanatical Support to Rackspace customers. If their app is on old infrastructure, work with your fellow Engineering Rackers, the DBA’s, and other Rackers as needed to design them a new solution that’s scalable, patchable, maintainable, and cost-efficient.
KNOWLEDGE/SKILLS/ABILITY: Solid knowledge of major Linux flavors and distributions. This includes installation, patching, monitoring, tuning, customizing, securing, troubleshooting, and automating. Firm command of shell scripting, DNS, SSH, HTTP, and TLS/SSL. Overall technical understanding of enterprise datacenter hardware builds and server intersections with the operating system (e.g., configurations of storage, disk, SAN) and other enterprise technical experience and knowledge of networking, firewalls, load balancing, troubleshooting, stack trace analysis, methodologies of design and implementation. Solid operating knowledge (deeper specifics are better) for web servers, cluster management, high availability, database administration, auth/directory services, backups, caching, analysis, FTP, SNMP, JSON, java, virtualization,. Understand automation principles and design. Familiarity with technical concepts of root cause analysis, systems optimization, configuration and source code management, and automation.
TOOLS – any familiarity a plus: Puppet, Ansible, Satellite / Katello, OpenShift, Jenkins.
JOB COMPLEXITY : Responsible for implementation of basic architectural design of hardware, software and/or networking systems. Analyzes systems and determines business requirements. Ensures completeness and compatibility of the technical infrastructure to support system performance. Keeps informed of new technology. Follow and execute Rackspace change management. Contribute and organize central store of knowledge. Attend interdepartmental meetings.
OPERATION : Operates under general supervision. Understands when to escalate issues to coworkers or management. Works with teammates and manager for task prioritization on a daily or weekly basis.
WHAT MAKES YOU THE RIGHT RACKER FOR THIS ROLE
Know when to seek out guidance and knowledge.
Ability to learn and adapt to Rackspace specific tools.
Effectively communicating, both verbally and in writing
Possessing excellent phone and video etiquette
Good personal organization habits – follow up, responsiveness, monitoring email and chat, having a system to track and finish your to-dos and reminders without external prompting
Ability to perform complex problem solving - isolating variables, testing one thing at a time, systematically approaching the problem in smaller parts.
Living by Racker CORE Values – enjoying being part of a company with a unique and distinct culture, and wanting to work at the founding home of fanatical support.
Ability to see beyond personal position or departmental concerns to understand larger company goals and objectives
Being passionate about helping others succeed
Enjoying helping others, offering to help solve a problem
Flexibility of thinking and openness to new ideas; ability to move on with a project even if your input isn’t part of the final implementation
Practicality in application of technological concept, specifically the ability to understand when a quest for perfection is preventing good forward progress.
EXPERIENCE/EDUCATION: Requires a minimum of 2 years Linux systems experience, including systems administration or engineering experience. Bachelor's degree in Computer Science or a related technical field preferred. Linux certifications preferred.
PHYSICAL DEMANDS: General office environment. Some stress may occur at times. Some lifting up to 20 pounds required. Some evening and weekend work may be required. On call rotations required.
The above information has been designed to indicate the general nature and level of work performed by employees in this classification. It is not designed to contain or to be interpreted as a comprehensive inventory of all duties, responsibilities, and qualifications required of the employee assigned to this job.
Req # 39809
Category System Administration / Engineering