Today I’ve passed the Zend Framework Certification exam and with that I can finally close my new years resolution for 2010: doing 12 (tech related) exams in 2010. So I’ve seen a lot of exams, good ones and bad ones and I want to share with you my experience by creating a top-5 of must-have certifications for PHP programmers…
People who know me know I’m not a very big fan of certifications in general. Truth is that I don’t really mind the certifications per se, but the fact that 9 out of 10 times it’s not a decent way to establish the fact that if somebody actually understand and have the experience in the subject. For instance, passing the tests for a driving license does not make you a good driver, but establishes that you know just enough to get onto the road to gain the experience. What I miss in certifications is establishing the experience about a certain subject. Most certifications are about “knowing the basics”. I want to see more certifications about “i’ve mastered this knowledge”..
Now, let’s see why you actually want to certify yourself. It’s a great way to prove to your customers, your colleagues or your boss that you have a basic knowledge about something. Just saying “I know PHP well” doesn’t prove anything. I know people who think they are bad (or at least, they don’t think they are especially good) while truthfully, they are better and have more experience than many others I know who think they know everything. So at least it’s a good way of providing proof that you have a certain amount of knowledge.
Another reason: providing a knowledge base to gain experience.
Practical experience and theoretical knowledge goes hand in hand. Without theory, real life development will be much, much harder (if not impossible) and without the practice, knowing the theory doesn’t bring you far (well, except when you are a consultant maybe :)). With the established base it’s much easier to discover new things, correlate stuff and in the end produce better code. As said: most exams are about knowing the basics of a subject, not about mastering it.
My 12 exams + 8 certifications this year
This year I’ve done the following exams (random order):
- Zend PHP 5
- Linux LPI 101
- Linux LPI 102
- Ubuntu LPI 199
- Zend PHP 5.3
- Zend Framework
- Linux LPI 201
- Linux LPI 202
- MySQL 5.0 developer I
- MySQL 5.0 developer II
- MySQL 5.0 administrator I
- MySQL 5.0 administrator II
You must pass LPI 101+LPI 102 in order to get the LPI-1 certification. LPI 201 + 202 for LPI-2, and both the MySQL certifications consists of 2 separate exams. Most exams are taken by PearsonVue, except for the MySQL’s, which are taken by Prometric. Luckily, the exam center is certified to do both, so almost all exams are done in the same place. It also means you can do the exams on any date you like and it was even possible to register for an exam the following day (as I did on the LPI101+102 exam).
All exams I’ve done are done by self study. I cannot learn the classical way since I’m an autodidact but I guess it’s something that I think is very similar for other developers, who really like to have the study material and learn in the pace and time they prefer. Most exams are pretty cheap (about 100 to 150 euros) but attending classes can be a costly business (around 2500 euro’s is not expensive for most exams) so convince your boss that you need it :) When you go for self-study, most courses have good books and material which are pretty cheap to buy. Also, most books are perfect as reference for later use. I still love my MySQL 5.0 certification guide which I use almost every day.
Like unit-testing, mocking is everything.
Make sure that you have done at least 2, repeat 2, mock exams about the subject. But rather do 10 if you can do it. The more the better. Trying only 1 test exam can give you a false sense of security, and by doing 2 you at least verify that you are strong in certain subjects and weak in others or if it were just lucky shots (like easy questions). In the top-5 below I’ll talk about study materials and mock exams per certification, but most mock-exams I’ve bought from uCertify. They are not expensive (especially when buying exams in bulk) and they are actually pretty close to the real deal.
The actual exams will be (much) harder than any mock exams or practice questions out there so if you have troubles with those, do an extra month of study before doing the actual exam. It will be worth it..
Failing is not a shame
Not everybody will pass an exam the first time. This does not mean they are stupid or don’t know what they are doing. There can be many reasons: just bad luck on getting the hard questions, focused to much on subjects that weren’t asked, blackouts, stress,.. It’s not a shame. Find out what questions you did wrong and study again. But, make sure you still keep spending time on the subjects you think you know (if you focus for a week on XML parsers, your PDO-knowledge might get a little rusty again). A bonus when retaking an exam is that you already know the procedures and what you can expect. You start your second attempt much more relaxed which can give you the extra edge you need to pass.
As a boss or manager: please don’t add extra stress by telling them you pay only for the first exam and let employees pay their own re-examinations. The extra stress is certainly not helping anybody. Support your employees by giving them time to study with other (maybe already certified) employees.
Don’t do what I do, unless you know what you are doing.
I’m not bragging about how good I am (ok, well, a bit hehe), but please don’t try to do what I did. Granted, it IS possible, IF, and only IF you have many years of experience in the subjects. For me this year was about “cashing” the experience I’ve build up over the last 10 to 15 years in a broad range from development, php, linux and system administration in general. At one day I’ve done 3 exams and both MySQL certifications were done in only 2 days (2 exams per day). This was only possible since I didn’t really needed to learn, just making sure what was asked and most of the time doing some mock-exams. If you need to study, please prepare a few weeks in advance for every separate exam and take your time.
The top-5 of certifications that every PHP should have (according to me)
Ok, it depends on what you are doing. A programmer who solely work on window machines and oracle probably don’t need most of the certifications below. But still, knowledge is power and this is my list:
5. MySQL Administrator
Even though this exam is intended for system administrators, it has got some very interesting chapters for developers and engineers. Different storage engines, optimizing schemas and query optimization for instance. Stored procedures, backup and restoring databases will also be something you’ll learn, so for all the MySQL-developers who are also in charge of designing the database models, this is a very good certification to get. Information about the study materials and exams take a look at the number 2 (php developer) of this list. I’ve found this one of the hardest exams I have taken and I’ve certainly learned a lot of things I didn’t knew before.
4. Zend Framework
From all the (known) PHP frameworks out there, Zend Framework is probably the most known and used. It’s the only one which you can actually certify yourself for. One of the troubling things about this certification are the outdated questions. The exam is for v1.5.0 of the framework which of course can be considered prehistoric in IT-years. Nevertheless, it gives you a good insight in how ZF is build and how you can implement it into your new and existing projects. Since it will cover almost all (important) components, at least you will get a good understanding of the capabilities (and off course, incapabilities) of the Zend Framework.
Another troublesome point is that there almost no (decent) study material for this exam. There is a study guide on PDF which you can download from Zend.com, but no mock exams or any other information about what to expect.
More information: http://www.zend.com/services/certification/framework/
3. LPI 1
The Linux Professional Institute has 3 different Linux certifications ranging from advanced to expert. This exam is one of the few which is based on experience instead of having a basic knowledge. You need to know command line switches, commands and codes which you probably cannot learn from books, but maybe 80% of those you will know by heart after a few years of working on command line Linux. So really, this
This does not mean that the exam is difficult. Au contraire actually: i did my lpi-101 and lpi-102 in about 30 minutes.. that 30 minutes for 2 exams, where you have 2×90 minutes. Why to place it in the list? Most PHP-developers are working on a LAMP-stack, and it’s important to know all the aspects of the environment you are working in. You should need to know sed, awk, bash and how to do things quickly, why things works a certain way and how to troubleshoot without calling system administration for each and every small problem. The LPI-1 is the basic level where it will quiz you on the basic operation of Linux systems.
LPI also doesn’t have good study guides available, so your options are either classical study or trying out the mock-exams at uCertify or with other exam-programs.
More information: http://www.lpi.org/eng/certification/the_lpic_program/lpic_1
2. MySQL Developer
I truly love this exam and if this wasn’t a PHP top-5, this would be number 1. Although my MySQL knowledge is pretty decent, I still had a some studying to do and found out all kind of nifty little facts about MySQL, which I guess is exactly the point of studying. Both the exams was pretty hard and doing them on the same day doesn’t make it easier. The study guide is a perfect reference and I advise you to buy it right now. It comes with a CD with the study guide on PDF and a lot of example questions which prepares you for the exam. This exam is a definitely must for every (PHP-) programmer who works a lot with MySQL.
1. PHP 5.3
PHP4 is dead, long live php5. Although still a lot of legacy code exists, most php programmers work with at least php5.2 version and more and more platforms run on php5.3. The PHP5.3 certification, which is only a few months old now, is a complete refreshment of the old php5 exam which was based on php5.1. The most important aspect is that the whole php4/php5 differences are now gone and php5.3 features are quizzed. The overlap between php5 and php5.3 exam probably is 80% so my advice is that IF you want to do a PHP5 certification, skip the PHP5 and go for the PHP5.3.
There is not a lot of material out there yet, so the php.net manual and php5 study guides are still your best shot. The mock exams at phparchitect are pretty decent exams to find out where your strength and weaknesses lie.
More information: http://www.zend.com/services/certification/php-5-certification/
As suggested by a few users, here’s a list of reading materials for the courses:
4. Zend Framework. No study material available, only the Zend framework study guide which can be downloaded here.
2. MySql DBE. The same book as for DBA can be used.
1. Zend PHP 5 – php|architect’s Zend PHP5 certification study guide ISBN: 978-0973862140. Note that this study guide is for the zend php5 exam. There is not official material for zend php 5.3, but since the exams have a 80% overlap, this book is a good starting point to start your study.
Certification doesn’t say anything, but it will provide proof that you have reached a certain level. Especially when programming in a scripting-language like PHP, which was known for being a too easy and unsafe language, it’s important to get both the language and developers to a certain standard. PHP5 made a massive jump into becoming a enterprise-ready language, and these certifications can help with convincing your customers that you, your colleagues or your employees have achieved a certain standard and are ready for the next big PHP job.