It’s a simple fact that job roles in IT have always been evolving since the IT profession began during the mainframe era. One doesn’t find many job openings nowadays in “mainframe ops” even though it was once a coveted position during the early days of computing. Neither does the role of “systems analyst” appear often nowadays, though several decades ago it was all the rage for those wanting entry into the IT profession.
We’ve talked about IT jobs a lot here on TechGenix recently. There’s a simple reason for that — IT professionals have to eat. At TechGenix we have described how technology firms are in the process of solidifying the IoT strategies that will take them to the next level and how those eager to learn can leverage themselves into a red-hot career by learning some red-hot skills. Melissa Burns cataloged some of the most promising computer science jobs for the next decade for those of you looking for a road map to guarantee your future in the IT profession. And Brien Posey speculated about what happens to society when there are no robot-proof jobs, something that many of us working in IT are actually hastening to happen. More articles on our site about IT jobs can be found using this search query.
Having gone through several different job role iterations in my own IT career, I can empathize with those contemplating entering the IT profession and wondering what sort of job role they might end up landing in. And while you can’t prepare for every eventuality life may throw at you, it helps to have some insight from those who have trekked along the IT way before you. That’s why I’ve decided to try and highlight a few of the different IT job roles around these days by sharing some firsthand stories of individuals who work in these roles. As a first installment in this series I asked Mark Feinman of Siwel Consulting to explain a job I wasn’t aware actually existed nowadays as a uniquely identified role in an IT team or department. I’m talking about the role of an “application architecture manager,” and when I heard that this was Mark’s title in his organization, my immediate response was “What’s that?” Let’s now listen to Mark as he explains what he does in this particular job role, because it certainly sounds like fun — or at least it’s never boring!
What does an application architecture manager do?
All of us who have business emails usually have some kind of signature at the end of the email that identifies who we are, what our contact information is, and what our role or title is at the company we work for. And 99.99 percent of the time, the signature is just given a passing glance, except for maybe when an email is received by someone for the first time, as if to say, “Who is this guy?” Recently, someone observed that my signature identified my role as an “application architecture manager” and asked me what that entailed. Nobody ever asked me that question before, and that’s what became the basis for this article.
So … what does an “application architecture manager” do? Basically, there are two faces to this role, one internal and one external. Internally, I handle the care and feeding of my company’s application servers and also perform some basic virtualization maintenance when it becomes necessary. Externally, I consult for other companies that need help in the deployment of software asset management (SAM) tools such as IBM’s BigFix Inventory and Flexera’s Flexnet Manager Suite.
Let’s take a look at some of the internal functions first. The company I work for (Siwel) is a vendor-agnostic software asset management company. Siwel provides a comprehensive portfolio of solutions and services to maximize the productivity and value of its clients’ hardware, software, and human assets. There are several systems, some proprietary, that are used in support of those customers. My primary responsibility in this regard is to ensure that these systems are up and running properly. Normally, the first thing that you might have thought of when you read the previous sentence is that “oh, he’s a server administrator,” but it is more than that. My role also has to ensure that the application itself is in good running order, which means that I am a software developer, too. I don’t just update SSL certificates on a yearly basis or check that the CPU and memory measurements of the servers are good; I also deploy customer requested changes to the applications as well by writing and testing code. In fact, during the week that I wrote this article, I had to find a ghost call to a server that was retired, which forced me to trace through some “long-ago written” code to find the issue.
Sometimes, the virtual servers that run these systems get bogged down. While I’m not an expert on virtualization technologies like VMware, I do know enough about moving a virtual machine from one physical host to another if I see that a particular host is running with high CPU and another host isn’t quite as busy. If for some reason the virtualization technology didn’t make that optimization automatically for me, I can do that myself. The same is true with disk space and RAM; I monitor the virtual machine’s usage and adjust these attributes when it becomes necessary. A theater friend of mine once described her job as “cleaning up the milk before it spills” and I think that applies just as appropriately to my tasks as well! If you can find and fix the little problems first, they don’t have a chance to become bigger problems. I’ve written my own applications to monitor certain attributes and notify me when they exceed certain parameters.
In the past, I’ve also recommended and implemented our single sign-on solution that we use with some of our clients. I’ve consolidated servers that became unnecessary over time and created new servers for new clients when that became necessary. I’ve also written applications to normalize data that is received from clients so the analysts can work with it in manageable chunks.
Procuring the right tools
There are many SAM tools available in the marketplace. Sometimes my company is asked to analyze the software management position for a client whose SAM tool we may not be familiar with. Sometimes our analysts want to get their hands dirty on a SAM tool they don’t often use, and want to reacquaint themselves with it. I maintain a development and test environment where I install and configure these tools and make them available to the consultants for their use. It’s also where I learn how to install and configure the tools, basically installing and destroying them (and repeating this process) until I get the installations right. This is a great form of hands-on learning.
It is this development environment that enables me to be an implementation consultant for SAM tools, which is the external facing part of my role. Once I can install and troubleshoot the tool for myself, I can certainly help others do that as well. These implementation services range from troubleshooting specific aspects of the SAM tool (such as an agent not communicating with a server or a hardware scan that doesn’t seem to run) to deploying the entire tool from scratch, which necessitates architecture creation and security reviews before the first server can even be deployed. A deployment of IBM BigFix is a good example of this — the placement of certain servers in an infrastructure, called Relays, is very important. Relays optimize how the data is sent to the BigFix server (which stores the information about the various clients that report to it). It’s the Relays that enable a BigFix deployment to scale. A big part of designing a BigFix architecture is where these Relays should be placed, how many of them are necessary and an estimate of how many computers should report to each Relay. My development lab helped me to understand Relay functionality, which helps me determine their placement in a customer’s architecture. It certainly gives me the opportunity to recreate issues customers have in existing deployments and then figure out how to solve them, or to come up with a procedure on how to perform a specific task that I can then provide to a customer.
There’s one additional skill that’s common to both “faces” of my job: learning. As an architecture application manager, I’m learning something new every day, and that’s what I really enjoy about this role the most. I’ve been in IT for a long time (and my current role for over five years) and the learning aspect of it is my favorite part of my career. I’m fortunate to have a career that enables me to be both a systems administrator and a software developer/architect at the same time. I can assure you that “cleaning up the milk before it spills” as an IT professional never gets boring!
Featured image: Shutterstock