I guess internal: wanting to do a good job, wanting to earn more money, wanting a bit more responsibility (moving beyond being just a developer and starting to pick up more leadership stuff).
External: hard deadlines signed by commercial side of the business, lots of pressure to meet them regardless of the how, not just from my boss but from the business stakeholders who often went against my boss as well.
So if the main factor were external, then I guess switching to a new job was the right decision! For the internal, I think most of us want to do a good job. In the end, you do not owe them more than the hours you signed in your contract :)