> It can be PAINFUL
Can you provide some examples?
As a consultant, you aren't a stakeholder technically. You are a coder-for-hire. You aren't typically going to maintain the application so you're more of an advisor. This is awesome because as an advisor, you can make some great suggestions, but in the end you do it how they tell you to or you find another gig. What I've found is, if they don't listen to me or accept input for change I'm not interested. Those are typically painful but short consultancies. If they do take advice, then I frequently convert to see the project all the way through.
I've had situations where I can't wait for the contract to be over, and as you've guessed ones that are awesome and I convert over, or extend to stay on longer.
You can also get into consulting to the point that you're part of a team which is hired to build something for the company. These can be awesome because then you're a stakeholder and yet free of some of the internal politics of a company.
Anyway, I love consulting, but I also love the stability of FTE. I've found that consulting has been a great way for me to find FTE opportunities that I prefer over just interviewing.
EDIT: The most pain happens when the consultancy you're working with doesn't communicate well with the client, so you get put in the middle and have to server two bosses who are in opposition. The best cases you have one clear boss, but another clear tasking manager at the client. In these cases positive feedback flows to your manager and negative feedback should be minimal but direct.
Opinionated, well spoken people tend to do really well in consultancies. Find companies that do cool things and be part of them. You can also gain experience while moving around and helping non-tech companies come up to speed. It can be PAINFUL but it can also be SUPER duper fun. When you find someone going the wrong direction, offer advice and they listen to and improve from your suggestions.