So, as of this year I have been able to say I've worked in information technology for about 20 years. I've had nine different employers and at least 21 different bosses. We truly do not live in the one-career, one-employer environment of past eras, particularly in the technology fields. Given my experience, I've formed some opinions about what kind of employer I value. Maybe this will help you set priorities in your own job search, or think about what kind of employer you want to be.
The best employers have had gender, racial, cultural and disability diversity in management. As anyone in an underrepresented group will tell you, diversity is nice but what I really want to see is some people who look like me. If you want to hire a broad range of people, don't expect one underrepresented group to stand in for all of them. I tried to bring this up at a previous employer in a conversation in how they had dropped scholarships for warehouse employees, and how that closed a career path into IT positions for people at a financial disadvantage, and the response was inexplicably, "well we're doing pretty well for the number of women."
The worst employers have accepted sexism (and all of the other isms) as "it's too bad, but that's just how it is." Gaslighting and unconscious bias were not recognized as real things. At the worst place I ever worked, the CEO quietly cancelled his personal "Welcome, new employee" meeting with every new female employee, while still meeting with the new guys. Not coincidentally, there were zero women in management. At the same place I was jolted out of my programming zone by a coworker in the next cubicle exclaiming "The strippers at that place would do ANYTHING for $5." If I have to explain to you why that's not a fun place for a female to work, well, I'm not sure I can help you.
The best employers have not been obsessed with their stock price. I worked at one large company, which was in many respects a great place to work, but that posted the stock price at the security desk when you walked in in the morning. Everyone's mood seemed to hinge on the stock price. Your boss might be in a bad mood because yesterday he thought retirement was 7 years off but because of the stock price, now he thinks it's more like 10. Not to mention that being beholden to stockholders is problematic in itself, which is why I'm very interested in the emergence of B Corporations in recent years.
The best employers have created something I could be proud of. The two best jobs I've ever had have been where we created something I truly believed did a net good in the world. One was a company that created software for libraries, in the years where people were murmuring that "libraries are being obsoleted by the internet." I felt we were part of continuing the value of libraries, which are still a source of quality information in a sea of unverifiable blogs <cough, cough>. The other is the work I do for my current client, which is a nonprofit with a mission to "empower communities with software for social good."
The worst employers had no respect for their customers. At my least favorite employer, the web site manager wanted to put up an ad for our products that would display for several seconds, delaying search results whenever someone came to our site to search for help. For an error with our software.
The best employers understood that people have lives outside of work, and those lives may be none of their business. I had an interview with a Fortune 25 company where they said something to me along the lines of "We feel we are hiring the whole person here. We want to know about the things you do outside of work." This set off alarm bells for me. By that time I'd been trained in the Human Resources department perspective on interview rules, and the overriding rule for whether a question is appropriate is, "Does this have a bearing on your work?" Hence, you can ask "Do you think you'll be able to get to work on time and put in 50 hours a week," but you cannot ask "So... are you planning on getting pregnant?" While it's nice to find out someone you work with shares your hobbies and also nice to make friends at work, neither one of those things is necessary to be productive together.
The best employers had humble coworkers who had some sources of satisfaction in and out of work. If you dream of working for a major, famous-name technology company, you may be setting yourself up for a life among obsessive, hyper-competitive coworkers. And, as you meet more people over the course of your career, you will realize that the people who are the best at their jobs may not necessarily be the most competitive or choose to work for Fortune 50 companies. They simply have different values. If you choose to work somewhere where your work is expected to be your life, you may realize at some point that you have nothing else. If work is going poorly, everything is going poorly. And you can't always control what happens at work. Economies buckle, the best boss you've ever had gets promoted or headhunted, companies get bought out, and technologies become obsoleted.
On the other hand, your coworkers should find at least some satisfaction in their jobs. People who hate every bit of their jobs are not much fun to work with. I've worked with people who chose a career in IT solely because they thought it was a secure career that would make them a comfortable living, and slogged bitterly through every day of the job. There is a lot to be passionate about in the technology fields; the advances made in information technology are are changing the world works. But if you hate the constant change and need to self-educate, or debugging maddeningly and unforgivingly complex systems, there are lots of other careers that will bring you more joy.
The worst employers had open floor plans or made developers work in "bullpens". There is a great and growing amount of evidence that open floor plans are bad for productivity, professional relationships, and employee health. But they're cheaper than giving everyone their own office or cubicle.
The best employers would help you get what you need to be efficient at your job, even if it meant recognizing that workers are not identical, interchangable components. Some workers need quiet. Some need some social interaction. Some are more productive if they can work a "second shift" schedule rather than starting at 8:00 AM. Other people are actually experiencing reality differently than you are; they are not simply being neurotic and whiny. If you don't have the imagination to put yourself in their shoes, at least recognize that not everyone experiences life the way you do.
I think that a common thread here is that good employers treat their employees with respect, as individuals. And, there may be some spillover from a company's purpose and values to how it treats its employees. When the purpose of an organization is to do good in the world, it's harder to take a cynical attitude towards how you treat your employees.