When thinking about who your real competition is, it is helpful to step back and think broadly about all the different ways that the problem you're addressing can be solved. Clay Christensen and his disciples have come up with a framework - Jobs to be Done - and are trying to create a movement around this concept to help understand the competitive environment and how to refine products. They've even created their own hashtag - #JTBD - on Twitter to engage others in the conversation. But is it really that new?
To me, this is just a reformulation of the economics concept of a substitute (let's skip the math for now). The challenge for people in technology is that they tend to consider only perfect substitutes - competition that looks, smells and tastes like them - instead of stepping back and considering gross (or net) substitutes. To me, that's all this "jobs to be done" stuff is about - what are other ways that people are going about solving their problems?
A good example of this is when I was at a client discussing the merit of spending marketing dollars to promote a marquee feature of a product - photo sharing - that no one was using. When I asked the product manager who the competition was for this feature, he immediately started listing all the products in their space - little black boxes that were networked-enabled and had storage options.
The real answer was Facebook and Instagram (and now Google, Apple and Dropbox, among others). The product manager didn't step back to understand what are the real alternatives (the substitutes) for the act of storing and sharing photos with others rather than just other consumer electronics that have some photo sharing capabilities (or not).
No amount of "marketing" to promote this feature would have helped. Consumers already left this feature behind, which is why there was no adoption.
So, as a product manager, it is important to understand not only what a feature does, but also why it should exist and how it solves a problem in a way that's better than what they do today in general. Step out of your own space and look around. And if you need the #JTBD framework to help you, that's fine. You should be thinking that way anyway.