After a few wonderful weeks overseas, Under the Infrastructure has triumphantly returned home to our headquarters in Texas (where we left our heart anyway). This time around, we’re talking with Greg Hellings, a software engineer specializing in development automation on the platform services side. He’s been with us in Dallas for three years and we’re confident he’ll smash all your stereotypes when it comes to this job field.
But we’ll let him tell you himself.
SOFTLAYER: Explain to us what a software engineer focusing on development automation in platform services does.
GREG HELLINGS: We are responsible for the tooling surrounding building and deploying our software. This covers not only the building of our custom, internal software, but also identifying, installing, and configuring any third-party pieces of software that are required for our infrastructure to run. More so than many software engineers, my team needs to communicate with the network engineering teams, the hardware infrastructure teams, the information systems teams, and so forth.
A typical day could see me discussing web server and load balancer configurations with our IS team, discussing our build and testing process for our internal packages with the QA team, and assisting the application developers in tracking down problems with their code.
Automation is our mainstay. Our eventual goal is to write software that envelops the software other engineers in the company write so that software can be translated directly from our internal development systems, through QA testing, and into our production servers. For those steps of the process where a human is required to interact with our system—such as QA executing manual testing of a release—our goal is to simplify the process so that moving the process into or out of the step requires nothing more than the click of a single button.
SL: What do you do to keep your skill set current and cutting edge?
HELLINGS: If the mind is a weapon, it pays to keep it sharp. And as iron sharpens iron, so one mind sharpens another. My team here is a small group of top-notch engineers, and each of us trades knowledge and tips and tricks with one another. Some of us come from a systems engineering background and others come from a more traditional software engineering background. When we work and play together on our multitude of projects, we generally all have lots to teach one another.
I landed in a job where I get to use far more technology than I ever would have on my own. Working for a cloud provider as large and diverse as SoftLayer gives me the opportunity to operate and craft at a scale at which very few engineers ever get to work, and certainly goes far beyond my own means to own and support. As the world moves towards scale and size, keeping skills sharp requires working on increasingly larger scale and tackling the pitfalls that come with global networks. Most people only get to talk or joke about “cloud scale” applications, but working in the cloud itself, I am afforded chance after chance to work tasks at the scale of the cloud itself.
SL: Why did you become a software engineer?
HELLINGS: It was not by intention! I got my first taste of writing software at the age of seven, when my brother bought an old, used RadioShack TRS-80 and a pair of programming books alongside it. Since we didn’t have any software for the device, I had to start writing my own. From there, it would be another six or seven years before I sat down to write software again, picking up classes at my local community college to supplement my high school curriculum in introductory level programming. But my eyes were set on becoming an astronaut, so I eventually went off to college to study astrophysics. I quickly became disinterested in that avenue and completed a liberal arts undergraduate education, which spanned theology, Koine Greek, chemistry, mathematics, computer science, and music.
But the summer before my senior year of college, I landed an internship working in the field of software engineering and returned to college to work in the IT department as a help desk technician, phone system administrator, and eventually an assistant network administrator. By the time I graduated, it was clear that—through all my detours—the one constant remained my focus on technology, and software in particular. No matter what field I was working in, I always came back to software usage and automation. So when an opportunity for graduate school came up and I was given the opportunity to get a degree in computer science, my choice was clear.
SL: What’s one thing people don’t know about being a software engineer?
HELLINGS: Software engineering is far removed from classroom computer science education. Computer science education makes the issues very complex and addresses a very abstract set of knowledge. But the human aspects of working together in a collaborative team atmosphere comprise being a software engineer even more. The software that actually gets written on a day-to-day basis—especially in the automation sphere—is generally very straightforward and simple. Thus, human collaboration, when we’re talking about software engineering and not just hacking, is one of the most important talents in the field.
SL: When you’re not working, what are your favorite things to do?
HELLINGS: Software engineering! But most of my time is spent working around the house and taking care of my family. AcroYoga also entered my repertoire last year and has opened me up to a whole new world of play and enjoyment outside the computer.
You now have our permission to dismiss all previously held notions of a software engineer.