I love to code, but the pressure of work makes me dwindle both physically and mentally.<p>After lots of conscious effort, I’m back in a good physical and mental state trying to not let work take me down this year.<p>What tips would you give to someone to avoid getting drained by work and politics/human emotions?
Change jobs! Seriously. Nothing more invigorating than to face new challenges, tools and codebases and to get to know new people and new ways of working. It also costs energy but usually it makes you feel better at the end of a day rather than worse.
Regular exercise. Make your priority be health not work. Fit everything around that. Every day the goal is to get an hour of exercise in and hopefully some work. In my case the work actually improves.<p>Family and kids makes this more challenging but with clear communication and scheduling my partner and I can both make it work... with the odd chaotic off-cycle.
Here are the things that make the job less exhausting and more fun for me:<p>1. Knowing why I'm doing something.<p>2. Knowing what I'm going to do before doing it.<p>3. Having a plan before I start working on something.<p>4. Make sure the project you're working on has some structure and if you're working in a team, make sure everyone is on the same page.<p>Thinking about how your career should progress in the future also should make you enjoy work more, this is so it doesn't feel like what you're doing today is going to be what you're going to do forever, personally, not having that vision makes me depressed.<p>I personally believe most of the mental drain of knowledge work comes from the ambiguity and the fatigue that comes from not having good plans which in turn cause more mistakes, longer work hours and more stress.<p>Some people also talk about injecting new things into your work which is good, but I also think "mastery" is very fun and rewarding, mastering your test suite framework, your editor, your chosen programming language.
This wouldn't apply to everyone's circumstances, but I found it helpful to go for a walk away from the office in the middle of every day, weather permitting. (I worked in a city with interesting scenery; I'd eat lunch in 15 minutes, then wander around exploring for 45 minutes.) It was refreshing, and gave me perspective that there was a world outside of the office.
I've just started to do a worse job and using the time and energy savings on things that are fun.<p>I've been learning a lot of guitar (for the first time in years) during the work day with this method. I may even have a little band soon.
Try to inject something new into what you're doing. It might be mundane and repetitive but try to figure out something new which you can inject as a learning experience.
Identify where you are the problem. Most of us are oversensitive. I adopted an internal paradigm after many years of, "I am doing the best work I can here, if it isn't good enough, sack me". Give yourself a break, and make sure you aren't making yourself weary in part.<p>The other trick that helped me through the most difficult times was working with my hands outdoors. Over a 7 year period I landscaped my garden and built two sheds in my spare time. I'm pretty sure this was an antidote to looking after a saas.
Some tricks:<p>1. See this job as a stepping stone to the next great opportunity and so you’re not working but taking this as an opportunity to learn a new skill<p>2. Not enjoying job can mean anxiety about the job, exercise / weights is good to kill the anxiety.<p>3. Try and get good at what you do and broaden and deepen your skill set so if this job falls through you can easily get the next one
In the same boat plus coding in work is not exactly exciting, which is fine.<p>I used holiday and vacation to do my own "pinball" projects (interesting side projects). I also tried to create mini pinball projects in work, such as small scripts to automate things or larger, slightly over complicated scripts to achieve larger targets.
Take a look at <a href="https://www.optimalwork.com/" rel="nofollow">https://www.optimalwork.com/</a><p>I have only completed the free trial and listened to some of the podcast so far, but some of the ideas like “reframing” are game changing.
If your employer has a volunteering program, participate.<p>If your employer does not have a volunteering program, consider starting one.<p>(or find an employer that does)
Care less. You won’t stress about your job if you don’t care about it. Your job is just a thing you have to do because of capitalism. Nothing to stress about if you succeed or fail. You do what you are required to do to get paid, and no more.<p>Get your satisfaction in life outside of your job.
Try to always build new stuff (instead of bugfixing) given an option and continuously move on to solve new and latest problems within or outside the company.
Work sucks. Unless you're a shot caller you're destined to be ground down to the bone via attrition. Work politics, non-sense meetings, code you have no passion for. Developers are still cost centers to be minimized. Professional code is rarely important, meaningful, or enlightening. Neither are the people you work with. Promotions rarely pay commensurate to the responsibility.<p>The trick is to stop caring so damn much. Your job doesn't need you no matter how good you are. There's 100,000 developers in another country ready to be contracted out to take your place once it becomes fiscally responsible for the company to do so. Keep this in mind at all times while at work. You are replaceable no matter what superlatives they assign to you. In fact, superlatives, 360 reviews, etc are all just carrots dangled in front of you to get you to take more on-call shifts, push yourself harder, skip holidays and meals, etc. They may not overtly indicate this but regardless of how "good" a company is these are fundamental. Paretos principle. 20% of the developers (the morons) do 80% of the work. Don't strive to be the 20%.<p>The solution? IMO, find some hobbies. Use 'em as excuses to never do extra. The ole "sorry I'm busy with <important thing>" trick. Dedicate the least amount of brain power to work that you can get away with. I often check out mentally for several hours at work. It's probably some kind of survival mechanism but I don't really hate showing up, coasting, and collecting a paycheck. My work still gets done and occasionally I'll even "take one for the team" to get a couple extra positive reviews. Gives me more energy to spend on things I like. It's honestly not my job. I do this at every job. In general, I am far happier not killing myself so the CEO can buy another ferrari. Let the bright eyed new grads learn the hard way.