Previous post in the series: 8 things DBA Consultants Do
If you are not a consultant, but thinking about becoming one (either within a consulting company or as an independent one), there are a few things to know about how this market works. It will be easier if you get into a consulting company, as they will support you and teach you, but if you start your journey as an independent consultant, this is crucial.
Work
Before you become a consultant, work in a few different workplaces, preferably ones using different infrastructure. The more different topics you know, the better. You will see different things as a consultant, no question about that, but if you come with a broad knowledge, it will be very helpful. Over the years as a consultant I worked with every single version of Oracle since 7.3, and probably on most operating systems (including VMS and SCO-unix). I also worked on databases located on different storage systems and using different backup software. Every piece i know about these things helped me in some way.
Learn
Clients expect you to be expert. You can’t be expert in everything, of course (more on that in future posts), but you need to know quite a lot. My first DBA job was a system team leader and the department DBA, but I worked with Windows only. When I moved to my second job (as a remote DBA in a mostly-consulting company) I needed to learn UNIX/Linux. I couldn’t become a “real” consultant until I did that, as many companies used UNIX/Linux as their database server.
As I said, over time I also got familiar with storage solutions, backup software and other products and this helped me a lot over the years.
You don’t have to be a sysadmin or storage/network admin, but if you can learn about these topics it will definitely help you a lot. Remember, when you come to solve a problem or provide high level consulting (like in designing a new system), sometimes you will have to touch in different topics, and sometimes you’ll find problems with different infrastructure or application design. If you need to discuss these things with the relevant expert, it’s important to speak in their language. For example, when designing a NetApp-based DR, you should know what Snapmirror is, and if you don’t , but you know the EMC or HDS equivalent, that’s good enough to talk to the storage people. But if you don’t know the concept or technology at all, that might become a difficulty.
This is even more crucial when you diagnose a problem. If you don’t understand the network, you can’t really blame the network. The network people will always say “our side is fine, it’s the database” (you can read my thoughts about this in my “it’s us against them” post). If you think it’s really the network, it’s on you to prove it. And if in the end it won’t be the network, it’s doesn’t give you a lot of credibility.
Improve Your Skills
As I wrote before, there are certain skills that are important to consultants. For example, teaching and instructing. If there is anything you feel you need but you’re not strong at, work on that. Practice speaking, talk and consult with other people, go to courses or anything else you need in order to improve your weakest areas.
Remember
This is something that I like a lot. As a consultant you meet lots of new clients and lots of new problems. But sometimes, a client’s problem might be something you ran into before. You need to try and remember these cases, as you never know when you’ll need to use this knowledge again.
One story I clearly remember is that one weekend evening I got a phone call from a local Oracle representative I knew who asked me to help a client with a failed patch. I was on my way to a family dinner with my wife, baby daughter, and parents in the car, but I called the guy. While driving, I asked him to read some logs to me and tried to understand the issue. It was a RAC patch from 11.2.0.1 to 11.2.0.2 and I quickly understood that the nodes can’t communicate with each other. It took me only a few minutes to remember a similar case at a different client and I realized it’s the same issue. This is a known issue in versions >=11.2.0.2 with multicast configuration (if for some reason you’re interested, you can read MOS note 1212703.1). I told him to run the relevant script from MOS and install the patch if needed. This solved the problem, saved his upgrade and I was a hero. By the way, a few years later I met a DBA and we somehow realized that he was the guy I helped. He still remembered me and the case, and appreciated my help a lot.
This is a really cool story and it happened more than once. In many cases you’ll see issues more than once. You need to remember them so you can use this information in the future. Write a log or a blog, have a directory on your computer with scripts that you’ve written/found/used and do anything you can to preserve the knowledge and be able to reuse it.
Imposter Syndrome
Imposter syndrome is a well known topic and is discussed quite a lot lately in general. With consultants this is a real issue. You visit a client, they expect you to know everything, you don’t, and then you suspect that you are not a good consultant as you think. As you gain experience you gain confidence and you know what you worth, but sometimes you think you are just not good enough, especially in the beginning.
If you are working in a consulting company, you can get the support you need from the people in the company (your employer, not your client). But as an independent consultant, it’s more difficult. This is one of the reasons I think it’s better to start as a consultant in a consulting company before becoming self-employed.
If you’ve been around the industry for a while, you can build a network of people you like and trust (they should like and trust you as well). You can use this network (in moderation) in cases when you need to consult with someone. Don’t forget to be there for the network when someone else needs your help.
Illusory Superiority
I think this is a less known term, but “illusory superiority” is the opposite of “imposter syndrome”. This is the case where people overestimate their abilities. For consultants there is a fine line here: You don’t want to have imposter syndrome as it will affect your success as a consultant, but consultants with illusory superiority tend to be condescending and many people (including ones who work for your clients) don’t like it at all. More than that, if you think you “know it all” and get hired but won’t be able to find the problem and fix it, the client won’t forget it and you will look bad. Another thing is that even if you will find the problem and fix it, sometimes feeling “superior” will make others feel stupid. Even if you actually helped, they might not want you around again, and that’s bad for the business. There is a lot to say about this and I will mention this topic again in the future.
Get updates when I publish new posts – subscribe here:
Becoming a Consultant series:
Upcoming post: Communication
All posts: