Get a good chair that forces you to sit up straight. Fighting back pain while you're coding makes you less effective and makes you miserable. I didn't want to spend over $600 on a fancy chair so I use a pillow to better prop up my back. Its cheap and easy!
Position your monitor so that you don't have to move your head or your back to see what is on screen. As a rule of thumb ergonomics experts recommend that your monitor should be at arms length away from you at most. This will prevent your from hunching over to see what's on screen and will decrease your risk of eye strain.
I made my desktop stand out of wood and it was super easy to to make. You can also use some old textbooks or shoe boxes if you want to make your own stand.
Ergonomics Expert Explains How to Set Up Your Desk
If you program best in the morning when you can hear the birds chirping then program in the morning. If you program best at midnight when no one is awake then program at midnight. The quality of your code will dramatically increase when you're in the zone and you will write code even faster than usual. I write my best code in the early morning after a cup of coffee and writing my goals for the day.
Having some level of background noise helps stimulate your brain to focus as long as that background noise isn't distracting. I find that listening to Lofi, game soundtracks, or nature ambience helps me stay in the zone longer and keeps me from getting bored. Somedays when I didn't get enough sleep or want some company coding in a coffee shop provides me with energy to code. That being said I usually lose my ability to focus after 3 or more hours at which point I head back to my quiet home office.
Being overly stressed diminishes your brain's ability to execute flexible problem solving. I notice that when I get too stressed I can't visualize solutions and get locked into a single solution. Taking some time to relax and get my mind off the problem allows me to come back with a fresh perspective. That being said a little stress is good to motivate you because it adds some stakes to your programming. You don't want to disappoint your co-workers with bad code so that stress will motivate you to write better code.
A sheet of paper is great place to offload ideas, visualize programming problems, and break large tasks into subtasks. I find that having a notepad where I can write anything without worrying about organization takes the pressure off myself to write perfect. You should use the paper/notepad as a place to quickly offload thoughts and ideas. It doesn't need to be organized it's just temporary storage for your thought process.