25 July, 2019
What is the most crucial part of every PHP-based project that comes way before the actual development or even the planning stage? Of course, it’s finding the right PHP developers. And with a big demand for PHP developers and a very diverse pool of candidates, finding the people you’re looking for is not easy. In this guide, we’re going to help you find out what kind of PHP developers you should be looking for – and how to find them.
Are you in need of skilled PHP developers? At The Software House, we’ve been recruiting software engineers for the last 7 years – growing to over 130 people – and, as it happens, the PHP department is the apple of our eye. So, you can say that we know the subject pretty well.
And in this article, we’re going to tell you exactly how we’re working on growing our PHP team, so that you can do it for yourself.
Let’s start by taking a closer look at the PHP job market.
PHP development jobs – an employee’s market
Being in the TOP 10 of the Tiobe Index (at the time of publishing the article) and powering some of the most popular web CMSes (WordPress, Drupar, Joomla) as well as frameworks (Symfony, Laravel), it’s hardly a surprise that PHP is one of the most in-demand programming languages in the world.
This demand is served by roughly 5,5 million PHP developers worldwide. It might seem like a lot, but the group is extremely diverse. It includes some senior PHP developers who work on complex web applications as well as many amateurs, for whom PHP and the technologies it supports serve as an easy gateway to web development.
Barriers to entry are low, but at the same time becoming a seasoned expert takes years and a lot of effort.
To put it in other words: if you want to find the real pros, or even promising juniors, you’re going to have to be selective. So let’s think about what type of PHP programmer you should be looking for.
What kind of PHP programmer should I hire?
In order to properly assess a PHP developer, you should consider both their hard skills (i.e. programming-related ones) and soft skills – personal attributes that make them a good fit for your team.
As for hard skills, The Software House has a list of requirements we expect our devs to have depending on their experience – there are separate lists for juniors, mid-level developers and senior PHP programmers.
For example, these are the typical requirements for a mid-level PHP programmer specializing in Symfony:
- Proficiency in PHP 7 (including practical knowledge of concepts such as OOP, MVC and dependency injection)
- At least 2 years of practical experience in PHP-based programming
- At least 1 year of experience in creating web applications based on Symfony
- Knowledge of Git and its role in the development process
- Practical knowledge of SQL (MySQL and PostgreSQL)
- Communicative English
It’s not difficult to create a list like this. But how to accurately assess if your candidate has what it takes during the short time you have as a recruiter? The good news is that you won’t have to make a choice like this:
This is what Szymon Szymański, TSH’s Head of PHP Development, advises:
“If we want the candidate to show their theoretical knowledge an interview may prove sufficient. But it’s a whole other story if we want to find out what they’re really capable of. One can be a very convincing speaker and charm the recruiters with their self-confidence. A good solution to prevent it is pair programming, which can be carried out with a technical recruiter (e.g. a team leader). It allows you to thoroughly check candidate’s skills such as the ability to use IDE fluently, their thought process, the ability to concentrate, vocabulary, the understanding of programming patterns. It makes it possible to accurately understand a candidate in a short time.”
What about soft skills? According to Szymon:
“Personally, I use every little hint I can to assess a candidate during an interview. Their attitude towards projects, processes, products, client’s needs, other teammates and the problem they are supposed to solve say a whole lot about them. A selfish and self-absorbed person tends to think about their job entirely in terms of tasks and hardly ever tries to view things from a perspective different than their own.”
What else can you do to spot the real deal?
“From our experience, we tend to see that a good junior is often very curious, constantly trying to learn more and more. It’s a valuable trait for the entire team, because a junior like this will challenge older seniors to think more about some choices. On the other hand, more experienced programmers worth their salt have a tendency to openly question things which they think can use some improvements.”
So, if you are to choose between a candidate which lacks in terms of hard skills and one that doesn’t seem like a good fit on a personal level – what should you do? What is more difficult to improve quickly? Szymon believes that:
“Soft skills are harder to acquire by far. The reason is simple. Soft skills depend on variety of behavioral factors. A person’s worldview, character, personal experiences all influence the way they function in a society. Some actions eventually become habits and, as we all know, habits are difficult to get rid of.”
Summing up: in general, it’s easier to teach somebody technical knowledge than to encourage them to develop their soft skills.
KISS – keep it short (sweet is optional)
An interview should be thorough, but you shouldn’t think that you have all the time in the world, either. Take the most out of every minute and keep it short so that you don’t scare away the best candidates. Considering that the current PHP job market is one that belongs to the employee, this is even more true.
“One of the biggest mistakes a recruiter can do is thinking that the candidate has all the time in the world to dedicate. The truth is that we live in a very dynamic world. We all have tons of responsibilities. But the day isn’t becoming longer. How are we supposed to find time for all of that? Personally, I believe that the recruitment process should take just enough to make a good assessment and not a second longer. Back in the day, as a junior, I was given three day’s worth of evaluation tasks. If It happened today, I’d probably laugh in the recruiter’s face,” believes Szymon.
So how much should the interview take? At TSH, it’s usually c. 1,5 hours. In addition to that, the recruitment task (the earlier stage of the process) takes about 2-4 hours to complete. But think of it as nothing more than guidance – the point is that you should finish the process as soon as you determine the candidate’s worth.
How to find a PHP programmer
Now, that we know what kind of people we want to hire and how to talk to them, we should think of ways to find them.
The best way to start the search is by publishing and promoting our job offers. They work especially well when there are many candidates on the market or when you want to find juniors.
It’s often called the “post and pray” method – recruiters publish the offers and hope that the right candidate will emerge.
Many companies can’t afford to simply wait. Instead, they go “on the offensive”, engaging prospects directly, both online and offline.
The two approaches divide the common methods of searching for PHP developers into two groups – inbound and outbound. Let’s take a look at them.
How to find a PHP programmer – inbound methods
Inbound methods refer to all actions that make it possible for your candidates to find your offers themselves. To that end, you can use the following.
- Job portals
The easiest way to extend your reach beyond your own website. You can use them as extra places to publish your job offers. Some of the most popular services worldwide include Indeed.com and Monster.com, but you can also use local alternatives. For Poland, these would be Pracuj.pl, Crossweb or Just Join IT. You can definitely find more of such portals depending on your location.
- The Career page
Did you know that as much as 60 percent of job seekers quit their job application forms midway because of their needless complexity? The point is that the quality of your HR content will greatly impact its efficiency. Pay attention to the copy (including all the important information and benefits) and images, without making it overly long and complicated. Make sure that the form/action button is visible. For increased effect, perform AB tests.
- Social media
Use your own social channels as well as free topic groups, which work really well for us. Make sure that job offers are allowed before you post anything. You will also increase your engagement when your posts sound authentic and plausible. They should be posted by real people and use direct, simple language.
- Internet forums/message boards
As the internet changes, this form of promotion becomes less and less popular, but there still may be online forums worthing the effort.
Both individuals from outside of your organization and your current employees can be encouraged to actively search their own social circles for suitable prospects, should they be rewarded for it through employee referral program. When done well, this can be a great source of strong candidates.
Organizing educational webinars may not be suitable for direct recruitment, but they allow you to promote your brand and establish a relationship with the developer community. One of TSH’s recent ones, “Microservices in Node.js”, attracted hundreds of software developers from all over the world.
When there aren’t enough specialists, companies often choose to recruit inexperienced interns in the hope of raising them to the level of an expert over time. Such an internship can eventually turn into a full-time job. On the downside, this approach takes a fair amount of time. Also, you need some seniors your interns will learn from to begin with.
- Outdoor advertising
Outdoor ads such as large billboards or bus advertising may be highly effective. Since there aren’t that many IT companies that use it, it’s quite easy to stand out. But it’s also one of the most expensive methods. And you really need to think of something catchy, because a simple “XYZ is recruiting” billboard may seem pretty cheesy.
- SEO & Content Marketing
By creating the kind of content your potential candidates need – e.g. by writing an IT-related blog – you will attract them to your online channels, where they will almost surely learn about your job offers and your entire organization. Do these methods actually work? Well, The Software House was able to quadruple the number of organic (free) visits we receive monthly from Google in less than a year of regular content marketing efforts.
- AdWords and other PPC advertising platforms
Content marketing takes time. You can supplement it with PPC-based traffic. However, you should know that the PPC (i.e. pay-per-click) market for programmers is extremely competitive. Finding a way to acquire organic traffic is most likely the best long-term solution.
- PR & HR activity
This part can be best summed up by: “do great things and don’t hesitate to let the world know.” This can include just about anything that your potential employees could find attractive – from creating a great office, through financial incentives, rewards, bonuses and challenging projects. You can learn more about it from one of our previous articles on how to acquire and retain developers.
How to find a PHP programmer – outbound methods
When we do outbound outreach, we initiate the conversation with our prospects. Here are some of the most popular inbound methods when it comes to recruiting PHP developers.
- Direct Search
Online outbound often comes down to contacting your prospects directly via social media platforms and other channels. The most popular options include LinkedIn, Facebook, GitHub or StackOverflow, but the full scope is only limited by the recruiter’s resourcefulness. This method can yield great results, even when it comes to senior developers. However, while LinkedIn may be a very natural choice for such conversations, many candidates may be unwilling, or even annoyed at the idea of being contacted through Facebook or GitHub. You can also use Google and other similar software to conduct Boolean (based on operators such AND/OR) and X-ray (limited to results from a particular domain) searches on your own. But remember – whatever means you use to find your candidates, give the direct messages some thought…
It refers to various online and offline techniques that turn the recruitment process into a game. Typical aspects include points, labels and various achievements to obtain by participants. A gamified competition like this must be designed to find the very best, but at the same time so engaging that they won’t quit too easily. For example, you can hide clues related to the game all over your website (including the source code) and have the contestants find them with a couple of hints. As fun as it is, it’s also quite time consuming to develop in the first place.
- Cooperation with universities
Classes for students usually conducted by the company’s representatives at the school’s premises. A good way to attract talented juniors. But, of course, you need to have good speakers at your company, willing to give such classes.
- Meetups & conferences
There are many ways in which top conferences and meetups make it possible to engage potential candidates. Some of the obvious ones are conferences booths and advertisement as a sponsor. But you can find interested candidates by simply talking to people – a lot of them attend events like this for networking opportunities.
- Self-organized events
If you are able to organize an event that specifically targets your potential candidates, you should definitely go for it. TSH regularly holds a local meetup called Uszanowanko Programowanko. It concerns various programming topics and today it’s the biggest software development meetup in Silesia. You can directly advertise your job offers among developers ambitious and social enough to attend industry events.
How to find a PHP programmer – outsourcing
As you can probably see by now, recruiting the most talented PHP developers is quite difficult. The most efficient methods take a lot of time and effort to organize. If you are not in a position to use them, perhaps the best way to acquire PHP developers is by outsourcing some of your development.
Aside of it, there are also more specific scenarios when outsourcing may turn out to be a real life-saver. For example, a client interested in your software product may wish for a custom-made version of it. The deal is potentially very profitable for you, but your in-house developers all have their hands full. Recruitment is not an option, as it will take too long and you don’t need developers for an extended period of time anyway. In a case like this, top-of-the-line outsourcing is the most reliable way of getting expert PHP developers quickly, reducing the recruitment process to even 2 weeks.
The best way to find PHP developers for your project is to search the Clutch.co directory, where the best companies are listed based on their experience, reliability and client reviews. Below, you can see the Clutch Leaders Matrix – one of the many ways Clutch helps clients find the best software companies. The Software House is classified as one of the leaders of the PHP market based on its ability to deliver and skillset.
To learn more about the benefits of software development outsourcing, read a selection of our previous articles. You can find out why Nordic companies love outsourcing, learning more about the so-called nearshoring. You may also want to read about the possible risks of outsourcing and how to avoid them. Last but not least, if you’re running a team of developers in-house, you should definitely read the protips from our CTO, Marek, on preparing your in-house developers for collaboration with a remote team.
How to find a PHP programmer – tools
Whatever choice you make when it comes to recruitment methods, there are a couple of tools you may find interesting.
- Recruitment process management tools
A class of software dedicated to this is called ATS, i.e. Applicant Tracking Systems. They are used much in the same way as CRMs – in order to automate processes and manage candidates/HR projects. Some of the most popular solutions include Recrutee, Lever, SmartRecruiters and Workable.
- Candidate sourcing tools
There are many platforms, which can help you find your candidates.
- LinkedIn Recruiter Lite – a premium LinkedIn service for recruiters, which aims to speed up the process of finding talent through LinkedIn.
- Intelligence Search – a popular Chrome extension, which helps find people based on various criteria.
- Hunter.io – a tool for facilitating finding email addresses associated with any domain, used by over 1,500,000 professional recruiters.
- AmazingHiring – contact aggregator and talent discovery powered by machine learning.
- Sourcing.io – you can use it to find leads and filter them based on various criteria.
- Freelancer services
Services such as freelancer.com or Upwork usually serve a different purpose than in-house developers or expert outsourcing, but it can still be a good way to find interesting local talent.
- Developers’ skills screening platforms
Platforms such as Devskiller can remove a lot of hassle when it comes to verifying the hard skill of your candidates.
- Keyword Planner and other SEO & content marketing tools
Google’s free keyword-planning tool is helpful for both SEO and PPC advertising. As you delve deeper into these subjects, you will also find even more interesting tools such as Ahrefs or SEM Rush.
- Clutch.co and curated development companies lists
A lot of software houses maintain their presence on Clutch, as it is a go-to place for B2B reviews. Software developers also use it to learn more about their prospective employers, so it’s adviceable that you set up and maintain a profile there.
I bet that now you feel that you are closer to finding your new PHP developer. Just to recap the most important points:
- It’s an employee market, which means finding the right PHP developers will require investing a lot of effort
- There are quite a lot of amateurs, so finding good PHP devs requires a well-planned vetting process
- You should make a list of hard skills requirements, but also don’t forget about soft skills, as they’re harder to acquire
- Don’t make the recruitment process unnecessarily long for candidates
- Inbound methods will help you attract candidates in the long-term and build reputation, but they take time
- Outbound methods may be a bit more risqué, but they will bring prospects faster
- If these are not for you, outsourcing can be the way to go
- There are also many tools that will help you with all these activities
Good luck! 💪
By the way – if you got any questions or you think that PHP outsourcing may be of value to you, contact us – initial consultations at The Software House are free.