I am about to create my first tech startup, it is a simple project that could be entirely outsourced.
My fear is based primarily on the future of the startup. If the project takes hold, how to deal with the transition from external to new hired engineers? How to handle this situation?
The ideal way would be to hire the engineer while the project is still under development. You and the engineer should follow up with the outsourced partner in the process. This will give hold to the engineer and later more staff can be trained in upgrading or follow on versions of the product/service.
In my own experience, you should only outsource what you master. Outsource design work if you are a designer. If you know a lot about the skills your outsourced project required, you won't be fooled.
I have very successfully built businesses on an almost entirely outsourced model.
One company I have has 6000 clients across Australia, New Zealand and the UK. We outsource the sales team on-shore and the product delivery & customer service off-shore.
Firstly its a decision based on wants and needs - "I like the idea of a particular business but don't want to deal with staff/customers/operations etc" - so understanding what you don't want do, helps you align what is worth outsourcing.
The key with outsourcing is use multiple providers for both the same functions and also the different functions.
If you only have one provider for a function you are always at risk of either rising prices or not lowering prices or being held to ransom in some way or another. When you have at least 2 providers you can always negotiate the best outcome using fear of loss and then the 'well our other provider is doing .... for us, can you please do the same?'
You are the secret source that holds all functions together if you are outsourcing say design, marketing & development - make sure you use three separate providers.
A) they won't want be able to replicate without you,
B) they won't push one department in a direction to make it better for another department.
Hit me up if you want to chat further. The model can rally really work for both growth, profit and lifestyle.
I've been doing this a few years, and built a mortgage-industry-specific CRM that had about 1500 clients. It was fine.
That said, it was no grand slam by any stretch, but that wasn't because of our technical execution of product, it was more about my mismanagement around product-market-fit. Moving forward I'm still outsourcing, but as one of the others indicated, have a few tips:
1. I never, ever let 1 team dominate the show, and each team doesn't have enough code of the machine to make it all run without me or hold me ransom. Also, I'm very hands on, speaking to them daily, managing tickets via bitbucket, etc... there are dozens of pitfalls in oursourcing such as coder bait-and-switch i.e. they'll use some sharp fluent in english coder to win your business, then the moment it's committed shuffle you to the sloppy rookie with marginal english skills (with a lower hourly rate and thus more profit for them).. I'm pretty wary of companies personally preferring to gel our own culture and hire only individuals, but that has challenges too like more frequent power outages (people working from home in india are more likely to have this happen).
2. I'm technical, and though I'm a sucky coder, I do speak coder and understand it all pretty well including the technology, DB design, etc. so if someone tries to blow smoke at me, I know pretty quick. Frankly, you can often cut this off at the pass early by knowing the lingo and doing some research i.e. if you ask for a ZF2 / doctrine ORM coder, that's not really rookie-level system design and so you'll probably command a bit more respect out of the gate.
3. As we get traction and/or the burn rate can be prudently increased, I'd bring about 60% in-house full time staff coders, as outsourcing does have a hidden cost. I think this transition can be mitigated if you use single coders not companies, and have clean, organized, well documented code (and even then, styles vary among coders).
Hope that helps -
RogerV in Los Angeles
Agree with Alex and cannot stress enough how important it is to have a competent tech founder for a tech start up. He or she can then manage the outsourced development, ensure quality is maintained, manage redundancy, set up process and deal with support.
Staff.com runs on a completely remote model. We don't have any outsourced employees, only remote employees (I define a subtle distinction between the two). Outsourced employees usually work through a firm or work on a project by project basis. Remote employees are like regular brick and mortar employees except they aren't in your office. You need the later not the former. Only hire people who want to work on your project. You may still have to do some outsourcing (i.e. if you don't need a full time designer but only need a few hours a month done then that's fine to outsource) but anybody that works more than 80 hours a month for you should be hired on full time and commit. This is cheaper, more efficient and usually faster to scale then the office model.
First off, I've seen many companies which have never made that transition from external to new, the outsourcing firm either grew with the company or the transition was to a new outsourcing firm. Running of an engineering department is a business in it's self.
As for the the switch from outsources to in-house or the reverse, the journey can be a rough one. To make it smoother it's about prevention of problems rather then what to do when the time comes. By having proper documentation created and keeping copies of all source code and supporting files you can allow a new engineer to learn the ropes with out having to constantly call the outsourcing firm. By slowly reducing the need of the outsource firm and keeping key staff on call after the switch for any documentation problems cuts down the surprises.
For most part this is a question that needs to be answered when the time comes but preparing for it's potential does not hurt.
Big question - here's my only thought...when engineers author software they own the code. There are certain laws to protect their rights so be sure to have your bases covered there (oh and hire people you trust)
Let me tell you about my story but from the point of an outsourcing company. In short, I think it is possible to have the most of work outsourced but it's very desirable to have a person who can manage this remote team on your side (or within your business hours).
My partner and I co-founded a start-up in New Zealand with two local business people. He acted as a CTO from the beginning of start-up accelerator and MVP development. The development team is located in Russia.
After funding and a year of work they could hire a local CTO and my partner transferred all responsibilities to him. Currently this CTO works with our team remotely and we had no serious issues in terms of technical side despite of some time difference and lack of personal communication with the team. This model also allows to hire local staff gradually reducing the number of remote members.
So the bottom line is it's possible to organize it but like many people noticed here you will need a person who can manage the tech team. Also I wrote a small blog post that could help you to pay attention to some important details: http://crystalnix.com/blog/2014/04/29/how-pick-proper-it-outsourcing-vendor/
A tech startup can fully outsource technology if it is not their differentiating factor. A fashion tech startup can outsource their development requirements whereas a new computer vision company cannot as technology is their core differentiator.
That said, companies should have a head of product in-house, who can drive the vision for the product and manage the development team. It’s important that this person have technical experience as this will help her better assess the quality of the work done, the speed at which work is done and she can help resolve challenges as they arise.
My first thought - if your startup does take hold, you will NOT be losing sleep about in-house or out=house! Do remember that we're operating in an age of the '$100 Startup'! If you know you have a good idea - that you're solving a problem that no one else has solved very well yet - GO for it. Hire freelancers for the tasks you need immediately done, and trust your gut as you move confidently forward. Adjust as needed.
since, it is tech start-up, no personalized perspective will be delivered, and it may not get good output, if u are not directly regulating the process. i am just a call away with your solutions.
Sorry to say that. I've consulted startups for years.
You don't outsource a startup project. When your company grows, you may outsource one of the operations , if it is beyond your area of expertise, and then assessing outsourcing VS starting a new subsidiary or department to solve the problems you are facing will still be another option.
For startups , it is always recommended to hire professionals to help you manage what is going on.
For example , if you are making a web app or a mobile app and you are not a developer, then you should hire a project manager or a CTO , to help you hire a tech team , manage them and be under your control to turn your ideas to reality.
And think about the money you will spend on the outsourcing and spend it on your internal team.
This is important for lots of stuff:-
. You will learn a lot. Which is priceless.
. If the company fails, what you learn will help you move forwards to your next startup .
. As a startup, whatever you have in mind will change a lot on the go , based on updates in business, funding , competitors , or if things boom and you want to have funding from a venture capital or investor or even be acquired. If you outsource things, you loose control on what you have about your company insiders, especially on technology stuff, and also you don;t have the needed flexibility to do all the changes you want on that short notice if compared to the case that you have your internal team.
You may hire CORE team for important stuff, and keep hiring freelancers here and there for short tasks that you don't need frequently . And these people will still be willing to join you later on a full time contract or a return basis.
My answers are high level , but will give you an overview on where to go. If you need more details , we can have a discussion and I can help you from A to Z on how to move forwards on your work, what exactly to do internally and what to outsource of even buy .
Good Luck !
First, congratulations on your new endeavor. You're about to enter a brave new world. And while you will worry about every detail and make a few mistakes, just promise yourself to learn from them.
That being said, as a startup the reality is that you will be strapped for cash and will reply on outsourced contractors to get you up and running until you have a need for dedicated, full-time personnel. Until then, your main focus should be on finding great outsourced partners. Don't go for cheap. Go for quality and go with a partner you can trust, collaborate with and who understands the end goal.
All outside firms or freelancers know that one day the gig will end so don't just ask about what they will do for your know, ask how they will support and transition once the gig is up. Good partners will be able to do this seamlessly for you. (I now have transition down to a science!)
Also, make sure there's some overlap between the end of the engagement with the outsourced firm/freelancer and the new hire. This way you can ensure your new hire has access to the people who did the previous work and because they are being paid to transition, you'll get the best out of the firm too.
Hope that helps you. Good luck with your new venture!