Should I Hire In-House or Outsource? 13 Smart Questions to Ask

Headshot of Cort Buchholz, Chief Executive Officer of SingleMind UX Design and Software Development firm

Written by Cort Buchholz

6 minute read

Should You Outsource or Hire In-House? 13 Smart Questions To Ask

Choosing a high quality software development team to build the latest mobile or web application your company needs can be stressful. You’ll encounter a myriad of opinions on the topic, many boast about the benefits of outsourcing, many argue that a dedicated team can only be found in house. Considering overall project requirements, budget, and required time to market are among the most important qualifications to evaluate before making a decision.

We often encounter statements like; “I’m planning to build an eCommerce Application. Should I outsource or hire an in-house team to build my app?”. Our response is simply a slew of clarifying questions.

Smart Questions to Ask


What company do you work for?


Is it a large corporation or small business?


How involved do you want to be in the selection of the people that are doing the work for your project?


How much do you care about the aesthetic?


How much do you care about the interaction design?


When you think of good user experience design do you think of Apple or Google?


Do you not care?


Do you not see a difference?


How involved do you want to be in giving guidance to the team?


Some teams use agile processes in the management of the project which requires you to be involved in the process as a product owner, do you want to be involved?


Are you simply looking to hand the design and dev team a specification, walk away, and have them come back six months later with what you asked for?


What involvement do you want on the technical side of the project?


Is this a project where you’re going to be very dictatorial about the specific types of tech, frameworks and standards that the development team follow?

Answering these questions on a per project basis gives us understanding and insight into whether or not your team should leverage an outsourcing partner, or build an in house team.  Your goal is (always) to cultivate a long term competitive advantage for your digital product. 

We’ve taken the time to debunk some common misconceptions and break down the key differences, pros, and cons of outsourcing, offshoring, and in house software development.

What is In-House Software Development?

Development of in-house software involves employing an organization’s resources (in-house unit) to create or execute software according to the needs and requirements of the client. Within larger corporations, the in house software development process looks a bit like this: There’s a flexible team of designers and developers that move around within the organization, to work on and deliver for the needs of other parts of the organization.  However, the arrangement nearly mirrors what you might see with a professional services team. 

For example, let’s say that the marketing department for Intel wants to build an AR marketing application for the conference coming up in November.  Money isn’t an issue, they simply need it done quickly. The marketing team will then pay the in house developers and designers to build the app, using dollars from their budget. The in house team only needs to charge the marketing team its overhead costs (i.e developers salary + benefits).


    More cost effective within a large corporation
    Full commitment to the project, design/development team is always available
    No cultural gaps (language barriers, time zone restrictions)
    Increased ability and flexibility for face-to-face meetings


    Limited access to the “best” talent (especially UX Designers, because design is only 20-40% of any given project, it is incredibly hard to keep an inhouse design team busy)
  • More likely to be resistant to digital transformation (lack of interest, unwilling to change)
  • Less likely to be up to date on the latest technologies available

What is Outsourcing Software Development?

Simply put, outsourcing is the redistribution of a job/s.  Basically, an agreement made by a corporation to pay a third party software vendor to do the work related to the technology/application rather than doing it in-house. Software development outsourcing is extremely common. Outsourced services have grown immensely within the last decade.  As of 2020, there are 53 million freelance workers in the US.  Within a large corporation outsourcing traditionally takes place through a procurement department. For example, that same marketing department at Intel (you, know the one needing that AR app?) would go to procurement and say “Hey, I need a design and development team to build this augmented-reality application for the conference we’re going to in November”.  Procurement would ask the marketing department to provide the project requirements. Then, the procurement team, leveraging its unique expertise, would begin their search. Their goal is to get the best price and terms for the company. Once they are satisfied with the software development agency they’ve found, the team will hand that company back to the marketing department. 

Outsourcing software development companies can be tricky but when done correctly can yield incredible results.



    When outsourcing within a large corporation, the product owner for the project is forced to work with procurement. Because of the use of a procurement department, the product owner’s specific knowledge base can be underutilized. I.e., procurement may not actually understand the artistic nuance of the project at hand.
  • Outsourced teams cost more. Hourly rates reflect the ultimate upside of the service provided (not just overhead costs).

What is Offshoring Software Development?

Offshoring is the act of hiring lower-cost resources in another economy (and different country).  For example, offshoring in Saudi Arabia means hiring from Egypt. American’s often offshore to India. Every country has its own labor dynamic and there will always be lower-cost labor that people are trying to get access to.



    Language barriers: most prevalent when working creatively. Within visual or interaction design, offshore designers are designing products for use by someone that is outside of their language (and culture).
    Cultural barriers: Oftentimes the way in which different cultures work together can cause significant communication problems. For example, if we look back 10 years, a unique challenge of working with a design and development team from India would have been a lack of questions asked. (Perhaps) given the historical caste system, many teams from that culture did not consider it appropriate to challenge instructions, or ask clarifying questions. However, the devil is in the details. Many teams that offshore a project to India learn the hard way that their project specifications must be completely detailed. Their team could get months into a project and then you finally realize that though you assumed the team would develop your website to be responsive (a given in America), you never specified with their team and now you have to go back and fix issues.
  • Information confidentiality
  • Time zone restrictions: New York City, to Vietnam boasts a weighty 11 hour time difference. Will the project management process be successful if your team is working while you are sleeping?

Wrap Up

Through it all, intelligently choosing a design and development company to partner with is vital to your project’s success.  Truly, the best way to make a decision that fits your needs is to answer the ultimate question; how involved do you want to be in the process?


More Offices

Portland, OR
Bend, OR
San Francisco, CA
Bozeman, MT 

Let’s get the conversation going

Complete our form or email us at


More Offices

Portland, OR
Bend, OR
San Francisco, CA
Bozeman, MT