Preface



I wanted to write something on the topic long time ago. Simply because I have read and I have seen too many developers arguing, most of them convinced that getting a certificate is not worth the time, money and effort spent. To tell you the truth, I think most of us are generally missing the point here.

In this article, I’m going to tell you why.

Sorry, there are no polls available at the moment.



Having a certificate does not mean you are a good programmer



Having a certificate doesn’t make you a programmer. It doesn’t even mean you can write code. All it means is that you have studied for an exam and you have taken it, which is good, but that’s all. We all know that experience cannon be measured by few questions, it’s a complex science and, in fact, you will probably never come across the majority of the issues described in the questions. Doing the real job is an entirely different thing.

And many hiring managers know that. Most of the technical leads/senior people out there simply don’t care about certificates, they know that having a certificate does not mean you can complete a given task correctly and in time.

But do you really think certification is all about knowledge ?



Do you really think it’s all about how much you know ?

The ugly truth is that there is a tremendous amount of shitty companies with shitty products, outsourcing firms which main business is selling low-qualified personnel to people with money that don’t know a bit about software. And guess what. These companies are successful. They are on the market and they are making money, despite the fact that the internals of their products can be compared to a dumping ground.

You know why ? Because most of the clients don’t know what you know. And that’s perfectly normal, such companies have managed to establish a very powerful marketing infrastructure. Every month they invest an incredible amount of money with the sole purpose of marketing themselves better than the competition, reaching better results in the search engines and creating a successful brand around themselves.

Still wondering how is this related to certifications ?

You are a product



You are a marketing product and that’s how most companies look at you, whether we like it or not. You sell yourself, your time, and your skills to companies or individuals for money. Most of them can’t appreciate the quality of the code you write, they can’t see the patterns you have used, they can’t see the elegance in your solutions. But they can see the results, and the results are not always in a direct proportion with the quality of the product internals. Moreover, customers usually don’t have a clear view about what exactly they want, and what can ultimately be achieved.

And that’s perfectly normal, for them the software is just a tool for certain business needs. They simply don’t have the time to accurately measure the value of a given product, so they look at other factors not only related to the product, but to the company that offers it, its presentation, its appearance, the team who had built it.

The lack of professional standardization



Despite all the efforts for standardization, we still need to make a choice between literally hundreds of technologies before every project. There are just too many ways to build a system, and guess what. The majority of them are correct.

My favourite example is Java, with hundreds of web frameworks all designed to accomplish very similar goals (JSP, Servets, Struts, Spring, Wicket, JSF (Ice Faces, Rich Faces, MyFaces, PrimeFaces), Tapestry, GWT, just to name a few). In this case, what exactly does a “Java EE senior developer” means ? Do you need to know all of them to be a senior enteprise developer ? Microsoft is a little bit better at this, you can choose mainly between Asp.Net MVC and WebForms, but what about the other platforms, the other languages ? PHP has another dozen of frameworks, Ruby is also very popular nowadays with another bunch of libraries. And that’s only the server side, but we also have RDBMS and we have the client side, usually written in Java Script (with yet another tens of frameworks available).

That doesn’t sound very standardized to me, and it’s the same with us. What makes you a software developer in the eyes of your manager, your boss, your client ? What is the profession entry level and is there any at all ?

The certifications can improve your professional appearance



They are kind of an assurance that you know what you’re doing. All the non-technical people can’t access your skills, they can’t measure your knowledge, so they rely on assurances. And one such assurance are the certificates, they standardize you as a professional, at least up to a point. They are part of your marketing campaign, your branding, they complement your technical skills.

So, are the certificates really worth it ?



Having said all of this, it depends. Depends on your professional goal, what you want to achieve and how. I’ll give you few points to think about.

If you are a junior developer

A certificate will be of great benefit to you. You don’t have anything else to show, you don’t have any experience, but having a certificate means that you are serious about your future career as a software developer. You’ve spent time and money to study on the field, you may not have experience, but you obviously have the patience and perseverance to attend to a certification, by reading yourself or attending to a course.

The type of company that prefers employees with certificates

Is the company that is working with customers. Clients love assurance, they want to know they are being serviced by the best, highly qualified personnel. The certificates and the university degrees are such assurances, so many companies have their teams listed on their websites, with description of their expertise, education, certifications.

One common example are the outsourcing companies. They usually have a team of people, trying to sell their work to clients on custom projects, charging them per hour. The clients are basically hiring them to create their business ideas, and they want assurance. That’s why there are many companies that actually pay the certificates of their employees.

If you are a freelancer

You’ll also benefit from having certificates. It’s just like having a company, but you are the only employee in there. You still need heavy communication and marketing.

Certain partnership programs require certifications

Another benefit of having employees with certificates (more precisely, the Microsoft certifications) are the MS partnership programs that additionally strengthens the company’s position in the eyes of the customer. In order to become a Microsoft Gold Certified partner, your company needs its employees to have certain amount of Microsoft certifications.

There are companies with policies that also require a certification

There are companies, usually big ones, that simply require you to have a certificate in order to work for them. Or at least they consider it a great advantage during the application/promotion process. Sometimes you just need to get to an interview before a dozen of other applicants. Having a certificate will definitely help you in this case.

Having a certificate can also have a negative impact on your resume

The reason for that is that not everyone would like you to have a certificate. Few of the common examples are:

The company you are working for does not want to pay you a higher salary Obviously, if you have taken the time to achieve a couple of certifications, you will expect a bigger remuneration package. If your boss is not persuaded that having a certificate actually means you’ll do your work better (or at least – faster), or that the certificate itself will help the company advance in the eyes of the customer, he will generally not want to hire you. He would prefer people without any education or certifications, who can actually do the job for less money.

Some of your colleagues can actually be irritated by the fact you have a certification This is often the case with people that are senior to you. They are more experienced than you, they are in the company longer than you, they have advanced in the hierarchy, and yet they don’t have any certifications. But there comes a day when the management realizes that the company can actually benefit from employees with certifications. Believe it or not, there are many people out there who are afraid younger developers might take their place, so they would rather not help you. Or worse.

The majority of developers are quite negative towards getting a certification (are they?) And I can’t blame them. It is true that there are many developers with a dozen of certificates, who experience difficulties even writing a correct “for” statement. Nevertheless, I know many very skillful engineers that also have a lot of certifications, so it’s not always the case.

Of course, studying for a certificate will also increase your knowledge

Considering you have actually read the books required for the certification. It’s mainly theoretical experience, but we all know how important reading books is. Getting the actual certificate is optional.

In conclusion



From a technical point of view, having a certificate is not really worth it. You can be a great programmer without a single certificate, you can do your job, read books and improve your skills without taking any exams. After all, doing the job is the greatest exam out there.

From a marketing point of view, I believe having a certificate is really worth it. As I already said, it depends on many factors and in general having a certificate will not harm you. During your professional path as a developer, you’ll meet different people with different opinions on the matter, and every one will protect his own choice. And it will most probably be a correct one.

Kosta Hristov ( 34 Posts Hi there ! My name is Kosta Hristov and I currently live in London, England. I've been working as a software engineer for the past 6 years on different mobile, desktop and web IT projects. I started this blog almost one year ago with the idea of helping developers from all around the world in their day to day programming tasks, sharing knowledge on various topics. If you find my articles interesting and you want to know more about me, feel free to contact me via the social links below. ;)

Like the article ? Share it ! ;)