9

So I've lead the charge with my fellow engineers to, at the very least, start "thinking" Lean. We hit on a few major areas of waste, and 2/3 lead to the exact same point..."Extra Features". We dogfood our own software on two fronts, sales and project management. It works great for sales, because that's what a CRM is great for. It's not so great for managing projects, and we're often tasked with adding extra features to make it work for this use case.

Does it make more sense to continue adding features that don't add any customer value, or should we accept that having our sales team using our own product is "good enough" and perhaps look for an off-the-shelf solution?

Sean Lindo
  • 103
  • 4
  • 3
    What is your product (not specific product name, more "its a CRM for publishing companies" type thing)? What is it used for? What are you dogfooding it to do? –  Jan 22 '14 at 17:34
  • 5
    Features are either necessary or they are not and if your company's usage of your app is so different than your customer's, you're not really dog fooding. Sounds like someone wants their cake and eat it too. – JeffO Jan 22 '14 at 17:44
  • 2
    We're using our CRM tool as a project management system. – Sean Lindo Jan 22 '14 at 17:51
  • 1
    Well, we do have a team using it, and I definitely believe in the product (I hope we all do) – Sean Lindo Jan 22 '14 at 17:54
  • 5
    Maybe you should make "Project Management" a feature which can be selled to your customers as well as an extra module. Then the "dogfooding" would make much more sense. – Doc Brown Jan 22 '14 at 18:03
  • 1
    This question appears to be off-topic because it is about a business decision specific to one company, not software development. – GrandmasterB Jan 22 '14 at 18:09
  • @DocBrown, something like an integrated task manager perhaps? – Sean Lindo Jan 22 '14 at 18:13
  • @GrandmasterB - I see it as specific example that could benefit other devs. – JeffO Jan 22 '14 at 18:15
  • @JeffO If re-worded to address the general idea of 'dogfooding' software that needs a lot of customization, perhaps. But the way its written now, it's asking what his company should do, and we do not have nearly enough context (such as cost, to what extent that is important to potential customers, company politics) to begin to make such a decision. – GrandmasterB Jan 22 '14 at 18:29
  • @user115710: well, I don't know your product, but there are dozens of products available offering project management features combined with CRM features (Google is your friend). So I think it should not be too hard to make a useful combination of those two requirements. If you need some ideas, just check how your competitors do it. – Doc Brown Jan 22 '14 at 21:09

2 Answers2

19

I don't agree with your initial assessment.

First of all, it's highly unlikely that your company is so unique or unusual that your customers might not also benefit from your customized features.

Dogfooding (even if you have to customize the software to make it work in your company) is one of the best ways to get a "reality check." The inconvenience would have to be especially egregious to overcome the benefits you get.

Besides, it's cheaper to use your own stuff than it is to buy something else to use internally. If you're not using your own stuff, then what confidence do you have giving it to your customers?


That said, if your application doesn't lend itself well to dogfooding (i.e. it's not a Project Management application, but you're trying to use it for Project Management), you have to decide whether or not adding features to it to make it work in a Project Management role (when your customers don't use it that way) is worth the trouble, additional expense, and complexity.

Dogfooding features that the customer will never see doesn't make much sense, unless it saves you enough money by not having to buy an off-the-shelf solution that it overcomes all of the drawbacks.

Robert Harvey
  • 198,589
  • 55
  • 464
  • 673
  • 1
    As I mentioned in my question, we're fitting a square peg into a round hole by using the software in ways that a customer never would. Care to explain how this is adding value to the customer if the customer never uses it? – Sean Lindo Jan 22 '14 at 17:50
  • In addition, our sales team uses the "consumer" version of the CRM tool in an identical way as our customers, so yes we use our own stuff. – Sean Lindo Jan 22 '14 at 17:53
  • 3
    @user115710: "using the software in ways that a customer never would" - honestly, I don't read that in your question. You should edit the question, insert that information and remove the rant, then you have a better chance that it will not be closed soon. – Doc Brown Jan 22 '14 at 17:54
  • @user115710 Then it sounds like you need to decide whether your in-house customizations are worth the trouble. But you still need to dogfood, if you can. – Robert Harvey Jan 22 '14 at 17:55
  • I think I was pretty concise without ranting, but I'll accept your criticism and edit the question. – Sean Lindo Jan 22 '14 at 17:56
  • 4
    @RobertHarvey: developing and using own stuff - not selled to anyone else - may indeed be more expensive than not developing those features and buying something else instead. But maybe the issue is that they don't sell the project management features. – Doc Brown Jan 22 '14 at 18:07
  • @DocBrown You're a genius! – Sean Lindo Jan 22 '14 at 18:13
  • 1
    @user115710 - Never say never. If you can't make it work for you, then yes, there's no hope the client could make it work, but you never know. Just let your sales and marketing staff get of whiff of this usage and they'll push it on someone. – JeffO Jan 22 '14 at 18:15
  • The ideal solution (especially if you want to productize it later) would be to build the Project Management piece as a separate, pluggable module. – Robert Harvey Jan 22 '14 at 18:17
2

Draw up all the requests for features from your company as if they were for a customer and show the cost of doing so. Then do a side-by-side comparison with an off the shelf piece of software.

Next, highlight your companys features that are hidden from other customers as there isn't a net benefit unless the feature saves more time / money than it took to produce.

Whoever does the budgeting should immediately see the value of spending the time on the dog fooding as time that could be spent on work producing revenue.

Kevin
  • 798
  • 3
  • 7
  • 2
    This ignores that dogfooding has more uses than just providing a specific service that could be fulfilled by other software: If you dogfood your software, this is akin to a continuous UX test and QA in a semi-controlled, yet quite real-world environment. How do you quantify that? – amon Jan 22 '14 at 17:44
  • Wouldn't automated testing serve the same capacity? – Sean Lindo Jan 22 '14 at 17:51
  • 1
    @Amon, dog fooding shouldn't replace any part of a QA validation, so there's an added cost. Product management might see a benefit from the in-house usage in determining features to add and such but I don't know about that sort of budgeting. – Kevin Jan 22 '14 at 18:22