I worked at small Canadian companies, so I'm not sure if this answer will help. The best company I worked for was called Northern Lights. They are fantastic because they recognize that their staff are good at their jobs, and they gave us the autonomy and the support to do our jobs well.
The company is a career counseling organization founded on a philosophy that "every person is an expert of themselves and has the right to order their own lives". Unlike many other companies, Northern Lights is actually managed according to their company philosophy/mission. That philosophy carries over not only to the way clients are treated, but also to staff, and that's what makes the organization an amazing place to work. My job there was extremely stressful, but that was manageable because I was supported by an amazing team.
Their hiring process was incredibly tough, but once you were hired on, they trusted you to make good decisions. I knew it was a great place to work before I started simply because they have an incredible reputation among career counselors in the community where I worked.
In terms of deciding whether a company is a good place to work before you accept a job, I think the best thing to do is to really try to read between the lines during job interviews. No interviewer is going to come right out and tell you it's not a good place to be, but things like employers refusing to discuss salary (at an appropriate time) or refusing to put your offer in writing are big red flags in my mind.
Also try to find local people who work in the industry and ask their opinion. Again, you'll have to read between the lines; unless they know you well, they will not likely come right out and badmouth a company. People will be willing to say good things about great companies; those companies are the ones to target. The ones that they are more tight-lipped about may be ones to avoid.
Best of luck with your job search!