Screening PHP Developers

Despite PHP not being the most modern programming language, and several articles claiming the death of PHP the ground truth is that PHP is still one of the most popular programming languages.

PHP is used by almost 80% of all websites, according to W3Techs. WordPress, which is the world's most popular content management system uses PHP.

What is PHP?

PHP is a widely-used, open source scripting language. PHP is an acronym for "PHP: Hypertext Preprocessor". PHP can handle most web development requirements like database, file handling, data processing, file uploads, string operations etc.

What is PHP used for?

PHP works well with HTML and database technologies, so it is one of the languages of choice for developers interested in building dynamic web apps.

Given that PHP is a popular skill, it is easy to find developers with PHP on their resume. But it might be difficult to find a developer with relevant experience. This guide will walk you through everything you need to know to be able to identify PHP developers with the right skills for your company.

Is PHP object oriented?

PHP was initially developed as a procedural language and later extended to OOP with PHP 5. With this update, PHP has the full set of object-oriented programming capabilities.

How long has PHP been around?

PHP was first created in 1994, so it has been around for more than 25 years now. You can check how old any tech skill is.

As an IT recruiter, what should know about PHP?

The ecosystem of frameworks, tools and libraries around PHP

Experience with PHP frameworks and libraries in the ecosystem is potentially as important as knowledge of the programming language if not more.

The most popular PHP Frameworks are Laravel, CakePHP, Symfony, Zend and Yii.

In addition to these, depending on the role, your candidate might require experience with the popular PHP Content Management Systems (CMS) like Magento, WordPress, Drupal or Joomla.

Updates to PHP

PHP is not updated very frequently, but if your candidate worked on PHP 10 years ago, they might not be the best candidate for the role.

PHP 5.6 will become the minimum requirement for WordPress in April 2019, to be replaced by PHP 7.0 as early as December 2019.

PHP developers need to stay in touch with the latest updates to make sure their skills are not outdated. For e.g. PHP 7.2 now officially listed as a recommended requirement to run WordPress.

Upgrading to the latest version comes with speed, performance, and security benefits. Compatibility is another major reason to be on the latest version of PHP, because older versions will be supported only for a limited time.

On-the-job skills vs theoretical knowledge

A degree in computer science and the keyword PHP on their resume does not mean that the candidate is qualified for a PHP role. Developers need to work on complex projects in productions to develop PHP on-the-job PHP skills. Most fresh grads will have none to very basic PHP skills, unless they have worked on a solid project.

There are 5.5M PHP developers in the world, according to SlashData's 2018 survey.

  • PHP is a server side scripting language, so you only need to install it on the server. Client computer requesting resources from the server do not need to have PHP installed, having a web browser is sufficient.
  • PHP has built-in support to work well with MySQL, and it supports a wide range of databases (Postgres, MS SQL, Oracle etc.)
  • PHP is free and Open source, and has extensive documentation and strong community of developers building apps on PHP making it very easy to look for help when you get stuck. It is also regularly updated to stay aligned with latest technology trends.
  • PHP has a short learning curve compared to other languages like JSP, ASP etc.
  • PHP is cross platform, so you can deploy your app on any operating system like windows, Linux, OSX etc.
  • HTML is an added advantage when learning PHP Language. You can even learn PHP without knowing HTML but it’s recommended you at least know the basics of HTML.
  • Database management systems DBMS for database powered applications.
  • For more advanced topics such as interactive applications and web services, you will need JavaScript and XML.

What should a PHP developer know?

Junior PHP developer:

  • Ability to write PHP code, test and debug
  • Ability to implement front-end interfaces from design mockups
  • Ability to design web page mockups and convert into functional pages
  • Collaboration with designers to make changes
  • Knowledge of server-side processes and programming
  • Time management, teamwork, effective communication
  • Analytical and critical thinking and problem-solving

Intermediate/ middle PHP developer:

  • 2+ years of PHP development experience
  • Experience with HTML, CSS, JS frameworks, jQuery, XML etc
  • Knowledge of OOP
  • Experience in MySQL, PostgreSQL etc
  • Ability to create and update technical documentation
  • Ability to refactor code and write unit tests
  • Ability to work on projects of varying scale and size
  • Good task estimation and timely completion
  • Effective team communication and collaboration

Senior PHP developer:

  • 6+ years of experience with PHP, MySQL, and the LAMP stack
  • Experience leading architectural and software development activities
  • Knowledge of Advanced OOP skills
  • Experience working with Git, JS frameworks, Laravel, WordPress
  • Advanced skills to customize PHP resources
  • Ability to learn quickly
  • Leadership skills, and ability to mentor junior developers

How to screen PHP developers

Engineer resumes are often inflated, and might not present the true picture. Relying on self-reported skills makes you vulnerable to making a bad hire.

To hire a PHP developer, first you need to define the job responsibilities that your project requires clearly. You need to understand from the hiring manager what the requirements are, what level of experience the ideal candidate should have etc.

Questions to ask in a phone screen

  • What is the biggest PHP project you have worked on so far, and what was your contribution?
    This is a good question to begin with because talking about past projects put the interviewee in the driver's seat and makes them comfortable for the rest of the questions. The answer to this question gives you insight into the scale of the projects the candidate has worked on, and their level of contribution to the project gives you a sense of their level of seniority.
  • Have you worked on any personal projects with PHP?
    Even though this is not a requirement, a lot of top developers spend time working on personal hobby projects with no commercial use case in mind. If the candidate has a fun project to showcase, that is a good sign about their level of interest in PHP. However, if they do not have any non-work projects to talk about, you should not hold it against them.
  • What is the difference between SOAP and REST?
    An experienced PHP developer should have come across both SOAP and REST, and should be able to explain the major differences. One major difference is that SOAP uses XML while REST supports text, XML, JSON and other formats.
  • Have you worked with any PHP based content management systems (CMS)?
    Depending on what your hiring manager is looking for, you want to ask if the candidate has worked with any CMS like Drupal, WordPress or Joomla.
  • What is object oriented programming?
    Any PHP developer who is up-to-date with the latest technologies should be able to answer this question.
  • What were the major upgrades in PHP 7?
    This question is essential to understanding the level of familiarity the candidate has with the latest updates in PHP. While a lot of companies still use PHP 5, ideally the candidate should have worked with PHP 7, or atleast be aware of the what the major changes are.
  • What other technologies in the PHP ecosystem have you worked with?
    In addition to PHP, the ideal candidate might need to have knowledge of Ajax, jQuery, MySQL, JavaScript, CSS and HTML. In addition, you might also require skills in CakePHP (open source web framework), PHPUnit (unit testing framework) or other frameworks/ libraries and CMS.

Using a skills assessment for PHP roles

You can use any of the following conversational skills assessments to screen PHP developers for on-the-job skills.

Depending on the requirements of your role, you can create a custom assessment with any combination of skills. The assessment will be customized to the experience level and candidate persona you are looking for.