Not more software jargon

There are certain terms in the software industry which you may hear for the first time and immediately understand their meaning. For instance, backdoor; a hidden method of gaining access to a computer system.

The term dogfooding is not an obvious one. This post explains what dogfooding is and gives you examples of some companies who are doing it.

So what does dogfooding mean?

Dogfooding is short for "eating your own dog food". As a software company or developer this means using the software you write for your clients, yourself.

This has great advantages because you are able to see what the user experience is like for your clients. You are also more likely to fix a bug if it affects you in your daily work. 

Which companies are eating their own dog food?


For a long time the compiler for C# was written in C++. Recently the C# team at Microsoft created a new compiler called Roslyn, which is written in C#. It is a lot faster than the previous compiler and it has the advantage of now being cross-platform. I think it is cool that the code to write the language is written in the language.


The project management software company Basecamp uses its own product to track issues and bugs in its own product. 

On a smaller scale

I built my website in using Umbraco and ASP.NET MVC, written in C#. The reason why this is like dogfooding is because I build websites like this all the time for my clients at work. I can identify and fix problems that I would only see as a user. It has enabled me to build fast, easy to use content managed sites better than I would have if I wasn't using it myself.

Amongst other things, I've learned how to optimise for performance and improve Search Engine Optimization (SEO), all of which are transferrable to the work on my client's sites.

Try it yourself

So now you know what dogfooding means, you can find ways to try it yourself. Even if not, it's worth knowing about and spreading the word.

Paul Seal

Umbraco MVP and .NET Web Developer from Derby (UK) who specialises in building Content Management System (CMS) websites using MVC with Umbraco as a framework. Paul is passionate about web development and programming as a whole. Apart from when he's with his wife and son, if he's not writing code, he's thinking about it or listening to a podcast about it.

Proudly sponsored by


  • Moriyama build, support and deploy Umbraco, Azure and ASP.NET websites and applications.

  • CI/CD service for Windows, Linux and macOS
  • Build, test, deploy your apps faster, on any platform.

  • Custom stickers for startups, artists and brands.
  • Bespoke easy-apply, removable, custom brand stickers printed in the UK.

  • is the easy error logging and uptime monitoring service for .NET.
  • Take back control of your errors with support for all .NET web and logging frameworks.
uSync Complete

  • uSync.Complete gives you all the uSync packages, allowing you to completely control how your Umbraco settings, content and media is stored, transferred and managed across all your Umbraco Installations.

  • More than a theme for Umbraco CMS, take full control of your content and design with a feature-rich, award-nominated & content editor focused website platform.

  • Affordable, Geo-Redundant, Umbraco hosting which gives back to the community by sponsoring an Umbraco Open Source Developer with each hosting package sold.