Tired of workin’ for the man? Want to live the glamorous life of jet setting around from place to place, working on really challenging problems, and eating at foodie restaurants? You just need three things.
1. A price.
Right now, people probably don’t put a value on your time. You can’t exactly put up an hourly rate sign, but you can start to put in some gentle barriers to make sure people respect the worth of your time.
When I was a DBA and people walked into my cube asking me to do something, I pulled up my task list in RememberTheMilk.com. The cool thing about RTM is that it even works on mobile devices, so I can access the exact same task list from anywhere. I would show them the list and say:
“Here’s what I’m working on right now. If I push these aside, see the names next to each request? That’s the person who I’ve promised it to, and here’s the dates when they need it by. Can you run interference for me and get them to delay the dates on theirs?”
It worked magic – people suddenly understood that there was a cost to my time. Often, they were even completely willing to pay that cost. They’d put skin in the game by going to these other executives and bargaining for my time, and they’d be forced to use political favors in order to get what they wanted. Even though I didn’t profit directly, there was still a new cost to my time, and I wasn’t the one paying the cost. I stopped acting as the go-between – I left it up to the consumer to pay for my time.
Later on, I got gutsier with meeting invites I received, too. I’d reply back (without accepting the invite) and say:
There’s not an agenda attached to this meeting invite. Can you give me a quick rundown of the decisions that we need to make during this meeting? I’d like to make sure I come prepared, and I might be able to get the work done even earlier. If you’re not sure what will be discussed, I’ll need to skip the meeting – I’ve got a lot of irons in the fire right now.
When I did get the meeting agenda, I busted my hump to do whatever was required ahead of time, and I’d send it to the meeting holder and copy all of the attendees. My goal was to give them whatever they wanted without actually having the meeting. It worked wonders.
But if I didn’t get the answer I needed, I didn’t attend the meeting. If somebody fired off an email to my boss and said, “Dammit, Brent’s presence is urgently required,” I had my boss trained well enough to ask, “For what deliverable? He’s really busy.”
2. A service.
In the beginning of my IT career, my service offering was “fixer.” When something expensive and technical was going to hell in a handbasket, I wanted to be the first number on everybody’s speed dial. I specialized in reverse-engineering stuff I’d never seen before and figure out the root cause.
That worked great as a full time employee of small to midsize companies, but it doesn’t work for consulting. To understand why, you have to know the difference between consultants and contractors. Consultants advise you on what to do, and contractors do what you tell ‘em. If you’re a great fix-everything guy, you end up as a contractor there for the long term. (There’s nothing wrong with contracting – but remember, this post is about consulting.)
Over time, I ended up specializing in turning around SQL Servers in bad shape. If you had a SQL Server problem that nobody else could solve, I was your Winston Wolf. I got even more specialized and focused on SQL Servers that used storage area networks (SANs) or VMware. It’s good to have a generalist background, but if you focus your service really tightly, you can do an amazing job at that service. This is especially true when you specialize in an expensive technology. If you’re having SQL Server CPU usage problems on a 40-core server, and Enterprise Edition costs $7,000 per core, then my services look pretty darned cheap.
Often, I’m brought into shops where a few local generalist consultants have struggled with a problem for months. I parachute in, use a few slick proprietary scripts and tools, and get right to the root of the problem in hours. I’m able to do that because I just specialize on one product (SQL Server) and I know that product forwards and backwards. It’s the same reason your general practitioner refers you to a specialist doctor when you’ve got ear/nose/throat or back problems – even though it’s all just the body, there’s specialized skills for different parts of it.
I don’t wanna fix the printer. I wanna be the one guy who gets called in when there’s a specialized SQL Server problem – and that’s where the final piece comes together.
3. A reputation.
When people are having a problem, and your skills are the answer, you want them to immediately say to themselves, “Man, there’s only one guy we need to call, and I know exactly who he is.” It takes a long, long time to build up that reputation. If you don’t have it, you have to rely on advertising and marketing, and then you’re in competition with a big pile of other consultants who are doing the exact same thing.
You have to start building your reputation right now – and I don’t mean by blogging, I mean by your own coworkers. When you walk into a meeting, are they excited to see you? Do other departments call and ask for you by name? Do they say, “We gotta get so-and-so in here because I just know she’ll take care of this once and for all.”
You can’t get this reputation by being a jerk. You can’t be the one who has all kinds of rules and always says “NO!” You have to understand the difference between positive and negative reinforcement, and you’ve gotta use the former way more than you use the latter.
Every coworker and manager you have – they’re your test clients. Right now, they’re not paying anything at all for your services. Use them as your test market by becoming an internal company consultant for SQL Server. If you can get raving fans inside your company, you’ve got a chance at becoming a consultant.
Probably the best gauge of future consultancy success is to ask yourself, “If I quit this job tomorrow, and I offered my former users a contract with a price and a service, would they make budget room for me?” Don’t think of asking your manager, because one of your manager’s jobs is to make you feel welcome and loved no matter how bad your personal skills are. Think about the users. They’ve got real budgets, real business needs, and real feelings that they’ve probably expressed to you. If they’d gladly – excitedly – hand you their budget money, then you’re ready to take a shot.
If not, go buy the book Secrets of Consulting: A Guide to Giving and Getting Advice Successfully (or the Kindle version).
If you swing by BrentOzar.com today, you’ll notice that ZOMG EVERYTHING IS DIFFERENT!
About six months ago, we embarked on an ambitious project to redesign the entire BrentOzar.com. We quickly picked Synotac, a web design firm based in Portland, and they knocked it out of the park.
Synotac started by surveying our clients to find out why people called us for SQL Server help and what clients thought of us after the engagements. Armed with that knowledge, they built marketing stuff like customer profiles and key differentiators.
First Up: Our New Brand and Logo
The first Synotac home run – our new brand and logo:
Way back in 2011 when Jeremiah Peschka, Kendra Little, Tim Ford, and I founded the company, we wanted to use BrentOzar.com as the company’s online home base. The domain already had a lot of visibility in search engines, and we wanted to keep moving forward with what was working. However, we wanted clients to know our company was more than just one guy, and that the other founding partners were really equal partners. We came up with Brent Ozar PLF by using the first letter of each founding partner’s last name (Peschka, Little, Ford).
Nobody ever understood it. Even a year later, people still asked us in webcasts, “What does the PLF stand for? Is it like Page Life Expectancy?” It raised the wrong kinds of questions, especially since Tim had parted ways and focused on SQLCruise instead.
We changed to Brent Ozar Unlimited because it’s an amusing play on Limited, which is used in place of LLC in some places. Brent Ozar Limited was our first pick, and then Synotac suggested Unlimited instead.
The pocket is meant to evoke images of a doctor’s lab coat, only instead of scalpels and tongue depressors, we’ve got a pencil and a pair of glasses in ours. Synotac blew us away with this – during our online meetings together, they noticed that Jeremiah, Kendra, and I all had glasses, and they wanted to bring that into the logo. We loved it. (Someday, we’ll blog about the entire logo selection process because this was one heck of a tough decision. Synotac gave us several amazing choices.)
Next Up: Renovating the Home Page
Our old site’s top bar looked like this:
Who We Are and What We Do made sense to us database people, but as we worked with Synotac more, we came to understand why these headers didn’t work for the general public. Community was also a tough one – it led to our posters, video archives, and upcoming events, but those aren’t really communities.
The home page of BrentOzar.com was the blog. This is the way WordPress has always been by default – the home page is the latest blog posts – but it doesn’t make sense now that we’re a consulting company. (Frankly, I’m amazed anybody ever contacted us for consulting because we just looked like a blog.)
The first thing you’ll notice on the new home page is the “hero shot” of the four of us (Jes included) done by the wonderfully talented Eric Larsen. We’d loved our old illustrations by Kendra, who is much more talented than she will admit, but she got tired of us saying, “Can you make me look a little more intelligent?” We loved Eric’s analog style and sense of humor, and we added his funny illustrations on each person’s bio page too.
Above the hero shot, we’ve now got prominent links for problems we solve, services we provide, and first aid. First aid is where our free public stuff goes, and of course we’re going to continue to amp up what we give away.
Below the hero shot, we’ve got links for upcoming events and recent posts. We heard feedback that readers were most interested in these two things, so we wanted to make ‘em really easy to access from the home page.
Everything Else is Better, Too
Of course we’re biased, but here’s some of our favorite stuff about the new site:
- Better Blog Post Headlines – before, people kept leaving comments saying, “Hey, Brent, great post” on things I didn’t write. That sucked. Now, right at the top of each post, we’ve got very clear pictures showing who authored the post.
- Better Free Video Archive – we now include all of our past videos broken up into easier-to-understand categories.
- Better Descriptions of Our Work – Synotac’s copy-writing gurus blew us away with the way they translated our personalities into the written page. We’re so happy with the writing on the problems & services pages.
- Better Newsletter Signup – it’s at the bottom of every page, and the newsletter is now skinned with our web site template, too.
- Better Poster and Whitepaper Downloads – you’ve loved our posters, and now we bet managers will like our short solutions briefs too.
We could go on and on about how thrilled we are with the new site, and we hope you’ll like it too. When (not if) you run into bugs, drop us a comment here and we’ll check it out.
Take it from me, performance tuning ain’t easy. To do it well you need to use all of your technical skill, plan strategically, and communicate your recommendations effectively. You also need to inspire adoption. After all, what good is a plan to change a system if you can’t convince anyone to go along with you?
We performance tune all sorts of environments— from OLTP SQL Servers running 30K+ batch requests per second to multi-terabyte warehouses. We use a wide base of knowledge about database systems to performance tune these environments, but we always make sure that our process avoids three strategic mistakes.
Mistake #1: Specialist Syndrome
It’s tempting to take on a performance problem solo with your core team of super-technical database engineers. It feels efficient, focused, controllable. This is a strategic mistake– by doing this you exclude input from very important parts of your team.
When working with clients we bring together DBAs, developers, managers, sysadmins and business users. We show the whole team how to analyze the database environment from the storage subsystem, hardware, and OS configuration up through the SQL Server configuration and query tuning. Everyone on the team gets a broader perspective about the application environment and how bottlenecks manifest between storage, the database, the application, and the users. Everyone learns more about the problem and explores potential solutions.
We take the whole team through the process, no matter what level they’re at with SQL Server. This is tricky, because it requires explaining complex topics in everyday language. We do this because it’s important, and everyone is completely capable of getting these concepts and understanding performance bottlenecks. Everyone has different pieces of the puzzle and will play roles in short or long term changes.
I wish I knew how many times I’ve heard a business user say, “You guys are still running that? We stopped using that last year.” Unfortunately, I’ve lost count.
Mistake #2: Doing Daily MRIs
Database administrators and developers LOVE routines. They naturally crave activities they can do daily. Performance tuning works best in larger phases, though: focus on a high intensity period of analysis. Then follow it with longer periods of implementing changes, while measuring adjustments in the system.
We work with clients in four day bursts of high-intensity SQL Server workouts because this pattern is effective. We first identify the big pain points we’re going to resolve. We then work through a wide ranging discovery process, put together recommendations, and take the group through training as a recap. We explain context around bottlenecks in the database server and how they relate to the client’s pain points. We plan out recommendations for the next week, the next month, and the next quarter to address those pains.
Following this intense analytical period the client teams disperse. People take what they’ve learned back into their ordinary jobs and execute on their tasks.
Think about performance tuning as a big medical exam: you’re doing bloodwork, getting XRays, and thinking deeply. You reassess your big pain points periodically and use that big burst of activity to communicate across teams and build a larger plan. Doing this intermittently allows you to lead your system to change. Trying this daily turns you into that person always sending irate emails.
Mistake #3: Old Medicine
Whether or not you’re calling in a consultant, you need another pair of eyes on your performance tuning techniques. We’ve refined our process across many clients, and we’re always thinking of new ways we can convey ideas and strategize solutions together. Inside our company, we’re always asking each other, “How can we do this even better?” Just like doctors, we can never accept that we know the best answer for all time to a pain point. We have to be open to new treatments.
Your performance tuning techniques need to evolve. This happens because of changes in your environment, software, data patterns, user patterns, and business processes. Document how you do performance tuning. This includes methods for identifying your bottlenecks and pain points as well as measuring improvement from changes in the system. It also includes defining the team, investigating pain points, planning a solution, and communicating and tracking recommendations.
How you write this down doesn’t matter. What’s important is that each time you use the process, you get feedback on how to make it better and make notes. Since you’re doing this intermittently, those notes are valuable!
If you look back at your method after a year and nothing has changed, you’re probably doing it wrong. By its very nature, performance tuning involves growth and learning. And that’s exactly what keeps it fun.