If things are properly planned generally you should experience very little stress in day to day work.
Maximum stress to be tolerated
At worse you should feel stress only when something unpredictable goes to hell. (Building fire, infrastructure failure, unusual loss on work hours due to sickness, etc.) The sort of stuff that no one could reasonably predict. In these cases sometimes you have to step up to overcome the disruption, other times it calls for stepping back and adjusting plans accordingly. These events should be rare.
If you feel any level of stress consistently or extremely stressed at any point THERE IS A PROBLEM! These kinds of stress will literally take years off your life and be a huge detriment to both your personal productivity and quality of life. perpetual stress causes depression, irritability, heart disease, etc. Huge spikes in stress can cause heart attack, stroke, ulcers, etc. If Programming ever triggers an Adeline rush or fight or flight reflex, you should strongly consider changing employers immediately.
There are many common stressors at the work place, most of these stressors are related to the following.
- Lack of confidence in being able to properly accomplish a task
- Lack of autonomy
- Hostile working conditions
There are countless individual stressors, but ultimately most are just sub items in the above mentioned.
Lack of confidence
The primary causes for lack of confidence as personal competency in the required skills, unrealistic deadlines, incomplete planning, poor planning, etc.
These boil down to two issues that need to be addressed...
First, your confidence. If you lack reasonable competency to do your job YOU NEED TO FIX THIS! if you have the necessary skills but just think you're less capable than you really are you also need to fix this, but it's something that might require outside assistance.
Second, lousy planning. In my personal experience from the bottom of the IT food chain to Manager poor planning is the primary stressor in our industry.
Sometimes it's by design (hostage planning) as I call it. Rake the developers over the coals until they agree to an unreasonably ambitious deadline, because hey, people work harder when they think their neck is on the line...
Sometimes it's just a mistake. Forgetting some slow process will be needed, constantly shift directions as "priorities change", planning a big rollout right before a holiday weekend, etc.
Fact is, while hostage planning gets things done, at also gets them done poorly with a higher bug count and more technical debt. Mistakes in planning happen, typically in proper planning you have some cushion time to mitigate mistakes, but it's not always enough, these are the only times stress should reasonably sneak in.
(You can choose whatever planning methodologies work for you and your company waterfall, agile scrum, agile lean, etc. They all can be done relatively stress free. I'm partial towards agile lean.)
Lack of Autonomy
Want to get stressed out fast? have your boss dictate how you do your work, as you work, and constantly visit your desk day in and out for updates.
You're a professional who's been hired for your technical knowledge and abilities, anything that gets in your way is your enemy and stresses you out. A good boss gets you what you need to do your job and has set times (usually a daily or weekly meeting) to check where things are. A terrible boss doesn't let you decide how to implement something and instead just says "you'll do it like this". This lack of autonomy makes you feel like your skills are wasted and creates needless stress that ultimately hinders productivity.
While you can influence autonomy, your boss (and their boss) are the ones who'll determine how much or how little freedom you have to get work done properly.
Hostile working conditions
Not much to explain here, if there is the looming threat of being fired, hostility, sexist, racist, etc behavior it's going to stress you out, and in many cases this behavior is illegal.