I want to work with a smaller team, preferably at a startup. Anyone need a high-level frontend engineer? Please, contact me.
What I am saying is that recognizing a bad situation is easy, you can sum it up in "4 legs" or however many bullet points you want. Does anyone really need to give you rules to determine if a job sucks? No, you just "know" it.
The hard (and interesting) thing is taking action about it. That could mean solving the problems in your current position, finding a way to deal with problem people or just leaving.
I guess that means my current job ranks low according to the criteria in this article.
The likely reason it is blocked, is the main domain (randomdrivel.com) used to be a community for sharing fart jokes, star wars parodies, and weird internet memes -- before the age of Fark, Digg, and now Reddit. The whole domain is probably classified in the websense 'poor taste' category :)
This recognition comes from yourself, your direct peers, your superiors, your subordinates, your customers, your friends, and your family. If any one group thinks lowly of what you do it has a strong effect. If all of them think that way it would be very distressing.
The only way anything matters is as it relates to recognition from any of those groups. Your own background and the people around you have a tremendous effect what works and what doesn't.
For example, a financial planner who made $5 million last year might be thrown into depression if they were reduced to doing taxes for middle-class clients for $50,000 per year. But a junior college graduate from a poor background might be filled with importance to have that opportunity. Likewise being praised by a Nobel laureate would probably be much different than being praised by your barber who thinks your app is cool.
So, figure out what would make you respect yourself. Work for someone who respects you and has customers that respect what they do. Have peers that respect you. And hire subordinates that respect you. Surround yourself with people whose respect is meaningful and earn it. Respect can come in the form of money, but any one form of respect can get negated if the others are lacking. It sounds egocentric to type it out, but I think that's what we really want at the end of the day.
If your immediate peers are great, but the organization doesn't support your getting training, makes you dress up, makes you keep timesheets, requires TPS reports and long meetings, etc, those decisions are being made by people. And they are being annoying (even if they're otherwise nice).
The important thing to take out of the job satisfaction discussion is that if you enjoy doing the work (and that includes the social aspects, such as communicating with people you rely on and those who rely on you) and you are learning, you are probably doing fine. A four-legged coffee table, or eight-legged spider, metaphor isn't really necessary.
Stability, in my opinion, is overrated. The risk of losing one's career is rarely worth taking, but job volatility is, as long as it's fairly compensated, fine. I'd much rather have the job-vol of startups or finance than the long-term risk of career ruin involved in late-stage academia.