|In-house or outsource for help with 48,000-line PHP codebase?|
In-house or outsource help for large existing code-base
Over the last 9 years, I have built, by myself, a custom PHP framework, using AJAX and JQuery, and on top of it, a public-facing marketing website and a back-end web application for users to log into and use.
I am now the bottleneck of the company as I can no longer keep up with the demand for new features. I need someone to help me code, as well as a complete review of the LAMP configuration and health, as I am not an expert in those but have set them up myself.
What would you do? Hire in-house (we have no physical office, so in-house would be their own home), hire individual contractors for long-term commitments, or out-source to a large off-shore firm?
Sounds like you're receptive to working with someone remotely - that's a good attitude.
Hiring an employee involves a lot of HR overhead - taxes, benefits, employee benefits (health care ins), and more - the rules governing this depends upon where the employee lives, and where the business operates. Navigating the red tape is a challenge if it's your first time doing that. But there's always help; it doesn't take a specialized lawyer, often an accountant with prior experience will know what steps to take and how to get it done.
I have experience as employee, not employer, crossing the USA/Canada border. It's slightly more complicated than hiring locally but not insurmountable even for a sole proprietor.
Having a full time employee, despite the administrative challenges, is the best solution. You'll conduct the interviews, and select a person who you'll be working with. They'll be devoted to your project, undistracted. They'll have "office" hours that you define, so there are consistent times when you can communicate.
I'd say an agency should be avoided - acceptable as a last resort. They'll assign your coding work to whoever has time for it in their worker pool. Often the same programmer all the time, but not necessarily. Avoiding the agencies is a control thing.
By interviewing and hand-selecting a person, you'll be one-on-one with the person doing the coding, develop a rapport, you'll possibly pay them better, and you'll probably feel more at ease handing over your 48K lines of lovingly crafted artisan code.
Thanks httpwebwitch. We already have 10 years experience with employees. Ironically, we switched all employees to being contractors a couple years ago, in accordance with all applicable law.
The tough part is finding where to start looking. We don't have a great local talent pool. That's a discussion oft repeated on forums such as these, so I won't go into it.