In a 1976 television commercial for Alpo dog food, actor Lorne Greene famously fed that brand of dog food to his very own dog.
With this demonstration, he proved his faith in the product, and the term dogfooding was coined.
Dogfooding has since become a synonym for testing a product internally before market release.
Former Microsoft manager Paul Maritz even entitled an email Eating our own dogfood, where he encouraged internal usage of the company’s product.
Nowadays, dogfooding (i.e., internal testing) is a well-respected practice in software development. If you want to dogfood successfully, read on—this article is for you.
Table of Contents
Block out time slots for dogfooding
Dogfooding is a work task like any other.
Coding, writing documentation, dogfooding—these are standard components of most developer jobs and should all be performed within the eight-hour workday.
In other words, dogfooding shouldn’t be done during the employees’ free time. Instead, you’d do well to block out time slots specifically for that activity during the day.
That way, you’ll ensure your team members have the time to dogfood and therefore improve your product.
One Reddit user even suggested making dogfooding part of the sprint:
Dogfooding can be made mandatory for all employees, but only if the management creates the appropriate environment for it by dedicating the necessary time to it.
Bug and crash reporting tool for your mobile app.
The tool allows your employees to create tasks and then drag and drop them onto their calendars, blocking out time.
Here are the task view and the calendar view side-by-side:
With this resource, your team members can effortlessly incorporate dogfooding tasks into their calendars.
That way, the testing can’t interrupt other obligations and dogfooding will be a standard part of their workday.
Organizing the calendar in this way should ensure that your developers have enough time for all their tasks.
David Allen, the author of Making It All Work, put it best:
Realizing, as you look through your calendar while considering what’s changed in the last few days, that you had now better block out two hours for yourself in the coming week so that you can finish drafting a document on time, is the kind of aha! moment that can help prevent the loss of control.
Here, Allen talks about drafting documentation, but the sentiment also applies to dogfooding—what’s most important is that developers have a sense of security about getting everything done.
Lead your team by example
Dogfooding isn’t a standard form of mobile app testing.
As such, it’s not restricted to the QA team but is often a company-wide initiative and frequently voluntary—employees choose to participate.
That being said, your developers likely have enough tasks on their hands already, making it difficult to find spare moments to dedicate to dogfooding.
That’s why you need to set an example. After all, your manager’s schedule is likely busier than your team members’ maker schedule.
If they notice you’re allocating time for testing, they’ll probably realize how important dogfooding is and be motivated to do the same.
One of the most senior employees is frequently the first dogfooder, and their example should inspire junior employees to contribute, too.
After all, if the CISO is so invested, the practice must be beneficial.
However, dogfooding doesn’t end at just testing out your company’s software. If your app has real-world interactions, why not try out the full functionality?
Logan Green does this to explore the drivers’ user experience, gathering insight into the app’s functionality. And he even makes money:
Jokes aside, the practice is an ingenious method for testing the Lyft app experience from the driver’s point of view.
This unconventional method proves Logan Green’s dedication to dogfooding and will motivate employees to give it their all during app testing.
Involve as many team members as possible
Your app is (hopefully) going to be used by a large number of people—older, younger, Caucasian, Asian, male, female, etc.
Imagine a testing group of 20-something men vs. a group of 55-something women. Their perspectives will vary, and each group will notice different drawbacks.
The more people get involved, the more errors you’ll spot.
Meta Preview’s dogfooding is proof of the benefits of an extensive testing group:
These tremendous results were partly due to the massive number of employees involved in the dogfooding. Therefore, whenever possible, recruit as many employees for it as you can.
Companies have realized these advantages, and some made drastic moves, mandating specific tools or practices for the entire company.
For example, take a look at this 1981 memo from Apple:
The executive staff implemented a company-wide word processing directive, compelling employees to use their product.
Although this approach is a tad extreme, there are other ways to encourage your entire company to test your app.
If your app has something to do with fitness tracking, why not offer gym memberships for the entire business?
If the app is about recipe planning, try hiring a nutritionist to discuss an ideal meal plan. The goal is to create an environment that makes your entire firm want to dogfood.
Incentivize team members to participate
If you have trouble gathering employees for dogfooding, positive reinforcement is your best solution. Try offering incentives to motivate your team members to participate.
These incentives don’t need to be extraordinarily fancy or complicated. Often, employees simply want recognition.
For example, you could encourage friendly competition between testers and promise a prize to whoever finds the most disruptive bug, or who finds the most bugs.
Again, this prize doesn’t need to break the bank. It can simply be a funny mug with Best Bug-catcher printed on it or even a toy commemorative trophy.
However, if you have the budget to spare, coupons or gift cards are a great way to go, like in the example below:
Although the example is a bit outdated, the point still stands. Most employees would love a $50 Amazon or Netflix gift card.
By offering these motivators, you should have a much easier time recruiting testers.
Another incentive your employees will appreciate is a paid meal for the team or an office buffet.
Tech giants such as Google and Facebook are famous for their free food, and employees greatly appreciate their efforts.
Here’s a glowing review of Dropbox’s meal allowances:
This employee is thrilled with the food choices. Suppose you promise a restaurant outing as a thank you for participating in the dogfooding.
In that case, your team members will likely meet you enthusiastically, and the incentive will invigorate them to begin testing.
Segment your team into groups
Although it’s a good idea to have as many testers as possible, try to avoid grouping them all together.
This is because different departments will have different perspectives and therefore focus on different areas.
Dogfooding with various departments is a widely-adopted standard practice.
It’s easy to understand why. Consider the Sales and Marketing teams—they’ll likely examine user experience and user-friendliness.
On the other hand, your developers will be oriented toward the technical aspects.
An easy way to segment different testing groups is to assign specific Slack channels for each group.
The same strategy applies to most instant messaging tools if your company doesn’t use Slack.
Here are some sample Slack channels:
In this example, channels are already dedicated to developers, sales, and marketing.
Why not take that segmentation one step further, and create dedicated dogfooding channels per department?
For example, #devdogfooding, #salesdogfooding, #marketingdogfooding, and similar.
With that approach, you can easily keep track of all the feedback sources, and everyone’s advice won’t get muddled in one general #dogfooding channel.
Furthermore, if you ever want to go back and review someone’s suggestions, you’ll know where to look.
Usability advice would probably be in the Marketing section, whereas technical knowledge will come from developers.
Provide support to the team
Mobile app dogfooding requires knowledge of the app’s intended functionalities. So it’s likely that your employees will occasionally have questions about the app.
However, both choices can be intentional—the design might be unconventional on purpose, and the app’s release could be restricted to the United States.
These are the inquiries employees will probably have and will look to you for guidance about. As the team lead, it’s your job to support them.
A study recently revealed that employees spend a frightening amount of time searching for information:
Your aim should be to avoid this scenario. Being continuously available will significantly assist your team members, as they won’t lose time tracking down information.
Instead, they know to just contact you.
To maintain this open communication, consider hosting an open-door event, where your employees are free to visit whenever.
That way, developers know they are guaranteed an audience and can save their questions for that time slot.
However, as Andy Grove points out, allocate enough time to address everyone’s issues at length.
The Intel co-founder had this to say:
You don’t want to be available for a mere 15 minutes, for example. What if a discussion ends up taking longer than anticipated?
You wouldn’t have the time to address your other team members’ concerns, and they’d walk away frustrated.
Whatever your support strategy is, ensure you devote time to everyone’s concerns.
Streamline the feedback process
The ultimate aim of mobile app dogfooding is to receive your employees’ advice.
Team members should be able to quickly and effortlessly convey their thoughts. In other words, the feedback process should be intuitive and streamlined.
Luckily, there are countless online tools to help you out. For example, Shake is one of the most user-friendly and straightforward apps out there.
With this resource, all you need to do is shake your device, and a comprehensive bug report will immediately be sent to the developers.
Take a look:
The report contains all the details developers will need to repair the bug: screenshots, screen recordings, steps to reproduce the error, network specifications, app version, etc.
With this tool, your employees will provide in-depth bug reports effortlessly, significantly streamlining the feedback process.
However, dogfooding isn’t limited only to bug reporting. It’s also a chance to improve functioning features or offer design and user experience suggestions.
For that feedback type, consider a testing feedback form.
Here’s a sample screen:
The template asks explicitly for the software’s disadvantages, allowing employees to explain what features they didn’t enjoy or felt were lacking.
This is a great question, as your development team can implement improvements and fine-tune the app before release.
Whatever you do, don’t resort to hosting a meeting and jotting down employees’ comments in your notebook—find an easy method for testers to submit their feedback.
Dogfooding is a superb way to trial your app before market release, therefore improving the user experience. The practice is invaluable in mobile app testing.
Do your best to involve as many team members as possible, but segment the employees into groups.
Try offering incentives to motivate participation. Don’t forget to dogfood yourself either, as this will provide a good example.
You’ll also need to support your team fully—one method is to block out time slots for dogfooding.
Finally, streamline the feedback process to gain insight from your employees easily.
Follow these tips, and you’ll have an effective and productive dogfooding process in no time.