5 Tips for Hiring a Programmer Entrepreneurship

I’ve answered many questions recently from entrepreneurs looking to start their own online business. Most of the people who’ve contacted me aren’t programmers themselves, so a frequent question has been, “How do I find a good programmer to create my website or web application?”. I wanted to give some tips to help with this common question.

Don’t Hire a Programmer for Non-Programming Tasks

First, if you just need a basic content-only website, like a blog or a website to tell about your upcoming product, or even a shopping cart site, there’s no need to hire a programmer. You can get a free website at WordPress.com, or get your own domain name and install the WordPress software yourself with one click. There are even free plugins for shopping carts if you want one.

If you want a nicer theme than the free WordPress themes, you can buy one for under $25 from themeforest.net. Or if you want a custom design, host a contest at 99designs.com, and then pay a slicing company like psd2html.com to turn it into an html site or WordPress theme for you. If you’re not sure how to buy a domain name or setup hosting on your website, you can learn how in under an hour by searching for tutorials on Google or YouTube. GoDaddy has an all in one solution that I’ve heard is pretty easy. Or you could probably hire someone on Upwork or Fiverr to set it all up for you for under $20. It’s simple, and just about anyone who says they can do it, will be able to.

5 Tips for Hiring a Programmer

Now, if you’re ready to create an actual online product, such as a web application to help real estate investors track their properties, or a scheduling tool for family therapists, this is where you’ll need a  programmer. I don’t recommend taking this step until you’ve actually tested your idea, and done a little research and number crunching to make sure your business has a good chance at being successful. But assuming you’re ready to move forward, here are some tips for finding a good web application programmer:

1. Don’t hire one person to do everything

It’s rare to find someone who’s both a good programmer and a good designer. If you need a good design, hire a designer (or find a good template). If you need someone to slice up the design and turn it into html and css code, then use ones of the hundreds of slicing sites out there (google “html slicing” or “psd to html”). Don’t make your programmer do this stuff. Let them focus on the type of programming they’re good at. Having one person doing both programming and database management is usually fine, though, depending on their experience.

2. Hire your programmer full-time

Hiring someone on a temporary basis just to complete the project can work, but you’ll pay a lot more, lose out on loyalty, and months after the project is “done”, you’ll find bugs or realize you need some different features. If the project is ”over”, then your freelancer may have already moved onto other projects and no longer have time to help you. It’s hard to ever call web-based software “finished” if you want to keep growing. So hire a programmer full-time and permanently. They will appreciate it, and so will you.

3. Hire a programmer who has experience with frameworks

A programming framework is like a set of tools that makes it faster and easier to write software with consistent code. Rather than hiring someone who knows “PHP” to write your site from scratch, hire a programmer who has experience in a framework, such as Laravel, Ruby on Rails, or Django. These are usually the more experienced programmers. You’ll save a lot of time in development, and have less headache in maintenance. Using the framework will also make it easier to hand off the code to other programmers down the road, because they will be able to understand the code and where things are at, almost instantly.

4. Be Aware of Culture

While there are probably excellent developers in every country, there are cultural differences that can make working together more difficult unless you’re willing to make some changes in your expectations and communication. For example, the Indian head wobble is not only difficult for a U.S. manager to interpret in person, but the “I’m saying yes, but mean no” tendency can seep into writing, too. I’ve worked with excellent programmers from India, who do communicate well, but they can be difficult to find. I’ve also worked with Eastern Europeans who are amazing developers and good communicators, but more commonly, it feels like there is a barrier to open communication and I feel like I have to pry incessantly to get the information I need. This may all just be my lack of skill as a manager, but it’s led me to prefer hiring elsewhere.

One country I’ve had very little cultural and communication issues with is the Philippines. While developer skills vary widely, most of the Filipinos I’ve worked with have had near perfect English, and they tend to be honest, hard-working people who aim to please and do quality work. Of course, hiring developers from the U.S. will obviously be the easiest from a cultural perspective, but 5-10x more expensive, and not necessarily any better quality. Besides, many firms in the U.S. just outsource to other countries anyway, and make a killing off of you doing so.

5. Advertise on multiple sites

When outsourcing, you may first think to post your job listing on Upwork.com or hire quality talent through TopTal.com. These can be a great way to find programmers. But along with the built-in billing and screen monitoring benefits comes a higher cost, and many of these programmers only want short-term gigs. I’ve found fabulous programmers through Upwork, and TopTal is supposed to have only the best, but my favorite way to find long-term and full-time developers is on local Filipino job boards like onlinejobs.ph.

Bonus Tip #6. Create a Hiring Process

Once you have a few applicants, then comes the trick of determining who to hire. I’ve created a fairly elaborate 3-step process using Google forms, Docs, and email templates, to filter those who have the development skills, communication skills, personality, and cultural fit for my business. Of course I look at reviews and past work, if possible, and reach out to references of the ones who make it to the final stages. I also email them back and forth several times and make sure there won’t be any language barriers, and do an actual interview for my top picks. Sometimes I’ve even hired two or three programmers at once for a testing period, assigning them each a task to see who does it best or fastest, then keeping that programmer.

But all of this may be overkill in some situations. You’ll need to come up with a hiring process that works for you, asks the questions that are important for you and in your company in the position you’re hiring for.

Conclusion

I hope you’re found these tips helpful as you hire a programmer for your project. There are many ways to do it well. And these are some things I’ve found effective.

What tips have you found helpful when hiring a programmer, or when outsourcing other tasks?


Brandon is a location independent entrepreneur, musician, worldschooling father, and the principal author of this blog. He's all about reaching his potential and enjoying life to the fullest in each moment.


Comments

  1. Great advice. I have had good luck with programmers from Pakistan as well. Am working with a guy right now there whot is an absolute gem.

    My one experience with a programmer from India was horrific…. he messed up the task I’d hired him to fix making it worse that when he found it. I was finally able to track down the original programmer (from the Philippines) and he had it all repaired within a few hours.

    • Susan Bradley Says: February 10, 2016 at 6:18 pm

      I don’t think it’s a problem with programmers from India, I think the problem is in your (and the author’s) screening process. You need a good way to filter out these bad programmers. Try giving them a pre-interview coding test. That should do the trick. The ones from TestDome are good: https://www.testdome.com/

  2. Thank you very much for good advice! Some (like not outsourcing to India but Philippines) were counter-intuitive to me.

  3. Brandon, I can’t believe you listed Ruby on Rails before Django. I thought we were better friends than that! ;)

    Seriously though, Django programmers are a commodity at this point. Most start-ups are using Django now. I get recruiters calling all the time. You will have much more luck finding a PHP programmer – especially in the Philippines. If I were to outsource programming, I would hire a PHP programmer for a few reasons: 1. Easier to find. 2. Cheaper 3. Cheaper & easier to host your site once it’s done.

    I’d like to know more about the initial contacts and interview processes actually.

    • Good points, Dustin. Thanks! And I’ll try to go over the interview process, etc. in the book. I’ve actually never touched Django, but I have dabbled in Ruby on Rails, so I guess that’s why I put it first. No offense. ;)

  4. #4 will put you into hot waters, and rightfully so.

    It may be true though that it is harder to find the right person in a so large market as India. It simply overwhelms the human abilities to search through thousands of resumes. Somewhere among those thousands are dozens of good and very good programmers, but how to find them?

    Re: building own site. I had a very good experience with weebly.com. It is a site constructor for non-professionals.

  5. This is a great blog post Brandon! Thanks for sharing the information. I’ve used Elance in the past but not oDesk or webgeekph. If you were to choose one, what would it be?

    • Glad you found it helpful. I prefer oDesk, and have found it the easiest to get quality work from, and I like how they handle payments for you, and take screenshots to check their activity (only paying them for when there is actual screen movement). Elance has improved a lot, though, too — I haven’t looked at it recently, so it might do this now, too.

      • Carl Nathan Says: April 14, 2014 at 3:21 pm

        Quote:
        “d I like how they handle payments for you, and take screenshots to check their activity (only paying them for when there is actual screen movement).”

        what if the programmer is thinking/analyzing, or making designs on paper, and there is no actual screen movement, does that mean he doesn’t get paid for that time spent?

        I am just wondering because I haven’t used oDesk before. Thanks for this article by the way.

        • They’ll still get paid, but you can “dispute” it if you see there was no activity during a specific period of time. You can also allow workers to enter manual time if their work entails being away from a computer.

  6. Brandon,
    Thanks for the tips. I’m thinking I should give outsourcing a try. Did you outsource from the beginning or develop everything on your own first? I developed a mildly successfully weight loss web application in 2006 (have redone it twice since). I don’t have time and motivation to make it what it needs to be. Right now it is very basic and there is no business model built into it. I want to make a premium version to sell to personal trainers, bootcamps, hr departments, etc. but I want to make sure it is done right. How much can I expect to pay a Filipino programmer annually? How do taxes and other employer related concerns come into play when outsourcing?

    Side note: I just had a family over for dinner who is on family journey from Alaska to Argentina. Previous to this they lived in Costa Rica for a while. You might be interested in them. Unfortunately, you’ll be gone before they make it to CR on this trip. http://discovershareinspire.com

    • I developed it on my own first, then started outsourcing once I was making enough to afford it. I’ll be covering all of your questions in much more detail in my book. But to sum it up, a backend Filipino programmer will usually cost between $300-2,000/month depending on their experience level and where you hire them from. Check oDesk.com and also places like onlinejobs.ph. No worries about taxes since they’re foreign programmers and will be working as freelancers rather than employees. You don’t even need to send them a 1099. Good luck getting your business going! Your program sounds like it could have a lot of potential.

  7. Hello Brandon,

    thx for sharing your experience. Had similar experiences in the past. For me finding developers is the most painful part in my internet carrier.

    You have the great advantage that you can code yourself, where as most people have to rely on what they are told. Also only had bad experiences with guys from India. Best experiences so far with guys from eastern Europe.

    Have to find a new one now once more :( so the painful journey starts once more.

    Oliver

  8. Thanks Brandon for posting this article. It’s very useful to learn tips from someone as experienced as you. It certainly will help me when I start planning my little IT project. I have never heard of hiring Filipinos, this is great for me to know. Safe travels.

  9. I don’t think this article is completely true… Yes, you can hire cheap programmers, but they are usually not as talented. The truth is that no matter where someone lives, if they are experienced, they know how much they are worth. A solid, smart programmer knows that $1000 a month is ridiculous, and if he-she is really good it’s just a matter of time before he/she leaves in order to earn real money.

    I agree though that when it comes to non-experienced programmers or recent graduates, outsourcing to a low cost country works well… But if you want a talented developer, with 5-6 years of experience, you won’t get it cheaply.

    • I never listed salaries in this article, as that will vary by region and skill level. Of course more experienced programmers will cost more than less experienced programmers, but programmers in the Philippines will be cheaper than those in the states, including the very talented ones.

  10. This is great information! Another great tip is to test the candidate’s skills using a real project. Before my company hires any developers, they are required to complete “homework,” or fix what was once an issue in our app.

    We actually put together an entire guide about hiring developers. Take a look – http://hireolo.gy/KhjHQL.

  11. Hi Brandon,

    thanks for advice!
    Interesting that you can find good programmers in the Philippines.
    I live in Europe: how can I find a good company of developers from the Philippines that I can trust?
    The most I can do is do to search on google and choose according to their portfolio …

    Thank you!

    • I recommend not hiring a company at all, but hiring individuals based on their portfolios and your communication with them (oDesk is great for this). That’s if you’re bootstrapping, of course. If you don’t have the skills or desire to manage a team yourself, and you have the funds, then hire a skilled Project Manager, and he should be able to help you filter out good developers and keep them on task. I now have an excellent Project Manager from the states who helps manage my mostly Filipino programming team. He also finds good replacements when necessary.

    • Hi. I am a Filipino programmer and I would like to say thank you guys for the kind words. I actually work as a freelancer in oDesk and got a Norwegian client who also prefers Filipino programmers, but somehow I am still thinking of having a job in a company. :)

  12. Now I can’t manage a team… project manager might be a good idea.

    Do you prefer freelance individuals rather than companies, for the cost or the quality of the work?
    If is possible to have good quality with lowest cost would be great for my business plan.
    Any suggestions about how to find a good project manager?

    Thanks again for your time and your work!

    • Freelance will generally cost less, especially if you’re managing them yourself. If you use a company, you’re paying a middle man, but you might prefer this if you have no interest in managing them. Just understand that they charge you more than they pay their programmers, and they take a cut of it. For project managers, oDesk is always a good place to start.

  13. Hi Pearce, first I want to thank you for this interesting blog!
    I have a good idea for a web application, that I’m confident can help a lot of professionists.
    I want to hire someone to build the application, since i don’t have skills in programming, so I want to start to do some consulting with companies and project managers to get some quote.
    In order to ask for a quote do you think that a software requirements specification (SRS) document is strictly necessary? I don’t know whether it’s worth spending time and money for this.

    Dario

    • You’ll definitely need to have a detailed idea of how you want your site to function in order for it to be created. And the more of that you can get written down, the better your team will understand what you want. You won’t get an accurate quote without it.

Leave a Reply