Every now and then engineering is going to come back to you and say that something’s not possible for will take too much time to implement. Its generally good to hold your ground and try to motivate the team to push the envelope or look at the problem differently. And – to always ask for alternatives.
I’ve noticed that, at times, when I push back, splendid things happen. The engineering team gets a chance to shine and prove themselves wrong. Trust me. Development teams enjoy solving problems and outdoing themselves. This is what makes it really fun to work with a really talented and motivated teams. Its easy to agree to a cut down feature set or to say yes to an “ok” experience but it never challenges the teams to out think themselves.
So.. when there is no time pressure, I ask the teams to think about the problem some more and come back with alternatives. Push back and state why the solving the problem a certain way is beneficial to the user. State the importance of the “right” solution in terms of the user experience rather than your opinion. Smart people can always distinguish between facts and opinions.