Ten Mandatory Skills for a Data Warehousing Consultant
A good data warehousing consultant has certain abilities in dealing with people and a knowledge of various aspects of data warehousing. This list lets you in on a few required skills that all data warehousing consultants should possess.
Even a data warehousing consultant who’s an expert in a particular area (star schema design in a relational database in support of OLAP functionality, for example) should have a broad vision in at least these areas:
Overall end-to-end data warehousing architecture, from tools to middleware to data quality to orchestration software
An understanding of client/server, Web-based, and server-side computing architectures
A firm understanding of database optimization concepts for tuning data access queries
Skills in digging through data sources to see what’s really there
Because the components of a data warehousing environment are interrelated, a consultant must be able to not only provide technical expertise in one or two areas of a project, but also see the big picture.
Deep technical expertise in one or two areas
If you’re going to pay the big bucks for a consultant who claims to be a data warehousing expert, that person must be a true expert. More specifically, a consultant should be able to claim, proudly and accurately, to be the best in one or two areas (database design and front-end tools, for example).
“Um, well, you know, I think that, uh, that requirement the guy in back mentioned, like, last week, right? You know, like, what were we talking about?”
Although a consultant’s written and verbal grammar doesn’t have to be perfect (an occasional dangling modifier is okay), even the most technically astute consultant must be able to convey ideas and understand what others are communicating. It’s critical!
The ability to analyze data sources
A consultant should never design the necessary transformations for a data warehouse solely by using listings of data structures and definitions provided by the keepers of an application or the IT department. A consultant must be able to dig into source databases, even if this source analysis is only a secondary role for the consultant.
For example, even a consultant who isn’t the primary source-data analyst might have to figure out why the business intelligence tool returns strange results.
The ability to distinguish between requirements and wishes
A consultant’s ability to distinguish between user requirements and wishes is important primarily in working on the scope (the first phase) of a data warehousing project. A disparate group of users probably bombard you with cries of, “I need this!” and “I want that!”
During crunch time, good facilitation and negotiation skills are essential when functionality has to be cut from the list — or, at least, deferred until the next version of the data warehouse.
No matter what role a consultant plays, from project manager to data analyst to quality assurance (QA) specialist, that person is an outsider to the members of an organization — and someone from the client company is almost always resentful of the outsider’s “intrusion.”
A consultant on a data warehousing project (or any other project, for that matter) must identify these situations early and do the best possible job of diffusing any conflict that threatens to destroy a project.
An early-warning system
A consultant should act as an early-warning system to identify and report problems to you, the client, so that you can deal with them. The consultant shouldn’t be a snitch, but he or she should be more than just a nose-to-the-grindstone technician.
Because this person is an outsider and not involved (you hope!) in your internal organizational politics, he or she should have some freedom to notify you of problems.
A consultant whose organization has problems (another consultant who isn’t performing up to par, for example) might not feel free to let you know about those problems.
That’s where your company’s people should also act as an early-warning sign for the consulting organization’s staff members. (That’s why conflict-resolution skills, discussed in the preceding section, are so important!)
General systems and application development knowledge
While data warehousing and mainstream computing continue to converge, an increasing number of warehouses will be built using distributed objects; the use of messaging and other data-movement technologies for near-real-time business intelligence will increase; and a lot of other capabilities that weren’t part of a typical first-generation data warehousing environment will develop.
A consultant who has strong skills should have at least a working knowledge of these areas, in addition to basic programming skills and other abilities.
The know-how to find up-to-date information
From data warehousing product bug fixes to information about the latest architectural trends, a good consultant knows how to find up-to-date information quickly — in time to be put to good use on your data warehousing project.
A hype-free vocabulary
Because it’s almost impossible to avoid catchy buzzwords (can you say “data mart”?) in the data warehousing world, don’t hold it against a consultant (or anyone else) who uses these phrases.
But be generally wary of consultants who sound like they went to a trade show and met up with the data warehousing pod people: “Don’t be afraid. Join us for some neural network data mining that uses subject-oriented data to give you predictive pattern recognition built by using data vaulting techniques in SSAS (Microsoft SQL Server Analysis Services) and SSIS (Microsoft SQL Server Integration Services) — we are your friends!”