Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

laracastsluvr's avatar

How to Assess Coding Skills specific to PHP and Laravel?

Hello friends,

I could use some advice. I've been developing Laravel apps for 18 months now and I've been a PHP dev since 2008, but always in a freelance capacity or for personal endeavours.

I've created a new startup for a new personal project, but I required help. I need to hire 2 talents to offload some work I have to do and to speed up the project. One might say that with the many years I have behind me it would be easy to assess someone's skills, but yet I find it hard to come up with a good way to do that. Hiring a talent acquisition agent is unfeasible with the 16% (lowest I found) overhead to the annual salary of the talent they will acquire for me. As I mentioned it is something new I'm trying, I have my personal funds committed and planned for 12 months (rent, equipment, utilities, salaries, etc.)

I need to hire Full Stack PHP devs. Which means they also need to know JS+HTML/CSS for front-end work, and PHP/MySQL+Laravel for back-end work.

I have some candidates lined up, and I plan to start making screening calls. I came up with the following process.

Screening Call

30-45 minute session call with pre-screened (CVs) candidates to determine personalities, what their goals are, why they applied, previous experience, how they see their future, etc.. I think this is somewhat standard practice and I should be able to handle it.

Code Assessment Call

45-60 minute session using some type of screen sharing tool or coderpad (not free). Here is the most difficult part of the whole process. I need somehow to come up with 2 tests (front-end and back-end) that can be completed within the session time frame and that can give me a general idea about the candidate. I've read online that this is a waste of time or not accurate enough. I do also agree with the fact that the candidate could be stressed out and not perform well. I certainly would be stressed. The candidate could be a good fit and I could miss it this way.

Now, I know the specifics of my project and should be able to come up with tests, but I've been at it for some time now and can't. I also think that code interviews might give false-negatives or false-positives about the candidate. This is where I need help mostly. I've looked up coding interviews and found some listicles that are kinda lame. 25 PHP Coding Interview Questions or XX Best PHP Programming interview questions... etc. etc. I might seem as a freeloader here, I know talent acquisition agents have spend sweet sweet $$$ to answer my problems, but can't commit more funds right now.

Final Call - The simulation (not completed yet)

After the Code Assessment call I will probably do a final follow up call to assess a finalist's problem-solving , communication, teamwork skills, etc. with a simulated and theoretical assignment to design a new 'something' for the company or a client. This call should take more or less 60 minutes.

Anyway, I'd like to read some thoughts and advice.

0 likes
7 replies
bobbybouwmann's avatar

Hee hee,

In general, it's hard to hire the correct people right away. It's impossible to always hire the best or the right person. So you have to accept that you might make a mistake with this at some point. But that is good. You learn from those experiences ;)

I would personally not like a code assessment call where my interviewer would be watching me code. In general, when a developer is working they do it on their own. There might be some pairing from time to time or some discussion about how to solve something but in the end, the code is written on their own.

The company where I work also has a coding challenge. However, we let the person do this at home in their own time. We tell them to take around 2 to 3 hours to work on it. After that, they send us what they have and we look at that. The coding challenge itself has some challenges with an API. We leave the user free to set up a nice frontend and write tests for it. Based on those decisions we can already see what kind of coder this is. We review the code and then discuss it with the candidate. Maybe give some feedback or ask about how things can be solved differently if there was more time. They didn't complete the challenge but added tests for the most important parts, well that is way better than a person who spends two hours on some CSS to make it look good

You can find our code challenge below and you can use it for your own purposes ;) Let me know if you have any questions.

Laravel Coding Challenge

To do a small Laravel check-up we have thought out the following challenge for you. In general, this challenge should be completable in around 2 hours. It’s not a big issue if you take longer or don’t finish on time. The goal is to get a clear view of how you think and work.

The challenge

The challenge will contain a few core features most applications have. That includes connecting to an API, basic MVC, exposing an API, and finally tests.

The API we want you to connect to is https://kanye.rest/

The application should have the following features

  • A web page that shows 5 random Kayne West quotes (must)
  • There should be a button to refresh the quotes (must)
  • Authentication for this page should be done with a password (must)
  • An API route should be available to fetch 5 random Kayne West quotes (must)
  • The API route is secured with a token (nice to have)
  • Above features are tested with Feature tests (must)
  • Above features are tested with Unit tests (nice to have)
  • Provide a README on we can set up and test the application (must)

Notes

  • HTML/CSS/JS styling is not part of this, it doesn’t matter how it looks like.
3 likes
laracastsluvr's avatar

Thanks for taking the time to reply.

I agree that you learn from past mistakes, but taking a few steps to make sure you make fewer in the begining is also wise. Minimizing wasted funds and time is my goal right now. Thanks for the challenge example, btw. I'll even try it myself. Shouldn't take more than 20 minutes to complete even with a few quick peeks to manuals/internet.

You also mentioned that you give the challenge to applicants to complete as homework. This looks like a good way for false-positives. You hire and then discover that the person cheated... fire them and start all over?

bobbybouwmann's avatar

@laracastsluvr Well, yeah we fire them and start over. However, we always discuss the code with the person itself, so if they cheated we will notice it right away. They won't be able to explain what the code is doing or how to implement a different solution. We also put some trust in people. You can't know anything.

If you did the challenge in 20minutes, you probably didn't write many tests. I would be very curious to see your implementation ;)

laracastsluvr's avatar

@bobbybouwmann Hello,

Sorry for the late reply.

Yeah, I haven't given it a try yet. And you're totally right, I don't do TDD unfortunately (and unforgivably). I do rapid prototyping and then refactor stuff.

But I've given it some thought and you're once again right. If they cheat they wouldn't be able to explain much of what the code does. So I figured I should create a "challenge" that has a lot to do with my codebase already.

I'm thinking that a good challenge would be to create a URL shortener service.

  • A page to create new short urls.
  • A success page shown after creating a new short URL displaying the short version.
  • A page to register/login. (Auth with password)
  • A manager type page for logged in users where:
    • URLs can be retrieved (list page, view, edit, delete, disable)
  • URLs need to expire with email notification (push would be nice)
  • Shortened URLs need an "exit" page that redirects to the actual URL
  • REST API, optional nice to have.
  • Redirect/Exit analytics... really optional nice to have

No styling required, a default browser input field with a submit button and simple tabular views for "dashboard" to edit/delete/view URLs of logged in users.

The above challenge would cover The Basics, Security, and some stuff from Digging Deeper from Laravel documentation. It doesn't cover interfacing with external APIs, tho.

What do you think? Feasible within 2-3 hours ?

bobbybouwmann's avatar

@laracastsluvr I think an URL shortener service makes sense, but you should probably already setup a basic repository where only the real code needs to be added, not the boiler plate. I think it's pretty tight in 2-3 hours for some developers.

You can of course just try it out and see what happens :)

1 like
laracastsluvr's avatar

I did setup a "boilerplate" project for this skills assessment test. The candidate has only to git clone the repo and follow the instructions.

I've done 1 assessment so far with one candidate. At the end he thought it was a great Laravel skill assessment test, because it covered quickly lots of Laravel features that require minimal logic but a lot of how laravel works.

Please or to participate in this conversation.