I don't think it's necessarily bad by default. Any single customer (large or not) is going to be clearer with their requirements, than trying to distill something that can fit several other customers' problems. It tends to put firmer constraints on your design, brings more clarity to your direction. It also depends on what you're comfortable with - personally I prefer to focus on solving the technical challenges, so I find that constraints on product direction leave me with more brain cycles to tackle the tiny details. Once I have a well-engineered solution, it tends to generalise more easily.