I have been working as a software developer for over 1.5 years now. Over this time I have changed jobs twice and I am currently in my 3rd job. The problem is that, in all of my jobs, I quickly start to develop negative mentality regarding work, bosses etc. I understand that no job is perfect, and in fields like IT there is always some pressure of deadlines, bugs etc. But still I start to focus too much on negatives and get demotivated, only to eventually quit and find another job, and the cycle goes on.
For instance, in my previous jobs, there have been some instances where my boss was not happy with my work and said something to me in passive aggressive tone, or he asked me to work on a weekend (paid) to fulfill some deadline when I was too tired. Such situations were not very common in my past companies but sometimes they did come up.
Whenever something like this happened, I started to develop negativity and lose motivation for my job, and start to feel like being exploited and eventually I quit. Though I understand that no job is perfect and such situations come up in every job, but I am not able to forget/ignore such things and suck it up to keep working like most people do.
One of the reason that I developed this mentality is that, since childhood, I have always lived in restrictive south Asian household. My parents have been controlling throughout my childhood and I didn't like it at all. Due to this reason, I associate the passive aggressive tone of boss and his demand to take some extra work, work on some weekend as someone trying to control and exploit me which I am not able to handle due to past experiences.
How to handle this internal fight in my mind, ignore work pressure of my jobs and bosses, and suck it up to keep working like most people do?