I am thinking about finding a position at another company. But I am concerned about how to find something suitable. I am considering moving because I would like to work and learn at a company that practices better code quality: better separations of concerns, better testing. I've learned recently that code quality corresponds closely not only to speed of development, developer happiness, but, also stress. I don't know though how I would know about code quality from the interview process. I can imagine maybe asking multiple engineers from the company what they think during the interview process. Maybe ask engineers that I've worked with before from the company. Also, some companies may be reputable like Google. Or maybe some famous engineers work there like ThoughtWorks.
I am currently a Staff Engineer at a company, and I've worked for almost 6 years there. I've also been promoted at the company. I think there are factors that are important for me that keep me there. A flexible vacation policy that is actually flexible as I've usually taken about 5 weeks off a year, commitment to remote work, flexibility to set time off during workdays. On the other hand, even though I am one of the top committers to our code repository, I am not sure if I am getting credit for that here.
One thing that worked really well was that I started at this company when engineering was around 30-40 people. That meant work time was stable unlike an early startup, but the company was at an early enough stage that I really got to know a large portion of the code base, over multiple functional areas, before the code base kept growing and new teams were formed.
Regarding programming language / framework, I would prefer Scala. I also would like to learn ZIO. But I think that's secondary to the factor regarding code quality.
Could you give me advice as to how to search for jobs given the different factors that I've listed?