top of page
  • Writer's pictureMichael Zhdanau

4 options on how to audit outsource software development

For non technical business owners who collaborate with an outsource sooner or later comes a question: “How to ensure that everything goes well with my software development?”. Sometimes this question came as part of the desire to terminate a contract with an outsource software development agency, like it is described in our post 6 Steps on how to terminate a contract with an outsource custom software development company. Sometimes because owners see negative consequences and nobody can tell why (delays in planning and go-live, bad quality, security risks and so on).


In both cases a question “How to audit outsource software development?” arises. And the process starts from choosing by whom the audit should be done.


find engineer to audit outsource

But before answering the question, I’ll make my usual advice: provide feedback and see what will happen. Trust is important in all businesses so if you don’t trust your agency - better to carefully talk about it and fix it.


So let’s see possible options on how to solve the question.


1. Learn and audit on your own

As a person, who loves to get new experience - I can't skip this option to dig into details and analyse on your own. This could be tricky for completely non-technical persons, but this approach has its own pros and cons.

audit outsource software development

The pros and cons

Advantages:

  • you invest your time in your success and learn something new

  • cheapest option (except of the time invested in learning)

  • less problematic for the future as you'll have in-house expert - yourself

  • continuous control instead of periodic audits

  • if you plan to continue your business in IT domain - the most pragmatic option

Disadvantages:

  • time consuming and not the fastest option

  • you can't compete with 10+ years engineers and in any case will rely on your engineering team for the first time

  • impossible option if technology is something you don't like at all or don't want to focus on


2. Find freelancer

It could be Senior Engineer/Architect or Chief Technology Officer (CTO).

find freelancer to audit software development

How to find:

  • ask network for recommendations, ideally choose somebody with business (less chance that a person don’t understand business needs) and domain expertise

    • if no recommendations - Upwork and freelancers with good ratings can help

    • don’t look for candidates on job boards - most often they are focused on long term cooperation

  • Interview candidates by trusted persons (ideally by 2)

    • no trusted persons - bad news, then you need to find 2-3 people and make 2-3 audits and compare. Could be a disaster, as they can provide 3 contradictory conclusions as most often one thing in software development can be done by 2-3 different scenarios and all of them could be right.

Pro Tip 1: never hire consultants that propose your hourly rate and don’t tell estimates on when the audit will be done. They can explain it by many serious factors, but in majority cases after initial talk and overview of audit requirements professionals with domain knowledge can say the initial estimate. Ask for a fixed price - this is better.

Pro Tip 2: don’t hire for that purpose another outsource. They will always tell you that the current company does things completely wrong and they know how to make it right.

Now let's see pros and cons for the option

Advantages:

  • comparatively low cost

  • fastest option

  • easy to replace consultant

  • fresh view on software development process and on your product idea

Disadvantages:

  • sometimes it is not enough to have one person, especially for technically difficult projects with multiple technologies (or need to find Architect/CTO level)

  • risk that a person will be not so motivated and provide you an audit that will be not so good or professional

3. Hire in-house CTO

This option is similar to the 1st option, but with some important differences.

hire in-house CTO to audit software development

How to find

  • ask network for recommendations, ideally choose somebody with business (less chance that a person don’t understand business needs) and domain expertise

    • if no recommendations - job boards and boards like Y Combinator

  • Interview candidates by trusted persons (ideally 2)

  • for sure set KPI that are related to the product financial success - this person should be fully interested in business goals

Worth mentioning that I saw a case when a non technical business owner asked some trusted engineer to become a CTO. The CTO had only a salary. As a result the company lost time and competitive advantage because of endless rewriting/refactoring and implementing new features just for implementing new features. Fun for a CTO, but pain for a business.


Pros and cons for in-house CTO

Advantages:

  • great motivation (if right bonus schema was chosen)

  • higher trust

  • in-house technological expertise

  • more value for technologically complex products

Disadvantages:

  • usually longer and more difficult for find a great CTO-partner

  • hard and painful to change CTO if any difficulties

  • more expensive in any case than option #1

    • as option - hire a Senior Engineer - less cost, but also less value.


4. Share part of your business with a Full-cycle agency

Actually this option is not exactly an answer to the "How to make an audit?" but provides alternatives. These are so-called Full-cycle product incubators with marketing, product and sales expertise. In the case of partnering with them the question becomes not so actual because of their motivation to make your product successful.

full-cycle software development agency

How to find

  • also networking and search for the type of agencies

Pros and cons for the option

Advantages:

  • full expertise ready to solve all questions related to your product launch

  • great for fast go to market strategy

  • sometimes very good domain expertise

Disadvantages:

  • doubtful motivation - they can have other more interesting contracts

  • great option to spend money fast and without warranty as budget grows because of non engineering team members

  • less product control

  • less income

What should I choose to make the audit of outsource software development?

Well, everything is context specific (difficulty of your product, your future plans, readiness to share income and so on).

So initially I recommend finding somebody on freelance for software development audit and then going to in-house CTO as the final and the most reliable option. Making audit on your own is also a great option - but most probably you prefer to focus on business tasks.


Sharing income with a full-cycle agency (4rd option) could be good if you don’t want to dig into details and are lazy. But as for me - this is not an ideal case at all because of possible lack of motivation, higher costs or less income for you.


Overall recommendation - choose an agency with transparent processes, readiness to explain and clear contract with trial period (better 1-2 month delay, than 1-2 years on unclear software development without clear vision of future). For example, at Widerix we propose flexible contracts, transparent by default processes and continuous communication with bi-weekly demos to keep our clients involved and aware. We know how it is important to spend money and see which value it brings.


Please let me know in comments if topic "What to audit" should be covered as well.

Comments


bottom of page