Are we Dogfooding?

Smitvyas52/ February 24, 2020/ Culture, Engineering

Now what is Dogfooding?

In the tech industry it is called as “the use of one’s own products.

The term “Dogfooding” is used to describe the companies using their own products. The idea is that by being a user, the company will find issues with products and improve their overall experience.

It is a decision which an organisation/team can take to gain continuous feedback on the product. It is not mandatory for every project. Feedback from Dogfooding will help to identify any features that might go into product.

A misconception about Dogfooding

The biggest misconception about the Dogfooding is that it can be only used for pre-release projects. But this is wrong – it can be with the on-going projects as well.

The idea is that if you don’t use your own product, then you don’t understand what it is like to use it in an ongoing way.

Usability Testing Vs Dogfooding

Zoom image.jpg
Usability Testing v/s Dogfooding

Stages

1) A stable version of the software is used with just a single new feature added
2) Multiple new features can be combined together into a single version of the software and tested together

Who will do the Dogfooding?

  • Your colleagues and co-workers. They are the ones from every corner of the company who perform all manners of tasks.
  • Executives, board members, or key shareholders. Company managers, VPs, and directors.

Where does Dogfooding live within an organisation?

1) Quality Assurance. Employee Product Testing often surfaces defects or software issues, and this department validates those quality aspects through bug discovery and code evaluation.

2) Support. This team interacts with customers and supports them through issues they encounter.

3) Product Management. While this team has the most strategic view of the customer, business, and technology, they tend to have less time for managing dogfooding projects.

4) User Experience (UX). This team has a nice balance of design and customer focus, with special attention to user behaviours and product interactions.

Dogfooding Examples:

1) Google
Google develops a lot of products that their team can use both internally and externally, and they make use of this opportunity to dogfood them. One of the biggest example is Gmail.

2) Microsoft
Microsoft employees have been eating their own dog food for a long time, and throughout that time they’ve been iterating and improving their dogfooding program. Today, dogfooding is very much embedded into Microsoft’s culture and they have a sophisticated dogfooding process that is integrated into their release process.

3) Facebook
The same has happened with the Facebook too, when they are trying to make happy everyone at the time of project release with poor focus that wasn’t working out. Instead of that, they started picking a small audience and focusing on making them happy, and that works out with a positive net effect. That’s exactly what they did with “React” too.

Pros

  • Improves your product quality through bug discovery
  • Allows you to scale quality testing environments with real people
  • Leverages internal resources to cut down on development and support costs
  • Helps to save time by addressing issues that can delay product release
  • Promotes product awareness and knowledge to every corner of the organisation
  • Demonstrates product usefulness and usability to the market

Cons

  • If developers are the intended audience to test the features
  • Cost factor rises to set the audiences
  • This will also increase release time of product and sometime it’s cost too.

Taken References from below links:

https://reactjs.org/docs/design-principles.htmlhttps://en.wikipedia.org/wiki/Eating_your_own_dog_foodhttps://schott.blogs.nytimes.com/2009/12/08/ice-creaming/https://blog.codinghorror.com/the-difficulty-of-dogfooding/https://sharpend.io/the-pros-and-cons-of-eating-your-own-dog-food/https://medium.com/production-ready/the-pros-and-cons-of-eating-your-own-dog-food-f76f0ebadbcc