I try to understand what the real problems are, and if there is the will to fix them. Then I try to understand the real social hierarchy and everyone's biases.
In the last two jobs I've started, both had serious problems from using an ORM framework and dependency injection framework incorrectly. In one company, the project ended up going nowhere because of incorrect biases towards using a database. In the other company, everyone knew that if they didn't fix the problem, they'd go out of business.
I left the company that didn't want to fix its code, and still work at the company that fixed its ORM and dependency injection problems.
[Edit] The project that went nowhere failed because the lead programmers didn't know how to use a database. They wrapped it with layers of frameworks and code generators. The layers took so much time to work with that the schedule dragged out, and we missed our market opportunity. There was no will to fix the real problems, so ultimately I knew I had no future at the company.
In the last two jobs I've started, both had serious problems from using an ORM framework and dependency injection framework incorrectly. In one company, the project ended up going nowhere because of incorrect biases towards using a database. In the other company, everyone knew that if they didn't fix the problem, they'd go out of business.
I left the company that didn't want to fix its code, and still work at the company that fixed its ORM and dependency injection problems.
[Edit] The project that went nowhere failed because the lead programmers didn't know how to use a database. They wrapped it with layers of frameworks and code generators. The layers took so much time to work with that the schedule dragged out, and we missed our market opportunity. There was no will to fix the real problems, so ultimately I knew I had no future at the company.