IOS Development · Contractors

iOS app development: Hire in or contract a company?

Ken Banks Founder of | FrontlineSMS | Means of Exchange

July 28th, 2015

I'm close to securing an angel investment of $100k to build a working prototype of a mobile giving app. This is going to be a six month project and the budgets work, but are tight. I'm in the UK so have exchange rates to navigate as a starting point.

I was wondering if anyone had any experience/thoughts on whether I'd be better hiring a talented iOS developer and have them working for me in-house (bearing in mind ongoing costs and tax contributions for staff), or contracting the work to an iOS app development company? With a staff member I know I'd have their full-time attention for six months (with the option of them staying on once we get further investment), but with a company I'd have access to a wider team and resources.

Any help weighing up the pros and cons welcome. Thanks.

Andrasz Husti Co-founder at Begemot-Begemot app dev company

July 28th, 2015

I believe Mr. Webster has had a rough time with outsources, and I do sympathize. Yet, I strongly disagree. Outsourcers differ. What Mr. Webster is referring to is the kind of work a very young outsourcing team or a freelancer would provide. The more experienced a company gets, the better they are with documentation, expertise, UI/UX, etc.

I myself have an outsourcing company (we make mobile apps). Clients had never stuck with us untill we started seeing their products as our own, warning them whenever there might be a critical situation or a mistake on their behalf, making sure they fit in their budget and deadlines. This is what differentiates a good outsourcing company from a lousy one.

My take on this issue is that each entrepreneur should have the full experience: work with a freelancer, lose faith and money, work with a cheap outsourcing company, lose faith and money, and hire an in-house team, lose a lot of money :) In other words, you have to find out for yourself what good quality in IT means and what it takes to provide it. In my experience, this knowledge always costs a lot. At least, a lot more that you expect.  

I suggest finding a good team you think you can trust, hire them for an MVP and then take it from there. If your product takes off, great: you start hiring a team. And please, start with a product manager with a lot of experience. This will save you tones of money and time. Or you can continue with the outsourcing team if you have enough money and you like their work.

I hope this helped.

Noah Webster Co-Founder at Joir

July 28th, 2015

You can outsource if and come out ahead if you know how to produce good documentation. In my experience that is where outsourcing works: giving exactly what you want to the company. They will not solve problems for you, or point out design issues; that comes from in-house expertise. But as you said, they can give you a much larger pool of talent and options to pull from.

Personally I'd hire someone in house. It gives you someone who could grow with the company, and you could give them a mix of cash/equity on a vesting schedule to lower your total cash flow costs, and at the end of the 6 months have in-house expertise on board.

Paul Haris Business Development manager at mindinvetory

February 14th, 2017

The world is changing with the arise of smart phones. Next generation is looking the world with eyes of smart phone applications. Facebook is connecting next door friends and whatsapp is taking the communicator role between groups. People find it more important to play with smart phone rather than meeting their buddies face to face.

With popularity of applications, smart phone users are coming up with their own unique ideas and few are capable enough to change the world. The question is who develop this applications/ games and what is quality? Off course, answer is an iOS developer but it is very important to know that he is working on his own or he is working in an organization.

The answer of the above question will decide future of application. The developer who works for his own is a Freelancer, his own boss. There is no one to control him, no one to ask him, no one to help him. Now when this happens, off course there would be issues coming when he develop the application and that will make sure that your application is delayed or never completed. What is next step for you now?

Search for an iPhone development company who knows their job and who have bunch of talented application developers. The benefits of choosing a company over freelancer are mainly because company is always built with infrastructure, hierarchy and team.

Sudeep Bhatnagar I develop apps, talk apps, live apps.

July 28th, 2015

both options are doable; though you've to figure which one suits your current management bandwidth and costs; I run an app development company (serving customers like you), and let me tell you that it is easier said than done to hire and retain talented developers, for any technology and since mobiles are hot these days, it has only become tougher.

Now, coming to facts - outsourcing to an offshore mid size app development company like us would cost you $ 15 to 25 K for a 6 months' longer project (assuming it involves only 1 or maximum 2 resources); the same campaign in house would cost you at least $ 40 K along with other expenses and management burden.

While it apparently gives you more flexibility in terms of managing changes, do iterations when you've an inhouse team; you can gain the same by properly managing the offshore team as well; just you need to be more communicative, planned, and good on documents. We, the offshore guys can also understand your concepts and goals (doing so already offcourse) and convert them into quality weekly releases; but you would need to work as a team owner.

One more advantage of outsourcing to a company (not just an developer) is that you'd interact with not only the developer doing the code but also with a solution architect of that company who is mostly a seasoned techno-commercial guy doing all sort of non-code but important things for you; like doing R&D for the right SMS gateway system, proposing you best options for payment gateway, or suggesting you right kind of backend system etc. Apart from that, the same guy would be managing the grunt part of the development management; keeping the backup resource, maintaining repos, handling change orders; spending hours with you on skype and what not.

So, the overall package that a professional company can give is not comparable with having an inhouse developer, except the only fact that the latter is sitting near to you.

You may better hire a CTO (if you are not the one technical), who can manage the development team (be it your inhouse or an outsourced one).

Also, reconsidering having inhouse team and infra if you don't have solid longer dev plans. I've worked with inhouse teams in India, US, and Singapore and also did outsourcing and now running an outsourcing company - managing internal team when you are a startup is sometimes more cumbersome than managing a professional vendor working for a fee.

In any case, the goal of your campaign should remain fulfilled; so choose your plan based on your requirements and not on the basis of what sounds cool.

Let me know if I can be of any further help; may be you try us for a low cost MVP first, in the mean while you gauge your team options?

Jesse Landry

July 28th, 2015


Just sent you a LinkedIn connect and note.

Have the perfect person to connect you to.

This isn't something I typically do here but felt you should at least know Karen.

Hoping we can link up.

Elena Montes Managing Director at Kill The Loop

July 28th, 2015

Dear Ken,

My name is Elena and I have six years of experience developing and managing IT projects in Ireland (five last years specialized in iOS apps).
I am an IT Service Provider specialized in mobile apps ( formed by a large team of freelance senior developers and designers from Europe and Russia. I am also developing one of my web/app ideas since one year ago and I have assigned three developers. None of them are in my office because of the level of freedom and indepence I want for my business, myself and themselves, and I have everything under control thanks to Project management and Issue tracking systems, and also because we use Skype and emails everyday. And I know the final cost since the beginning. So for me, this option is all advantages.

So I think I can help you solve your doubts quickly with my intensive experience:

As per your message, it seems that you only need to do an iOS app, but in most of the cases it is not only an iOS app what you need. Are you looking for an iOS Developer or a Software Developer specialized in iOS Development? Most of the mobile apps require an Administration panel (CMS), a database and an API, and many mobile developers don't want or are not experts doing those things. Plus, the app design. App developers are not App designers. So, there are four different costs involved here (two if you don't need a CMS) which usually determine the number of people you need:
1. CMS UX/UI Design (i.e. 2 weeks of work)
2. CMS/DB/API Development (i.e. 1 month of work)
3. UX & UI iOS App Design (i.e. 2 weeks of work)
4. iOS App Development (i.e. 2 months of work)

An IT Solutions Provider splits easily your project in stages/modules and can give you an estimation so you can agree a fixed cost with them for each of the tasks (if you want to receive a very accurate estimation you will need to provide the UX/wireframes of the full system, or at least send a very detailed documentation, don't forget to sign a NDA before). There is no need in having someone during 6 months working onsite, unless this person can do all the required tasks, you think you will change the specs continuously and the project is really big so you want to keep this person for long term for a good reason, such as continuous site maintenance, but for this you can also ask for a project documentation to the service provider. And they can solve anything you need quickly because they have experience and resources. They will assign the appropriate person to every stage of your project, and also some stages can be started at the same time than others, so your project could be finished sooner than previously expected.

So developer onsite or offsite?
My advice is to take a decision based on your personality and level of freedom you need/want for yourself. Having a person at your office limits your freedom if you need to go to meetings or events, travel, etc, and also forces you to have a strict timetable.

Then, the next question would be about the software quality you are looking for.
If you need a safe, stable, scalable and efficient system take a Senior Developer, not Junior. And if possible not from India. Well, please do not misunderstand this as I know there are fantastic developers all over the world, but my experience (speaking about quality) is not good enough with Indian developers. They have good things, such as speed and price, but they are not famous for doing quality code. But if your idea is simple is ok if you contact any kind of developer, although I always recommend to take a good one. I never contact with anyone from these countries because during my first two years doing freelancing I got so many Irish clients asking for fixing the apps made by developers from India and Pakistan because their apps crashed unexpectedly, or some screens took so long to load information/maps/images, or they just couldn't get some features to work well. And dealing with those projects was a nightmare, because they don't write intuitive names for variables and functions and their code in general was a mess and in most of the cases I needed to restructure the whole app, do a modular decomposition and fix the navigation used. So when I started growing and had to form my team I contacted developers with which I was studying and working before and I knew they provide quality code, taking care of the memory management, layout, etc.

​So to conclude this, ​

I would choose an IT service provider specialized in mobile app development, who doesn't mind to put you in contact with the developer assigned to your project (by email and Skype), and has a proper environment to follow up the progress of your project every day, like me :)

Kind regards,

Elena Montes
CEO & Founder @KillTheLoop

Narjeet Soni Mobile Apps and eCommerce expert, Lean Startup and Agile evangelist , Entrepreneur, EU resident

July 28th, 2015

To ship a mobile app or for that matter any tech product - you would need a complete X-functional team - iOS/Android Developer, Backend developer, UX Designer, Usability expert, Functional Testers and Technical Architect. Now let's do some maths. You have $100K - Reserve 40% of this for marketing (never burn your cash on just development). You are left with $60K. Take your salary $12K. You are left with $48K. Now how many people can you really hire? Not a lot!

If you are validating, slice the product down to bare minimum. If you have managed such a product before good, else get a Co-Founder who can act as a Product Owner and can manage the offshore team. He should define all user stories and should know what deliverables to build, so that it's a smooth transition later from external team to internal. Bring him on some cash vs equity model. You will be left with $36K.

Get a good external team, who has experience with European customers - ask for references and check those references. Email them or call them or Give them a small test project of 2 weeks and see if it works out. 

Anybody who says Agile, Outsourcing, Lean Startup, Design Thinking, Social Marketing etc. doesn't work, is probably not doing it right. It sure is working for a lot of other people

Diego Fiorentin

July 28th, 2015

Hi Ken,

my recommendation is to outsource,
you should focus on the biz development, not in running a software factory. 

If you want I can provide you with referrals.


Japan Shah Founder & Managing Director at JMS ADVISORY SERVICES PRIVATE LIMITED

July 28th, 2015

Hi Ken, i would suggest you to hire an iOS Development company to create the application. Once the application is live and is doing well, you can then have an in-house resource. Initially in your budget you can hire a good Mobile Application Development company in India.

Anthony Miller

July 29th, 2015

First off, congrats on funding! I lead a team that actually developed a mobile app for a giving org called GiveGab. 

I'd say if you hire a company like ours to develop this platform, you first should get the right contract in place. We've launched a bunch of startup software over the past year. Just make sure you're company owns the IP. We have a bunch of contracts that protect the owner of the work.

If you go the route of hiring a team, you will have the luxury of a group of minds developing, leading strategy for best practices, user testing, design, and of course have a working prototype in less time. If you hire an external candidate then your prototype will take much longer to launch, may not have all the bugs worked out, run the risk of your employee getting bored with the project as it takes very long to gain form. Employees can leave you at any time, but with an agency you have a scope of work contract that they must deliver on in a specific timeframe.

If you'd like to chat this over a bit more I'd be happy to help. : )

Best, Tony