Last week I sat for, and passed, the PMP certification. In this post I'll discuss problems with vendor certifications and why an industry certification like the Project Management Institute's Project Management Professional certification is valuable. Even a non-manager, propellor-head should consider the PMP certification to advance his career and improve his brand.
After attaining my HP Vertica Big Data Solutions certification last year I wrote [[On Certifications]] to document how my thoughts and feelings have changed over the years regarding certifications. It was a number of years since my previous certification and I entirely forgot what a waste of time certifications and exams really are. The Vertica exam asked very little about the underlying architecture and use cases of the product and more about esoteric features and point-and-click GUI stuff. I find little value in vendor certifications and their exams when the questions are merely a marketing ruse. The fact is that columnar databases are really cool and understanding their performance tradeoffs is fascinating and it's one of the reasons why I really love Vertica. Too bad HP doesn't test any of that.
But industry certifications are a little bit different. The SNIA SCSP is a storage industry certification that I hold that never once asks you a vendor-specific question. Lots of questions regarding theory and best practices, and measuring IO, throughput, and latency...nothing that could be construed as vendor marketing fluff...all concepts that most data people don't know well enough.
PMI's PMP (Project Management Professional) exam also seems to carry a lot of clout in the industry. And it also focuses on theory and best practices and not on features of MS Project, Redmine, or JIRA (ie, concepts vs tool-based knowledge). For many years I viewed PMs on my projects as a complete waste of my time and my client's money. How hard is to slap a plan together and manage it? I even coined my own aphorism about project managers...Project Managers have about as much influence on the success of a project as a weatherman has influence on the weather.
My First Full-Time PM Engagement
I realized that my attitude needed adjusting when I first got to manage my own multi-million dollar project involving database automation. The team had a worthless, part-time PM and the project was already over-budget and behind-schedule. The PM did not have a firm grasp on the project. As terms of my joining the team I wanted to handle all PM functions as well as the technical leadership. The client knew I had the technical acumen to right the sinking ship so I just threw in my demand to be the PM as an afterthought, never thinking they would give me those responsibilities.
Well, they did. It wasn't without my client's reservation however. But they really needed my technical know-how so they caved. Now I actually had to wear two hats. The technical stuff was a breeze, the PM duties...slightly more challenging.
I learned that to manage a project effectively required more than knowing how to do resource leveling in MS Project. In fact, I didn't need to use MS Project at all. Project management is complicated, formulaic, important stuff if you want to meet your deadlines, under-budget, with good quality. The project was righted under me and we closed the budget and schedule gap and delivered a satisfactory product. The sure-sign of a good consultant is repeat business and I did win additional projects based on my initial success.
I found managing projects to be very enjoyable. So I decided to take a course to learn more. My next step was to actually study and sit for the PMP.
I am happy to say that I passed my PMP certification exam on my first try. This is not an easy test and it focuses on trick questions that have very little real-world practicality. That complaint aside, you do learn the important, underlying project management themes. It is a good industry certification that I recommend.
Why PMP certification?
Most data architects, like me, don't get to wear the project management hat. And that's probably a good thing. Conversely, I've found that the PMs I've worked with were little more than MS Project jockeys...they didn't truly understand how to manage technical people, showed no interest in technical subjects (nor their product), and made technical promises to stakeholders without consulting with the technical lead. And they certainly did not understand budgeting and risk management.
I've come to the conclusion that most IT projects fail because of the impedance mismatch between stakeholders and technical staff. Dev projects don't fail because of technical incompetence or a poor choice in technology...those things can usually be overcome. Projects fail because technical people can't talk "business" and business people can't talk propellor-head. That's why we have PMs...unfortunately these folks, in my experience, aren't a good bridge. The best way to overcome the impedence mismatch, IMHO, is for senior technical people to take more accountability for the management of their projects. Learn about budgeting and estimating, learn about risk management, learn about time and resource management. Understand quality management. These are the things that the PMP certification focuses on. If you want to be called a "senior" programmer or an "architect" then you really do need to know these soft skills. You need to be able to communicate to stakeholders on a level they understand. Don't expect your stakeholders to understand the technical mumbo jumbo. The stuff on the PMP exam is the stuff that traditionally bores or annoys highly technical people. That's a shame. It's those items that are most valuable to business people and executives. Examples...contract negotiations, budgeting, estimating, and risk management.
Scrum masters and Agile, in general, rarely help with the impedance mismatch either. I've written before that many agilists use the Agile Manifesto as a way to further obfuscate communications among technical folks and stakeholders. Please see these posts: [[On Points]], #NoEstimates Movement is Nuts, and [[The Cargo Cults of Software Development Management]]...to name just a few.
Improve Your Brand and Be a Better Entrepreneurial Programmer
There is no better way to improve your brand as a Senior Whatever than to attain a certification in project management. Just learned node.js? Ho hum. Just got your certification in Hadoop? Who hasn't? But there aren't many PMP-certified technical programmers...what a great way to differentiate yourself from the crowd.
If you are an Independent Contractor then your brand is even more important. I've gotten a lot of (repeat) business because I do have the project management skills that some of my clients are lacking. There is value in being more than just a superstar coder, especially if you can manage a project loaded with technical folks.
I write often about how tech people need to be more entrepreneurial (see [[Entrepreneurial Programmers]]). This doesn't mean every tech person needs to become an independent contractor or join a startup. It means that the best tech folks are those who think about solving business problems before they think about what TNT (The Next Technology) they are going to try out on the project. Worry about the "whats" first, then the "hows". Entrepreneurs follow a set of patterns and habits that most technical folks just don't have. Since I've studied for the PMP I find I think more about risk management, as an example, far more than I have in the past. I think more about meeting deadlines and how I can avoid gold-plating. These are all good skills that everyone should have.
Management will look at you in a different light with these skills on your toolbelt.
The PMP Catch-22
The problem with the PMP is that you must document your actual experience performing project management tasks before you are allowed to sit for the exam. 3000 hours of experience to be precise. This becomes a problem for technical folks who want to take a more formal role in project management. Stakeholders want PMs with experience and certifications...yet you can't get certifications without experience. There are ways around this...consider working with an existing PM and document the mentoring as part of your contact-hours for PMI. (Yes, this is allowed).
"But I don't want to be management"
This is the reason I most hear for programmers not wanting to learn about PM duties, general management, business skills, etc. That's a shame. If you want to take your career to the next level you have to do something other than learn node.js. (Or whatever is the TNT [The New Technology] of the day.) Sorry, but it's true. Just because you study project management or entrepreneurship doesn't mean you are moving your career onto the management track. There is nothing wrong with being well-rounded.
You can also consider your new-found PM skills to be an insurance policy against future layoffs and technical skill obsolescence. Frankly, like accounting, there ain't much new going on in the project management field these days.
The PMP is a good industry certification. Too many unnecessary trick questions, but still a valuable exam and certification. The PMP carries weight within the industry and even if, like me, you hate management and PMs, it's still valuable to have in our industry. Studying for the PMP is a big investment in time, but the payoff to your brand is immeasurable.
management data architecture other vertica