Skip to content

How do I find good PHP developers?

Dear Reader,

Twice this week I got asked a similar question, “How do I find good PHP developers to hire?” The first one was a recruiter who had originally tried to hire me because she “read my resume”. (Obviously, she skipped over the part where I’ve not written any serious code in several years) Since she didn’t bother to really read my resume to begin with, I’m pretty sure she won’t bother to read this post.

The second one, however, was a just someone trying to find PHP developers for his team. Since he wrote me a nice email asking advice, I decided to reply in kind. Three pages and one thousand words later, he had my answer. (Honestly, I didn’t expect it to be this long) I share it here with you – slightly edited to remove some geographically specific advice that probably won’t apply to you – in hopes that when you are in the same position you can get a head start in finding good developers.

—– Begin Letter Here —–

Hi [redacted]!

That is a very interesting question. I’m happy to share what I know. Let me start with a bit of disclosure. One of my side gigs is helping companies find and screen PHP developers. I’ll try not to make this a self-serving answer though. :)

  1. phpdeveloper.org

    Chris Cornutt runs it and he will post your jobs for free. This is a well respected site in the PHP community and it’s also picked up by a lot of other sites so your posting will have legs.

  2. PUGs

    Find your local PHP User Group. (I am always surprised at the people who don’t do this.) First, find out what their policies are about posting job notices on their mailing list. It’s better to ask first than be banned later. Most User Groups are happy to have job postings as long as they are not too frequent. Those that are on the fence can usually be swayed by offering to buy beer/pizza at the next meeting. (Do the math here, major job boards charge $400-$500 for a posting that goes to the entire world. $75 worth of pizza and beer will get your message out to the 20-30 people to whom you really want to talk.) Another tip, offer to host the groups meeting one month. This is a great way to get 20+ developers to drop by your office, drink a beer with you, talk shop and maybe even give you their email address so you can “discuss opportunities” with them.

  3. Community

    This one is a bit of a longer play but it will pay off. Get involved in the community. If you are already, great, keep it up; if not, start now. As the great salesman Harvey Mackay said “Dig Your Well Before You’re Thirsty“. Hang out in irc, look for people looking for jobs, figure out who is who and keep a list of people you want to hire. The same applies to mailing lists. Most PUGs have mailing lists. Join, lurk, answer questions when you can, post when appropriate and take notes on who is answering questions and who is asking them.(Both are good things, by the way.) On your who’s who list, make note of the stars and the up and comers. When you need talent fast that can hit the ground running, you go to your stars list. When you have a slot open that isn’t urgent, dip into you ” up and comers” list to fill it.

    One word of warning. I’ve seen companies hire from the community and not realize the responsibility they are taking on. Community members are great employees because they have learned to help and where to get help. You have to let them continue with this practice though. This means you will get several requests a year from each member to attend conferences; possibly even speak at them. You have to be prepared to allow and even encourage this behavior. It is part of what you are buying.

  4. Consider Telecommuters

    [Again, a bit of disclosure, I speak a lot about telecommuting and help companies figure out how to setup telecommuting programs that work.]
    If you can’t find talent or you can’t find talent in your price range, consider hiring someone from another area. I got an email from a guy yesterday that is looking but only for telecommute jobs. This guy is a heavy lifter when it comes to coding but he can’t move though for family reasons. If it weren’t for the location restriction any team would be lucky to have him but so many companies pass him (and others like him) over because of the short-sightedness of “If I can’t see them, how do I know they are working?” Telecommuting opens up your potential talent pool 100 fold.

    Telecommuting also does away with the unfunded mandate of commuting to work.

    Sure, telecommuting not for everyone but I’ve managed entire teams where no two people lived within 150 miles of each other and with the right program and the right people, it works great. You get the talent you need to get your project out the door. The developers gets the freedom to work where they want…as long as they work.

  5. Attend Conferences

    There is a reason that major companies host afterhours events at conferences. They are looking for the same thing you are, access to talent they can hire. You don’t have to be a sponsor though to scout for talent at a conference. Buy a ticket, attend, and hang out. There is usually a “hang out” place where those who don’t want to attend a session park themselves. Park yourself there with a T-Shirt that has “I AM HIRING PHP DEVELOPERS” on the back. (and have a stack of business cards, note pad and pen handy.)

    Currently, ZendCon, CodeWorks and php|tek are the conferences that I am personally involved with, we are happy to have you at any of them. If you are unsure which is best for you, contact your local PUG and ask them.

    Oh and I am organizing DayCamp4Developers.com an on-line conference, and I encourage you to become a sponsor! :)

  6. Get your developers to write about your company/work environment

    Have you got a company blog? Are your developers regularly posting on it? Does each of your developers have a “special story” about something cool the company did that touched their lives? Get these stories on a blog somewhere, preferably on the corporate blog. When you approach a potential candidate, the first thing the smart ones are going to do is Google you and your company. Make sure that what they see excites them.

  7. Do things that make your developers want to sing your praises

    Find something each month that you can do for your developers that makes them stop and think “Damn, I am glad I work here.” A paycheck is not enough these days. You want to use their talents for your benefit so you’ve got to woo them. Dinner, dancing, chocolates, bling, you know how to woo a mate, put the same effort into attracting developers. Side Note: I am not saying we need to return to the days of Limo Recruiting or Foosball tables. However, if you provide Dual-Screen, quad-core machines with 8GB of RAM and 1TB of HD for every developer, that is a selling point! Tell people. More importantly, actually deploy machines like that for your developers and THEY will tell people.

It boils down to this. There is a talent war going on for PHP developers. Promising a regular paycheck won’t do it anymore. Developers need to feel respected, empowered, and engaged. If you want them to use their talents for you, you have to show them that you and the company respect them, that your project has interesting technical challenges for them to overcome, and that you are willing to let them solve them in their way.

I hope this has helped,
=C=
—– End Letter Here —–

Until next time,
I <3 |<
=C=

23 thoughts on “How do I find good PHP developers?

  1. Your answer has a heavy focus on community. The community however is only so big. The most difficult question therefore is: how do you get those other developers if you need talent?

  2. Hi Ivo!

    Fair point. My answers do focus on the community, but if you look, the focus is in ever widening circles. PUGs, at least the active ones like Austin and Atlanta, have members that are part of the “wide area” community. These people don’t hang in irc, they aren’t first in line when conference tickets go on sale and they may or may not participate in mailing lists. However, the fact that they are at a PUG meeting shows me that they are serious about their craft and want to continually hone their skills. That is the wide area.

    People who read phpdeveloper.org are a bit more focused on the community. In general, they are more aware of the PHP community in general but still may not be hard-core community like you and I. The fact that they read phpdeveloper.org and that Chris is such a good friend of the community means that they are exposed to the community in a regular basis.

    People who are on the mailing lists and irc are much closer to “core community”. These are the people that regularly help others. They (we) all know or know of each other and while they might not know the answer to every question, they probably know someone who does. These people, IMHO, are the cream of the crop for employers for the reasons I talked about in the post.

    None of these circles are clearly defined and most PHP developers probably fall into the fuzzy areas between them. However, if you consider it, every PHP developer is a member in some way, of the PHP community. (If you squint and tilt your head, you can see my point) :) If you bu into this theory, then the only way to hire a PHP developers outside of the community is to hire a Java programmer.

    So yeah, I concentrate on hiring form the community. I’ve done the job posting thing and I’ve hired from within the community. (as you have) I don’t know about your experience but it’s been much easier for me to find developers through the community than by posting on careerbuilder, etc.

    Since you have a wealth of experience in this area, I would value your input. What is your advice for finding PHP developers?

    Thanks for writing!
    =C=

  3. Posted this as a response on Twitter too, but you have one “error”. I know this post is about PHP developers, but there’s a talent war going on for good developers regardless of the language. There’s lots of guys who know Ruby, but not that many that are experts. Likewise in Python. There’s tons of people in all languages that can spit out small template engines, write up their own take on a testing framework, or any other number of niche tools, but how many of them can tackle any problem given to them? How many can move up and down the stack?

    Finding people that are comfortable enough working in C one minute, configuring a reverse proxy/load balancer the next, JS in the browser the next, and profiling databases the next is extremely hard, yet that’s what a lot of web/networking dev positions require.

  4. +1 to what Cal said on the groups.

    For every one person from a User Group that shows up at a conference, there are easily 5-10 active people in their group and another 10-20 lurkers. DCPHP regularly gets 3-5 people at the major conferences, the monthly meetings attract 30-40, and the mailing list is pushing 400 (up from 120 March ’09).

  5. Hi Travis!

    Yes, you are correct, there is a talent war going on for good developers of all languages. Since my focus is on the PHP community, my comments were directed at them. That having been said, most of the advice is generic enough to apply to anything from Java to Ruby.

    Thanks for dropping by.

    =C=

  6. Hi cal,

    Thanks for the elaborate response to my comment. In my opinion, the most important part is profiling yourself as an employer that is worth working for. It’s one thing to know where the developers are, its another thing to get them interested. You can visit as many user groups and conferences as you can; if you don’t have a good story, you won’t attract anybody. (it has similarities to dating even).

    And you are very right in that developers are great at spreading the word. I would recommend rewarding them for it. I much rather give an employee a bonus for bringing in someone new, than spending much more on a recruitment agency.

  7. You may also want to check the PHPClasses site PHP professionals and PHP jobs sections.

    Over 10,000 developers from more 160 countries have signed up get proposals for job offers. Many of them are available for taking remote jobs. Posting jobs here is free or may require paying a fee if you have urgency to hire PHP professionals.

    http://www.phpclasses.org/jobs/

    A significant number of the signed developers are listed as featured. Most of those got featured because they were nominated to the PHP programming Innovation Award, so usually they are developers above the averaged for having demonstrated capability to solve unusual problems.

    http://www.phpclasses.org/professionals/

  8. Great post, during my own search for devs, I’ve often wanted to be able to invest more time in attending user groups. The few I’ve attended have always yielded great relationships.

    I do have to disagree very strongly with settling for telecommuters. The amount of communication necessary for important projects simply goes beyond what is possible when a person isn’t even in the same zip code as you are. Even when getting your project ‘out the door’, you still need a developer whom you can run down the hall to talk to when you need it.

  9. Hi Chris!

    First, thanks for the comment.

    I do take exception for you characterizing telecommuters as “settling” for telecommuters. I have run remote teams for good sized projects and understand the amount of communication necessary to run them. I have found in 100% of the cases that I have tried it that I have been able to find the developers I need and get the work done in a timely manner with telecommuters. What I didn’t do is require all my developers to pay a “work tax” of 25-45 minute commute each way for the privilege of working for the company.

    Forward looking companies around the country are not settling for telecommuters, they are finding that letting developers work where they want to creates a happier developer and thus, a more productive developer.

    Again, thanks for the comment!

    =C=

  10. I agree with Cal here Chris. It is not settling. Sure, telecommuting is not for all developers, nor is it for all project managers, but there is more than enough communication channels available for telecommuters: Skype, IRC, instant messengers, telephone.

    I have worked on various big projects as a telecommuter and have never really had any problem in keeping in touch with both my fellow developers and my project manager. It worked like a charm and I’d do it again any time if a company is open for it.

  11. I am going to ramble a bit here so feel free to ignore or forgive me.

    @Chris:
    I admit I am not the best to answer this, but as a telecommuter (I work for MySQL/Sun/Oracle) I feel the need to stick up for myself. And thanks Cal for sticking up for us.

    Why do I have to be down the hall every day? Why can’t I work from home or anywhere, doing what you need me to do, meeting your milestones/deadlines? Why can’t you IM, Skype, IRC, email or call me if you have to talk to me? Why does it always have to be physically face to face? Why can’t we schedule face time instead of always doing it ad-hoc?

    Do you not trust me to do what you require when you are not able to look over my shoulder? If so – why did you hire me? How am I not responsive enough to your needs? Maybe we need to sit down and talk about that.

    Admittedly not everyone has the proper mentality/discipline to work from home and maybe my company culture had biased me… but if you want the best – you have to be willing to go where they are (or let them telecommute), and give them the power and autonomy to do what you need them to do.

    Note: I watched this and found it incredibly true and will pick the company that also follows it – http://www.ted.com/talks/dan_pink_on_motivation.html

  12. Lig, chris, Cal,

    Its usually not about trust. It’s about efficiency. It’s about hearing that developer next to you go ‘sigh’ and being able to help him before he spends hours struggling with a difficult problem. It’s about thinking out loud and having 2 others chime in to hand you an angle you hadn’t thought of. It’s about non verbal communication. Its about getting together near the coffee machine and reaching understanding through five minutes of face time instead of 1 hour of back and forth mails or a Skype chat.

    That said, i do believe its possible to work remote, you just have to accept the issue that it will be slightly less efficient from time to time.

  13. @Chris: I’ve been telecommuting full time now for over 5 years. I find your assertions quite wrong in practice. I use a combination of IRC, email, and Skype in my daily work. Email is good for ensuring all details of a question/answer are fleshed out. IRC is a good way to have semi-real-time conversations without needing to necessarily break your work flow (encounter an issue? ask in IRC, and then move on to the next task while you wait for the answer to come). I use voice for daily status meetings, and then as needed to communicate ideas that would take too long to communicate via the other channels — for instance, describing an architectural concept, or debating the pros and cons of a particular approach to a problem.

    “run[ning] down the hall to talk to when you need it” is a symptom that you’ve never worked with somebody who telecommutes before. It’s a crutch. When you work with telecommuters, you will figure out other ways to interact in order to ensure you get the information you need. The ideas I present above show some possible approaches.

    The trick is (a) making sure you setup a good variety of channels, and (b) ensuring everyone is on the appropriate channels when you may need them. That sort of thing should be office policy, and should be discussed with any telecommuters you hire.

  14. @Ivo

    How about instead of less efficient we say, different.

    I tend to be more effective from home since I can be uninterrupted when I am in the groove.. and when I am not in the proper mindset – I get up and do something else rather then hit facebook/digg/email/twitter/etc.. and come back to it later when I can concentrate.

  15. “you still need a developer whom you can run down the hall to talk to when you need it”

    Honestly, I often see this as a liability instead of a benefit. If you can run down the hall to talk when you need it, you can stroll down the hall to talk when you’re bored. At the last 9-5 office job I had, there was one guy on our team that could pin someone for an hour.. and since it was cubes, it would disrupt everyone (10 people) nearby. Finally, four of us had a deal that if one of us would get pinned down, someone would sneak to another department to call the pinned person.

    To Ivo’s point on efficiency, it could be a tradeoff.. that’s why I use Rubber Ducking – http://www.c2.com/cgi/wiki?RubberDucking – quite a bit. The cat doesn’t usually contribute much but it still helps a majority of the time.

    Disclosure: I’ve telecommuted part time for over 8 years.. going almost exclusively telecommute about 3 years ago.

  16. @Cal Again, thanks for this post, and spurring this great conversation! Perhaps settling wasn’t the right way to put it. From my perspective, which is managing a small, highly pressured startup team, is that the cons of telecommuting greatly outweighs the pros. Agility in decision making is key, and therefore having devs present in spur decisions is key, and you can’t have that when people aren’t present. As a lesser con, it’s also more difficult to have/build a company culture when the company isn’t around all the time.

    @Ligaya I absolutely don’t think it’s a trust issue. Even when having a policy of keeping devs in the office, there’s no one looking over their shoulder. Being in the office is about being present on the team, in every sense of the word.

    @Matthew I actually did telecommute, for over a year. My workflow was exactly how you described it, as were my means of communicating. However, there were many instances when that just didn’t work, and I wound up spending time just trying to make communication work.

    In general, I’m not against telecommuting, but it needs to fit with your team.

    Great Discussion!

  17. @Chris Agility in decision can not be reached when the team is remote? Skype can do conference calls easily, and as long as you make good agreements on work times when everyone is available, that still is easily within reach. Building a company culture is just as easy: There will still be lots of company-wide, team-wide and individual communication, it’s just done electronically. I can understand the need for meeting in-person on a regular basis, but not as regular as every day.

    Also, I wonder if the situations you describe in response to Matthew were a problem with telecommuting in general, or with either your or your organizations (most probably the latter) skills to support telecommuting. I’ve worked for companies where the organization in general or the manager I was reporting to just couldn’t handle telecommuters.

  18. Pingback: Como Encontrar Bons Desenvolvedores PHP » php5.net.br -

Comments are closed.