US silicon valley based opinion here. I think the above answers are great but I don't think they cover asking constructive questions instead.
I agree with Richard in not asking questions that people may be uncomfortable answering. Of course if no one seems to have good things to say take it as a red flag.
But for the companies that aren't clearly red flags it's more about the match between the two of you. All companies like all people have positive and negatives. I think it really depends on what you want to know / live with. What's important to you for you to be happy?
When you ask those questions try making them constructive, as if you're already on the team and trying to make your team more productive, happier, etc. For example when I'm interviewing I focus on wether I'm going to be able to change the things that aren't good for me. If something isn't working for me will I be encouraged to help improve the company and make it a better place to work for everyone. Is that kind of attitude welcome there.
For me a question like :
"What is the most negative thing you can name when you look at working
is far less important than
"What is a practice that you disagreed with (or something that bothered you)? Were you able to improve it? What resources did you have available to help ...?"
Did most of the previous developers leave because of working
What kinds of things do those who leave go on to do? Do you still keep in
touch? (gives you ideas about where you can go, what the culture is like)
Where else did you consider before choosing Company, why did
you make that choice? (it gives them a chance to sell the company but also talk about their other options)
I'm really passionate about X (ex hiring diversity, wine, your kids, etc), in fact I did Y (interview training, wine club, bring your kids to work day etc) at my last company. It was really Z. Do you have anything like that here?
Substitute in whatever it is that you want to know about. I think when selecting an employer it's less about what's not perfect but wether or not engaging in improving those things matter. At the end of the day both you and the company are going to change at least if you stay there for any period of time. Are they, the company going to respect your needs and wants and can you, the company, and your coworkers compromise.