Do Software Developers Need Certifications to Succeed?


Introduction
Exactly 2 weeks ago, I passed the AZ-204 certification, and yesterday I also passed AI-900, all on the first try. In total, I now have 3 Microsoft certificates, and I'm heading towards AI-102. But that's not the focus right now.
In this post, I would like to discuss the topic of certification for both beginner developers and experienced professionals. Opinions in the industry vary. Some say certification is unnecessary, and you just need to be good at your job. Others argue that certification is important because it helps determine whether a person truly understands the subject they listed on their resume and whether they have done something that can confirm their achievements and interest in the field.
I suggest looking at certification from the perspective of a programmer and from the perspective of a company hiring this programmer for their team.
Certification from a Programmer's Perspective
It's probably quite obvious that developers, by obtaining more and more certifications, want to show their marketability, demonstrating to employers that they have spent time at least understanding a specific area. Certification does not mean that this person is truly a professional in the field from which the certificate was obtained. Some certifications tend to become outdated, and many certifications earned 10 years ago don't provide the same boost as, for example, the much-talked-about AI certifications from Microsoft, Amazon, and Google today.
Some programmers increase their value this way. Many, especially beginner developers, struggle with negotiating their salaries. Even a small 10% raise can be a real challenge, especially when someone is just "doing their job well." Unfortunately, being a good developer is not enough these days. Due to the current competition, to stay afloat and achieve any kind of raise, employees need to be proactive, build their media presence, participate as candidates and speakers at conferences, and possibly aim for the DevRel field, speaking of product companies. (Of course, there's always the option to enter the job market and look for better offers, but here I'm talking about the leverage that can help a developer get a raise at their company. Or at least try to.)
In summary, I would highlight the following goals (in order of importance) that programmers pursue when obtaining certifications:
Leverage in salary negotiations
The opportunity to enter the job market and sell themselves at a higher price, using the certification
The chance to understand and solidify their knowledge by passing the certification test
To some extent, gain respect and recognition among colleagues and other programmers
A dopamine rush. Some simply find passing certifications to be a game to complete
This is how the picture looks from the programmers' perspective. Now, let's take a look from the company's point of view.
Certification from the Company's Perspective
In this section, I would like to discuss different types of companies and their goals. To start, I want to define the types of companies as I understand them, so you know what I will be writing about below:
Outstaffing company - a company that sells its employees to other partner companies to work on their own or external projects.
Outsourcing company - a company that gathers a pool of employees and assigns them to complete a partner's project, which approached the company with a business idea.
Product company - a company whose employees work on projects within the company itself, from which the company directly profits.
Now, let's examine all these companies and their goals separately.
Outstaffing and Outsourcing-Oriented Companies
Outstaffing. This is quite an unconventional company structure, but it is the simplest to understand. Let's assume we have companies A, B, and C, where:
A is an outstaffing company working with outsourcing company B.
B is an outsourcing company working with outstaffing company A and has clients, company C.
C is a company working with company B and has its own internal projects to complete.
Company C approaches B and says it has a project and funds but lacks employees ready to work on the project. Company B then approaches company A and says they need N employees to work on the project for company C. Meanwhile, company C knows nothing about the existence of company A, and vice versa.
When one of the parties, whether C → B or B → A, requests teams/employees, they may have arbitrary requirements. For example, they might want certified Microsoft developers or a team with an accredited Microsoft Solution Architect. Why? Who knows, it's just what they feel like.
The company has no choice but to force its employees to obtain certifications. This can be done through a carrot-and-stick approach, and each company decides which method suits them best. However, the essence is the same - companies FORCE you to get these certifications. Overall, I would highlight the following goals pursued by the company (in order of decreasing importance):
The ability to sell their employees at a higher price and more quickly by emphasizing the importance of their employees based on the certifications they have obtained.
To enhance the company's reputation in niche circles by claiming, "We only employ certified Microsoft, Amazon, and Google developers."
The ability to receive discounts on certain products by providing information about the company's certified employees.
The opportunity to display badges of well-known firms on their social media page.
The same applies to outsourcing companies. The only difference is the intermediary link. Otherwise, the scheme and goals are almost identical.
Product Company
This is where it gets more interesting. There's a product developed by a group (often a large group) of programmers. This product is sold to other companies, the company earns money, and pays salaries to employees. Everyone is happy. But what about certifications? As absurd as it may seem, it's hard for me to identify goals for a product company regarding why they might need certified specialists. Yes, certainly, for a candidate, having certifications can be a tool for passing the initial screening. And that's it. This scenario is the most interesting because motivating oneself to develop can only come from the employee themselves.
What's the Conclusion?
Programmers should keep in mind and fully understand that certifications mainly serve as a formal acknowledgment of their knowledge and skills in a specific area. These certifications indicate that an individual has taken the time to explore the subject matter in depth, gained a solid understanding of it, and successfully passed an examination conducted by an independent and reputable provider. The most well-known and sought-after certification providers in the industry today include major technology companies like Microsoft, Amazon, and Google. Earning a certification from these organizations can demonstrate a programmer's commitment to their professional development and their ability to meet industry standards.
Subscribe to my newsletter
Read articles from Hleb Sukrystsik directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Hleb Sukrystsik
Hleb Sukrystsik
I'm a .NET Software Engineer with a strong passion for technology and a beginner tech writer who loves to build projects and share valuable tips for new programmers on this blog at hlebwritescode.hashnode.dev. Small fact: speak 3 different languages (English, Polish, Russian). Feel free to reach out to me in any of these languages via Gmail or LinkedIn :) Right now, I’m heading straight toward my goal of becoming a recognized Microsoft MVP — so, will you join me on this amazing journey?