December 13, 2012 Developer Blog No Comments

Many people who are new to the app business will often ask this question…Do I learn to develop myself or do I outsource?

My programs specifically focus on learning to Develop yourself, and the tools and software I am bringing out and recommending in my programs will allow you to do just that by following along with my video tutorials in my program in the future.

However in all fairness, let us look at the pros and cons of both.  Firstly understand that  when you are just starting out, your funds are going to be VERY limited.  In fact in order to run this business, you need to have a lot of apps and a small budget will NOT allow you to outsource an amount of apps that generates enough revenue to cover your costs.  For this reason I train new app business owners to become app developers first, and then later as their business grows, outsource to help grow their business should they wish to outsource.  I personally have outsourced several staff members as the business has grown and things have gotten more challenging to handle just myself.  However I still refuse to outsource my development to people I cannot trust as I don’t want my ideas stolen, but that’s just me.  Even with all the NDA’s in place, if someone really wants to steal your idea, they are going to steal it and it’s a big challenge and quite costly to start taking legal action over it (especially if the app is not a hit app anyways!).  HOWEVER what I like to do is split up the work into parts and hand it off to totally different outsourced staff so that even if someone had the intention to steal, they would require ALL assets of the app to really create the app, and that’s one method of deterrent along with regular NDA agreements.

I’ve created a chart below, please feel free to share it:




– Minimal Costs in the long run.  (You can create as many apps as you have the time to create without worrying about price issues or contractor delays)

– No issues about others stealing your ideas.  (Hence no need for extensive NDA Agreements as you are the only person touching the code and creating the base idea)

– Control over your own code (No issues of others re-using your code for other apps)

– YOU GET the actual code, not just an app.  This way you don’t have to worry about Developers leaving you hanging where you cannot update your apps.

– Speed of creation (No delays or higher costs for speed.  As fast as you can code, is as fast as you can create.  Various tools even exist that have a faster creation speed, but no waiting on other developers to get code to you)

– No scams (No worrying about being over charged or scammed by shady app development firms who are taking you for a ride due to your lack of knowledge or experience)


– Less upfront learning (outsourced workers handle all programming)

– Low cost of hourly staff compared to in-house staff (as low as $1/hour depending on what needs to be done.  Around $5-$10/hour for the top end developers from eastern countries)

– No need to worry about common staff related issues for an employee as outsourced staff are usually contractors.  This means you won’t need to worry about health benefits, hours of work, lunches, etc.  Many of them work a minimum of 5 days if not 6-7 days a week.

– 24×7 capabilities.  Many of the staff members are working while you are sleeping, thus giving a chance at higher outputs.  If you hire several staff members, you could have a full 24×7 operation.

– Automation capabilities (You can automate many of your repetitive tasks to others)

– Faster hiring than regular in-house employees

– Faster firing/removal with less issues than regular in-house employees

– Time to learn how to program (Could be up to 6 months)

– Upfront cost of software, tools and hardware


– Language Barriers (Not English specifically, but more about how English is spoken.  Words and cultural rules are very different in other parts of the world)

– Technical Barriers (Trying to explain to outsourced staff what you want will be a CHALLENGE and can take a lot of time)

– Creation time longer due to either the outsourced developers having more projects, or the fact that there is a lot of back and forth communication to get things done.

– Loss of developers over time.  Full apps can be deemed dead as there is no code to update them and original developers no longer working for you.  You’re left with a final version of an app that you either downgrade to a lower price due to no more upgrades, make free for helping grow your business, or take it off the market if the bugs are too problematic.

– Management Issues (If you are not constantly keeping up with your outsourced staff, they tend to take a lot of time and in some cases stop working on the project…Always keeping up to date with your contractors is an important part of outsourcing)

– Creativity issues and Quality Issues (Its no secret that outsourced work in general is of a lower quality than local and in-house employees.  The only way to counteract this is to try and keep certain parts of the development IN-HOUSE or to outsource only to higher quality higher cost providers.  For example you may want to outsource graphics to a dedicated Graphic Designer rather than leaving that up to the outsourced app developer)

– Long term costs for many apps is ASTRONOMICAL! (One app alone will cost between $1500-$5000 for a half decent app.  In order to really do well in the app business however, you need to have many apps.  If you outsourced that development that could run you into thousands if not HUNDREDS OF THOUSANDS!)

– Possible loss of sensitive and important company data and information

– Possible loss of company secrets and app ideas!

– As many outsourced staff work with many customers, your projects may not get the full 100% attention they need!

– Having to write and read very confusing Non Disclosure Agreements (NDAs) that may or may not work well in protecting your ideas depending on where in the world you are outsourcing to.


So there you have it!  I personally will always recommend to new app business owners to do it themselves and first start programming and developing so they can save money in the long run and develop many apps if they are planning for a long sustained business.   Then as the business starts to grow, at that point start outsourcing repetitive parts of the business, but keep the code in-house so you have full control over it.

Losing code to outsourced developers is a very problematic thing because if a developer decides to only provide you with the final app files rather than the code, the moment they decide to leave you, your app is dead in the water. (You won’t be able to update an app without the code, nor can you make any edits to your app outside the code unless you had those editing capabilities built into the app in the first place).

Hope this helps clear up some of the confusion on the two worlds.

God Bless!

Abhinav Gupta
Written by Abhinav Gupta
Abhinav Gupta is the Lead Developer and CEO of Game Scorpion Inc. He has been developing apps and games for several years and has a passion for creating new things. The apps he and his team have created have been downloaded hundreds of thousands of times across the world in various markets and platforms including Apple iOS, Android, Amazon, Barnes and Noble and even Blackberry RIM. He has written several pieces on the subject of mobile apps and mobile business and has even been seen discussing his apps, courses and training in several prestigious venues including one recently in 2012 at the Blackberry Dev Jam in Montreal, Canada.