Increasingly the cost of local developers is prohibitively expensive and offshoring development is well worth a serious look. While offshore software development can be alluring for the cost savings it also comes with other steep challenges which many entrepreneurs and CTOs often overlook.
When I first started offshoring it was anything but a success. While offshoring can indeed provide capital efficient software development, it also requires a significant time investment and a shift in your management approach to be successful.
Over the past eight years of running offshore php based agile development teams I've hired hundreds of developers and now run several companies with offshore teams totaling as of this writing over 300 offshore employees.
I wanted to condense my learning into a short list of tips outlining how you can increase your odds of successfully hiring offshore PHP developers. In this post I will cover:
- Why People Fail - Just a quick look at the perilous path most people follow in their initial attempts to hire an offshore PHP developer and why they fail.
- 5 Must Know Offshoring Tips - Second, I present five practical tips to consider before you try to hire an offshore php developer.
- Ready. Set. Hire - Finally, I share the initial steps I recommend to get your own offshore software team rolling.
How Most People Attempt Offshoring (And Why They Fail)
We all pretty much start in the same place. Marveling at the speed, ease and price of our shinny new app design from 99Designs and then promptly march over to Upwork thinking hiring an offshore PHP developer will be just as easy.
You will likely be disappointed. And it's not because talented offshore developers don't exist, they certainly do! Rather it's because great software development is, well... really fucking hard in the first place.
Put an ocean between you and your developer, add some language, cultural and timezone barriers, sprinkle on the lack of mutual life experiences (friendship), place the cherry of your own inexperience in managing remote agile software projects on top and... you see where this is headed.
The stories and ultimate results of hiring php developers abroad vary wildly but invariably land between outright disaster and occational success with some big BUTS. BUT I had to do all the project management. BUT I had to do endless rounds of quality control. BUT they never really understood my product. BUT the communication was really poor. BUT it took a year longer than planned.
In the end, most people fail at offshoring in my experience from their own unrealistic expectations. There is an old saying that says if you want quality, speed and low cost, pick two. More times than not with offshoring web development I find quality and low cost are the correct and realistic choices.
While speed in the long run is achievable, development velocity often does not accelerate until there is a strong working relationship, clear channels of communications and a deep understanding of the product. As such, this should be a long-term goal (think 12-18 month goal) but not where you should start when developing a team offshore.
Many people become disenchanted when development speed is slower than expected and they throw up their hands in the first few months thinking their developers are no good and bring the project back in-house only to spend more money and time.
The big take away: if you are considering offshoring you need to be prepared to put a lot of work in during the initial 12 months to build the relational and product knowledge base your developers need to build great software.
With that foundation, let's jump into five tips for successfully hiring offshore developers.
5 Tips To Hire An Offshore PHP Developer
After several underwhelming attempts to hire freelance web developers in both Europe and Asia, I finally did find a highly talented and motivated developer online. Rather ironically I connected with my now Director of Engineering, Godwinh, through a local Craigslist ad I had posted while living up in Anchorage, Alaska after becoming frustrated with subpar offshore results I was getting.
After six months of working with Godwinh I jumped a plane to the Philippines not knowing it would lead me to living and working in the Philippines for a combined total of three of the next five years. Nothing could have been more valuable, here are my big takeaways:
1. Match Your Tech Stack to Your Labor Pool
If you are looking to hire a Java, Python, Ruby or iPhone app developer overseas expect hiring to take 2-3X longer and to pay nearly double for the same experience of a PHP developer.
Why? Let's call it the 'programing effect'. Just as Facebook first swept university campuses and then expanded outward so PHP, being one of the earliest free, well-documented and open-source web languages, was nearly universally adopted by universities in developing countries in the early 2000s. This, combined with the rapid and global adoption of WordPress meant most overseas developers were and are still learning and building with PHP.
While online forums will endlessly argue the merits of newer languages PHP will for the foreseeable future be the reigning language of offshore web development. So while it's obviously given my post title, the first step in successful software offshoring is choosing a tech stack which aligns with the labor pool you are targeting.
Thankfully, MVC frameworks such as Larvel are now the standard in developing markets along with all the latest front-end tech (Angular and React being the clear leaders) along with AWS infrastructure, agile methodologies and project management software like JIRA.
2. Don't Hire 'Full-Stack' PHP Developers
For whatever reason USA based teams are often enamored with the full-stack developer. "I'm looking for a full stack developer" is a common request I hear from people considering to hire php developers with our staffing company Eastern Staffing.
My response, "Don't". Yes, full-stack developers exist and yes, front-end development relative to back-end development isn't as complex and still my response, "Don't".
While this might be a common skill set in the USA, it is not nearly as common in developing countries. Our offshore teams have had significantly more success with having team members focus solely on back-end php development and other team members focus on front-end chopping, responsive design, speed optimization, and overall user experience.
In nearly a decade of working with offshore teams I've only found a handful of truly great full-stack developers. The reasons for this are many, but it really boils down to culture. Growing up in a developing nation one is exposed to societal conditions on the whole where function holds more weight than aesthetic, which rolls over to how many approach development as well.
That is to say, while I believe offshore developers are fully capable of being full-stack developers, out of the gate, their focus in their education and careers typically are more focused on either form or function, and mirroring this structure in your product teams yields greater productivity.
3. Consistency Over Time Yields Great Results
As with most good things in life, building something worthwhile, of quality, something which holds value, takes good old fashion hard work, effort and frankly, a lot of time. The same is true of offshoring.
Perhaps the biggest lesson here is actually coming into offshoring with the correct mindset and expectations. I believe a minimum commitment of 12 months is the best time period to give you enough time to find a good team rhythm, develop systems and train your team on your product.
It's also important to remember your first hire is always the hardest and likely should be your most experienced (and therefore expensive) hire for the year. That is, you need a good solid leader, not just a developer (more in my next tip on this front).
Once you have your lead developer in place, from here this is where offshoring becomes truly powerful both in terms of velocity and cost savings. In my teams, we often hire one senior php developer, then one mid-level then three to four junior level developers, one every few months, who we can train.
I've found after nine to 12 months, most junior developers can contribute a very meaningful amount of features on each sprint at a fraction of the cost of senior developers. This both frees up your seniors to work on more mission critical systems and has the benefit of ever increasing velocity on your sprints as your junior talent continues to mature.
In short, the winning strategy to hire and build an effective offshore php developer team is consistency over time and building an ever growing pipeline of young talent which matures to mid-level talent and is guided by exceptional, people focused senior developers.
4. 50% of Exceptional Software Development is People (Not Code)
This is often the most overlooked component of building great offshore software teams (or onshore teams for that matter!): people.
While yes, a component of this is finding great technical talent, we spend an inordinate and intentional amount of time recruiting, evaluating, training and promoting on the soft science around culture, communication, attitude, positive energy, mindfulness and empathy.
It's often this soft squishy stuff which sets apart average, even good development teams from exceptional and enduring ones. The simple explanation for this is we are human and humans do their best work when they are placed in environments where they mentally engaged, challenged, and supported.
This is why your first few hires are so critical. It's their collective beliefs, actions and voice which become the foundation of your team culture. As such, I highly recommend during your interview process that you deeply explore attitude, underlying motivation for why they do what they do and who they want to become, then and only then, explore their technical skill.
For our interviews we always first screen for technical skill on applications, but the first interview is strictly on attitude, this way we are not tempted to compromise on culture. Once an applicant passes our attitude interview, they are passed on to our senior developers to conduct more comprehensive technical skill evaluations.
5. Never Underestimate The Power Of Your Presence
If you were to follow but one tip in this list, this one will by far produce the most success in building offshore teams.
As humans, we are sensory beings and it's hard to form a meaningful relationship with someone without sitting down in person to hear their story to really understand who they are. Only then will you start to understand the nuances of each person and the cultures from which they operate.
When I first started my companies over in the Philippines my first trip I spent nine months on the ground living and working with my team and then did six month tours on and off for the next three years. To this day I still spend two months every year overseas with my teams to maintain and build relationship, something which is hard to underestimate the value and need for if you are considering working offshore, particularly in any Asian culture.
I realize that such a commitment may be unrealistic for some teams due do financial or family constraints, so the next best thing is to form a partnership or relationship with someone stateside who has those relationships and experience.
Once you have a developer hired within the first six months thereafter I would highly encourage you to invest in a three week in-person work trip with your offshore developer or team. It's invaluable to the point that if you are not able to make such a commitment up front I would advise pausing your offshore plans until you are in a season of life which would allow such a trip.
A team onsite visit is bar none the number one way to get buy-in from your team, build relationship, provide education on your product and at large successfully hire an offshore php developer or team of developers.
Ready. Set. Hire.
So, you think you're ready to start building your offshore team? Here is how I would recommend you get started...
If it's your first time looking to hire a single, long-term offshore php developer or if you are looking to building an offshore team of 25 or less people, I highly recommend finding and using a local USA partner who has on-the-ground experience and operations.
Over the past eight years I've tried offshoring every way and seen others try offshoring. I've hired freelancers online remotely. I've lived overseas with my teams and I've also help others start teams. What I found is most people who try to start their own small team overseas without being able to live abroad for the initial six months of setup fail to account for all the additional costs and risks involved in setting up operations overseas.
A List of Commonly Overlooked Offshoring Complexities
The most common items I have personally stumbled on over the years or seen other startups fail to full understand the risk, time and capital required to setup offshore operations include:
- properly setting up a legal entity in another country (hint: it's not a $50 online application)
- learning and complying with complex labor codes
- complying with overseas tax laws (for contractors or employees)
- legally disclosing overseas money transfers to all relevant government agencies
- IRS compliance of overseas bank accounts and fund transfers
- employment regulation with various Governmental agencies
- handling labor disputes
- local hiring discrimination regulation
- finding the best channels for on-going talent scouting
- working with companies and employees without online banking
- how to trust people with money and equipment purchases (I've personally witnessed many startups go under over money fraud with their overseas staff)
- scouting and securing reliable internet, utilities and office space, often requiring a legal entity abroad and failing to consider the long-term nature of these agreements
- on-going human resource management
- understanding the different overtime and holiday pay schedules
- quarterly and annual reporting to government agencies abroad and locally
- transportation and employee/contractor safety
Finding An Offshore Staffing Partner
Due to the long list above and after seeing several friends really struggle to make the shift from hiring a few contractors to a functional offshore operations center, I started Eastern Staffing with by business partner Devon Higgins.
We focus primarily on scouting, hiring and housing your own dedicated product team from back-end developers (php, python and ruby) and front-end developers (HTML, CSS, JS, React, Angular) to quality assurance testers, project managers and graphic designers (UI/UX, illustrators, print designers).
Whether you are looking to start with one developer or scale up a back-office opts team of 100, our team has the experience and facilities to provide you cost-savings offshoring software development while greatly mitigating the risks people often stumble on while getting started.
While we focus on php developers other companies provide staffing for Java and Microsoft stacks and doing some research online and interview a few is well worth the time.
Please reach out directly with any questions on your offshoring strategy. We provide staffing for startups, SMB and enterprise level teams to bring your product to market and provide on-going dev opts.