Chapter 9
In This Chapter
Considering the role of corporate IT
Working for a business unit
Identifying the pros and cons of in-house jobs
Every business today relies on technology to get work done. It’s a given. You can’t make cars or even serve hamburgers without technology. Enter the role of corporate IT. There are three main corporate models that firms use to serve technology to their organization: centralized IT, decentralized IT, and a hybrid approach. These models depend on several factors within a company. The advent of corporate IT came about for several reasons, including purchasing power and overall efficiency.
Imagine a company with five business units of varying size. Each business unit requires computing needs from laptops and software, to managing payroll for its employees. If each group were in charge of negotiating and buying computer hardware, software, and payroll systems, the company would have a complicated hodgepodge of technologies that would be difficult to support. Plus, if each business unit negotiated its own deal, the company wouldn’t get the optimal price.
Enter corporate IT. By providing a set of shared technology services like technology procurement, networking services, and software development resources (programmers), organizations can improve efficiency for things like technical support and software development, and maximize spending through shared buying power. You may be asking yourself, “What about decentralized IT? What’s that?” Depending on the maturity of the business, or the cycle that the organization is in, there would likely be an IT group within a business unit. We call this decentralized IT. In this chapter, I look at jobs within the central IT group, as well as jobs within the business units or decentralized IT.
The mission of corporate IT is to provide shared computing services to the organization. What is a shared computing service? This could be desktop support, database services, help with buying laptops to providing Internet access to a department. The idea of running a centralized IT or a decentralized IT differs from business to business. At some level, every large organization — public or private — has some sort of model for central IT services. Many groups that have centralized IT for programmers or database services will also have specialized IT needs at the departmental level. (I cover that in the next section, “Working for a Business Unit.”)
Often, these roles are separated into providing application services to the business or infrastructure services, which include maintain core computing and storage services. Application services include the systems that run finance, human resources, and other systems needed to run the firm. Infrastructure services tend to be more ubiquitous in that they’re viewed like a utility. If a department needs computing resources for customer software development, it can leverage infrastructure services from central IT to provide those resources.
Interestingly, many big data projects begin as shadow IT within business units. As the demand for resources grows, some of these resources shift to central IT. Shadow IT is when groups outside of corporate IT buy and run technology largely without the knowledge of IT departments.
In the end, how centralized IT is will differ from firm to firm. The big data roles typically fall in the following categories as they relate to infrastructure or application services:
Following is a sample job posting for a Hadoop programmer within corporate IT. This is an actual posting for shared services within a government agency (with the name changed to protect the innocent). You can see the types of experience needed and functions required, which can give you an idea of what a day in the life of a corporate IT programmer may look like.
There are a few things here worth calling out, starting with the specialized knowledge of this particular organization. This individual is expected to be a subject matter expert (SME) in this particular field. In this case, the level of expertise is related to the federal agency’s regulatory requirements and knowledge of the enterprise architecture, which are standards the agency uses to build and deliver software applications.
In addition, this person will need to be able to work with business customers. This is a reference to the nature of corporate IT. Remember: You aren’t attached to a particular line of business — instead, you serve as a “shared service” to the entire organization. This can be a really good thing if you like to stay engaged with technology and be exposed to different functions of the organization. The downside, as I explore later, is that you’re a degree away from the core function of the firm.
The job also requires a significant amount of experience in related technologies. You don’t simply need to know how to program Hadoop. Of course, in order to be a Hadoop developer you need knowledge of database systems and general programming knowledge. But pay attention to the vastness of the types of technologies that are required. Statistical programming (R, which is an open-source statistical programming language); database knowledge; Extract, Transform, and Load (ETL) technologies; and scripting languages like Python.
So, what are the implications of these requirements? If you’re coming from a traditional programming background — say, you’re a C++ or Java developer — you must be comfortable in being self-directed and working outside the confines of your “language.” As you’ll see in your research of big data jobs, technologies and knowledge aren’t confined to one or two areas of expertise as they are in many areas of technology.
Finally, this is a senior position. This job requires a person to have 14 to 18 years of experience. It’s a paradox that this role within big data, which is only a few years old, would require such experience. But this is a great example of a job function for a senior-level IT professional who is able to retool her skills for a new field. Only 3 years of big data experience is needed, but you need 14+ years of overall IT experience.
Most technology jobs within a firm naturally fall within central IT, but with big data, all that has changed. Because the promise of big data is to drive new revenue, insights, and innovation, many business units have directly hired people with this expertise. Earlier in the chapter, I mention that individual business units may have specialized needs, and to that end there are in-house IT jobs that aren’t a part of central IT. This is particularly true with big data.
There is a benefit to working directly within a department — you can more clearly see the fruits of your labor. You have a clear line of sight to revenue — your job function can be easily traced to the bottom line.
If you like being able to easily see how your work impacts the bottom line, working for a business unit is the place for you.
Being the in-house big data expert — be it corporate IT or within a business unit — is a great path to consider if consulting or working for a product company isn’t for you. Working directly for a company has its own unique cultural, professional, and career path consideration — both positive and negative.
Working on the inside has a lot of benefits over working for a consulting firm or a product company.
Just today, I spent time with a soon-to-be college graduate who was reflecting on her internship at a major Big 4 accounting firm (see Chapter 8). Although she really liked having diversity in her job, she felt like she didn’t have a chance to go deep within her client’s product offering because her projects tended to last only six weeks or so. Working directly for a company allows you to go extremely deep within that firm’s business.
Here are some advantages of working for a company directly:
Working directly for a company has its downsides. These cons are largely related to the type of culture you prefer to work in.