Increasing growth and complexity brings about distinctive roles in an organization. Let's take a tour of an established information technology division's roles:
The end users have an idea of what data they want to input and what they want either coming back or going out another end. A business analyst assists end users in defining exactly what those inputs and outputs are and strives to describe the interactions with completeness and consistency.
The infrastructure team provides places for inputs to go to. It starts with physical machines that need to run in a temperature and humidity controlled environment. Sizing the data center and redundancy are primary concerns. And then they put a layer on top of all that, so that hardware resources can be divided or shared as they please.
A network engineer makes sure the places that inputs are going to can be gotten to. They logically divide the data centers into layers of connectivity. It's closely tied to security - the data center having it's own firewall, and each division of the data center having an internal segmentation firewall. Publicly exposed HTTP endpoints may also be placed behind a web application firewall. Certain network segments may be accessible via a VPN connection.
A developer writes instructions to take in input data and turn out output data. Usually transforming the data along the way. That's pretty difficult to do with a stream of 1's and 0's, so developers added layers of abstraction and automation and established shared standards. Layers upon layers, increasing productivity and efficiency. And then rewriting it all.
Events need to be triggered at certain times, in a certain order, at regular intervals - that's enterprise workflow. The operations team is known for having to make late night calls to support teams when processes fail to complete. They need to structure the workflow responsibly, so that the company isn't overwhelmed when multiple teams want their jobs running at exactly midnight and they all fail. There aren't too many enterprise workflow software suites out there - BMC's Control-M, Automic's UC4, IBM's Tivoli Workload Scheduler, and CA's Workload Automation are the big ones.
Update: In response to feedback I'd like to clarify that by "Operations" I mean a team of Operators and not the more general term "IT Operations" that, at best, has a nebulous definition.
The DevOps team drops the developer's input/output instructions into the places that the infrastructure team set up. They set up build servers, integrate with source control, set up deployment scripts. As builds pass inspection they get promoted, eventually to production. It's like development, it's like operations, but it's not either.
A quality assurance analyst will get a series of inputs and ensure that the outputs are what is expected. They need to get inputs that cover all use cases, as well as inputs that are known to be invalid, to verify that the product they're testing delivers the proper outputs. It's important for the analyst to be able to judge what is appropriate coverage when testing to balance testing efficiency against the release changeset.
Security has applications at all levels. There is physical security, for example meeting PCI (credit card processing) standards with a locked, 24/7 monitored data center. There are tools that are placed on the network so that the only inputs and outputs that happen are the ones that are there on purpose. There is additional application security and encryption standards, and then there are users. Users and social engineering traps are believed to only be combated by education. The security team focuses on risk management - danger level and probability - and work towards minimizing risk.
All the data being put into IT needs to be saved for later retrieval. Saved data needs secured, backed up, made to be redundant, processed regularly, adjusted for performance, moved around, archived, extracted, transformed and loaded. It's a full time job.
Who needs a visionary leader when you have predictive analytics? Applying statistics to large data sets can reveal previously unknown behavioral patterns (that you can profit from). This really makes academics irate because it doesn't prove causation. But that isn't a concern for the data analyst because randomized controlled trials are a) expensive and b) take too long.
With some tools, training and a knowledge-base, a first-responder user support team can address the majority of support incidents from users. With time, a user support technician develops relationships and becomes a go-to person for many users, who find that a personal understanding of their level of computer knowledge greatly enhances the efficiency of IT.
Internally and externally developed applications need maintained and supported.
Application support technicians, in comparison to level 1 user support, have greater permissions and working knowledge of specific applications. Should the technician be unable to solve an issue, they become the contact team member for the vendor (or development team) that can ultimately repair or extend the application.
In the case where the company wants to produce a video and stream it to dozens of conference rooms - Media Support and Production can handle this. Admittedly, it's likely less frequent of a request than producing a polished video or supporting a microphone system, but an exciting opportunity nonetheless. They have expensive equipment and they know how to use it.
There are some smart people out there who will tell you that user experience means everything. A user experience (UX) designer could be employed anywhere in the company with great effect, but in terms of IT their focus is on a product's interface and workflow. If the product isn't a pleasure to use, it needs work. They focus on intuitive design, human-computer interactions, information architecture.
The only time aesthetics can be overlooked is when you plan for no one to ever see it. Graphic design is a joy to practice and challenging to master, and a regular task for the designer. The real challenge is getting the company to follow a consistent aesthetic strategy that can enforce brand identification, and produce assets for consumption across all forms of media.
Compliance can tell you what the boundaries of the law are, and whether or not you're outside of them. Frequently, they need the help of security to ensure compliance, but will cover many topics outside of security - privacy policies, service level agreement (SLA) contracts, acceptable use, user agreements, do-not-disclose (DND) contracts. There are grey areas, and in that case they stress that you show good intent. Do you ever see the legal disclaimers at the end of an email? Not enforceable, but show intent.
I don't want to miss mentioning accessibility. A lot of work goes into support for blind/low vision, deaf, amputees, paralyzed users and others - and those users' participation in the process is greatly appreciated. Compliance can be the driving force behind accessibility support.
Responsible growth planning, exploitation of synergies and mapping business needs to IT solutions are the architect's bread and butter. They want a high level view of what is going on to ensure business needs are met while avoiding reinventing the wheel, having efforts duplicated, or starting something now that will be obsolete before it's finished. Depending on the scope of the architect, they may be tackling enterprise-wide problems like "the digital workplace" or looking to extend an existing solution to benefit a separate business unit.
Change control is said to be like herding cats, at times. Disparate yet highly integrated teams need to communicate changes to avoid collisions and conflicts and Change Control establishes a structured venue for that to happen. Like many aspects of IT, this is a process for risk management. Has it been tested? Will there be downtime? Is there a communication plan after the change is made? We want to know what is happening in the organization ahead of time, why emergency changes take place, and how we can avoid them in the future.
A project manager is another cat herder, who needs to track all of the moving parts of a big change and stay one step ahead to pull the stops that would otherwise halt progress. They like estimates, burn-downs, Scrums and time tracking software. With that high level view of progression comes an obligation to manage morale as well.
IT Management primarily looks after people - people who need tools, budgets, career progression, and to work with other people on the same team and with other teams. In some ways they're like an architect, one eye to the horizon and the other on today. Often they'll be the final say on how work is prioritized, and be able to tell you who needs help when.
- Language translation services - frequently outsourced or outside of IT, but kudos to those who translate resources files or JSON in the IDE.
- Product Owners - who are the final say in a Business Analyst's grey area, are welcome in the IT division, but have at least one foot firmly planted in the business side.
- Content Managers - They may as well be members of the IT department, setting up analytics and social media campaigns and having thorough knowledge of content management systems.
I'd like to personally thank the people who fill these roles - Thank you. I apologize if I missed anyone, misrepresented your role or lumped your responsibilities in with someone else's.