Tired of sharing advice to management only for it to be ignored or shelved. I think too much and that’s hard to change. Career wise leadership position is hard to achieve since road to Team Lead, Head of Delivery and, of course, VP of Engineering and CTO is closed for non-developers (I’m a QA/ScrumMaster person). Even more, those position balance between business/owners/investor requests on how to manage
people resources. I’m tired, new job options are scarce (too experienced they say OR process is hell as current, so why bother). Seems like I need a break and switch to consulting or taxi driving?
I don’t quite understand why I want to write this (and about what in particular): to speak up, to find fellow sufferers and understand that we are not alone with our problem, to gain attention and likes, or it’s just Valium removing my shyness and anxiousness. But I know that I want to – so fuck it. It might actually be fun and useful exercise 🙂
I’m burnt out, struggling with sleep disorder, anxiety (walking in circles, getting out of bed at 2AM to scribble some work related thoughts to my Moleskine) and fatigue. I’ve took 4 days off during this month, because I couldn’t get up from bed and just said “fuck it”. I work in a good company with good understanding manager (I was always lucky with managers!) and I’m switching to 4 day work week for time being.
I’ve talked with 4 programmers going on mental health leave in the last 6 months & dealt with 1 suicide on my team & nobody talks about it
— Kent Beck (@KentBeck) August 27, 2016
For last 5 years, especially last 2, I have moments when I’m already in bed trying to fall asleep for hour or two and then some work related thoughts pop up and I scribble them to phone or notepad. Thoughts for possible conference talk or some idea to share/apply at work. I just can’t leave the office and leave work there. Work is everywhere with me.
During last months it got worse as minor thoughts of work (and certain people there) raise my heartbeat to 100 and I start WTFking (there are a dozen great people too! it’s not all bad). It sucks. Insomnia gets worse, I know that other places are no better and here I am prescribed Valium, because this stress and sleep deprivation (supposedly) cause tinnitus which I have now.
And I want to speak about it.
Burning out sucks. Especially when it feel that you’ve been in stress for a better part of your career. It seems that anxiety and stress are just natural in software development. But I don’t want to die from a hear attack, stress induced cancer or simply go mental.
Usually when when we hear burn out, we think of a person sitting long hours in office doing hard cognitive work without proper rest. A developer, a reporter, a lawyer, a scientist, a doctor.
As I work in IT and mostly IT people will read this – burn out also might come from additional pet projects after work, volunteer open source work , not only long office hours.
I think burn out also comes from toxic environments. Toxic doesn’t only mean abusive or hostile. Nice and kind environments can be toxic too – people grin fucking you or people saying empty hollow words causing important issues staying unresolved for too long causing pain. For last 3 year most people I know left because they were fed up with situation at work, not because of salary. They get fed up, leave, get fed up and leave again. Of course, there’s plenty, if not most, people who are zen like and just work. I can’t say they don’t care, but they for sure are passive in organizational problem solving.
Meaningless or poorly organized work is definitely a toxic environment too. You can read more here how to achieve great results, of course watch this famous video and probably read Re-work too (I still didn’t). Several fellow devs quit recently because they found their job meaningless, not seing results when they put a lot of effort into something that simply is not delivered.
People working on something they know is incorrect and broken from very beginning, something that will never go to production or something that will definitely need scrapping and rewriting – it’s a toxic environment (unless you’re there for a salary check only).
So you don’t need to spend long hours and weekends in office, but still manage to burn everything inside of your brain and soul. I’m one of them and it didn’t happen over night.
As you could read from Who is Agile interview I mentioned above (very first link), I always think in “Plan A, B, C. What happens if…“. It’s really cool for being a good tester. It’s bad for being a good in a company of friends – you often will dismiss, refute and prove something wrong. Friends always say – you know how to ruin a joke or a dream. ¯\_(ツ)_/¯ it’s me. Lucky I have good friends who share my dark sense of humor.
I think as time goes such “what if…” behavior causes anxiety disorder, insomnia, depression. That’s a dangerous nature. Unfortunately I didn’t learn how to keep it under control and I know that I feel bad and empty when I ignore these “ifs”.
James Bach – one of the gurus of software testing wrote in his Buccaneer Scholar book that if you have interest in computers but feel suffering from attention deficit disorder – see it as endless curiosity and go to software testing. Again, wandering mind, anxious mind, what if… questioning.
I studied IT systems development, but programming micro controllers in C wasn’t fun at all, algorithms were boring for me. What’s the point if there’s a library for sorting arrays and I for sure don’t want to turn LEDs on and off. Bigger J2EE programs were fun, but I was bad at debugging, not attentive and not calm. It was too much effort to achieve something I found acceptable. I’ve spent one New Year’s Eve writing this J2EE project in university – that’s how committed I was.
Systems analysis, requirements gathering, good documentation, scripting – that was fun and it seemed there were about 5 people out of 100 who enjoyed this more than code. I learned about testing and started looking for a testing job. My test task was “spectacular” and instead of summer internship I was hired right away. All thanks to curiosity, “what if…” attitude, knowing linux, writing this linux blog and reading plenty of linux manuals and wikis.
From 9,5 years in IT, 7 years are in testing. My last two jobs were Quality Lead and Test Architect.
Testing as an anxiety amplifier
Testing is hard – often you are a second class citizen. Literally, in Skype you were one level below regarding stock options and so I never got any. Often developers see you as inferior developer who never mastered the skill, although it’s getting better.
I can’t believe I wrote that. I’ve met many wonderful testers since then who love being great testers and take pride in their work. https://t.co/lpTEcMPJaR
— Joel Spolsky (@spolsky) September 28, 2016
Still, often testers will be blamed for bugs in production. Rarely someone will ask why developers introduced the bug, why code-analysis tools didn’t catch it (or why there are no such tools in the first place), why there are no automated checks for this. Testers are often scapegoats, testers are always threatened to be automated away or pushed to write automation.
It’s hard to be a well educated tester – it’s like an endless war against total incompetency about impossibility of complete testing (pdf 1, pdf 2 (figures are in the end of the pdf)), misuse of unit tests and coverage (pdf); against desire to automate everything as if it will solve all problems, catch all bugs all the time and won’t need endless hours supporting the suite. I’m saying that a test manager is one of hardest and in my opinion often useless jobs (because you have no power on things you are responsible from and expectations are completely off towards your job).
Knowledge brings disappointment
As you grow to learn more – about software development process, agile, scrum, testing, architecture – it’s getting harder to ignore the problems you see in teams. I was lucky to meet really smart people during my 9,5 year career, get to lots of trainings. Most of these in first 5 years actually (thanks Skype!). As my colleagues joked once before one training – be careful, knowing too much will bring disappointment and sadness. Indeed, Woe from Wit.
I was burn out several times. Both times I was fighting managers 15+ years senior of me, one time as a ScrumMaster, one time as just a tester/quality engineer. They both ignored my warnings and teams fell apart, people were leaving, managers got fired or appalled in some way. If only they would listen… I took it personally – I told you! Why didn’t you listen! Why did you destroy great teams! Great things were not done, great teams fell apart.
It’s a pattern
So what’s wrong in many places?
Pieter Hintjens summed up (it’s a fantastic read, spare some evening and read it. Also support his family by buying some books or make a donation. He’s very ill) something up nicely for me :
It took me decades to realize that technology is a slave to personality. It doesn’t matter how good the design, when there are unresolved problems in the organization.
And so gradually I shifted from technical architect to social architect. From caring about technical designs to caring about people and the psychology that drives them. Because in the end, this is what seems to make the difference between a working project and a failure.
Same topic covered by legendary Jerry Weinberg
No matter how it looks at first, it’s always a people problem
Same learned from Jim Coplien
(scrum) is about people, it’s about finding a human inside you
It’s all about people. People who hide issues in automobile safety systems. It’s people who force long hours and poor coding standards. It’s people creating political webs. It’s people who plan work as if Fred Brooks never wrote The Mythical Man-Month, as if Scrum Patterns never existed to clarify Scrum principles.
I won’t even speak about requirements ambiguity and miscommunication on meetings, don’t get me started 🙂 But I do recommend going to a Crucial Conversations (Microsoft provides one for its employees for free) and Spec by Example training.
So what’s my point?
My point is that you can burn out by working in an inefficient environment without long hours. Constant miscommunication, re-work, slipping deadlines and no releases can cause burn out.
People who ignore proven advise (if a book can be cited a proven source that is) and organize poor working conditions, even when you have snacks, fruits and masserus on site – it can cause burn out.
Knowing too much, seeing problems, warning about them and making suggestions only to be ignored and commenting “told you so!” some time later – that can cause burn out too. Some people even get blamed “well you didn’t try hard enough to convince us!”.
How to you fight collective stubbornes and ignorance? How do you influence your boss to move into right direction? How do you avoid subordination conflict?
Where do we go from here?
Reality is that:
- there’s no perfect company and it’s always a compromise
- most smaller companies suffer from same issues and owners don’t want to learn
- that one good company might be too far away in a place you don’t want to move to
- you lack skills to join that good company (you’re a PHP dev, they do C++; you’re a tester, they hire only devs)
- they are already good and don’t need your advise and knowledge
- your attitude and previous stubborn bosses might label you as a trouble maker and close many doors for you
People suggest taking a gap year (which I’m actually considering) or changing jobs (but are Uber drivers less anxious and more happy?). But what after a gap year? Same shit?
I visited a psychologist our company provides. My first psychologist visit actually. It was so bad, I thought “well it would be a nice moment to shot ones self in the head right hear at the door”.
I was looking forward some advice on how to ignore some disturbing situations, how to hold back negative feelings, how to self control better and keep work thought away in the evening, how to care less. There is no such pill or exercise 😦
On the contrary I was advised to not hold the anger, express it (can I hit someone in office now? or act like this on a meeting? ), go to boxing or start a punk rock band. It’s right and ridiculous at same time. Quite hard when you’re very exhausted. I don’t want to become as aggressive as James Bach is now, but silence is not an option too.
Speaking out is hard. One of my e-mails last week refuting “complete testing and catching all bugs” was deemed inapropriate and I was asked to refer to my boss before sending such company wide e-mails. When everyone including janitor thinks you’re (tester, test architect) is a quality bringer – how more can you tolerate this? All information I can provide is – we’re very screwed alright. My next e-mail remained censored and unsent, althouhgt I voiced it at a meeting and everyone liked the thought.
I was kicked out of a team once for speaking out (but there were other stupid mistakes in the game too).
As I grow more knowledgeable about software development, about communication with business stakeholders and engineers, the more I see the need to coach people, to be social glue, fixer, flashlight pointing to obstacles and an encyclopedia pointing to possible solutions (kudos to my boss, who in part actually hired me as an encyclopedia artifact!).
ATM several colleagues salute me for glueing business speak and engineering speak, for noting important social architecture issues, process issues and speaking up about them. I’m bringing value. Interesting part is that it comes at price of my main job and I like this new role better (what is this role actually? Meetings fairy? Agile Coach? Social Architect?)
But for fucks sake, how energy consuming it is. For how long can and should one wait for change to happen, for people not only to acknowledge what is right, but to do this right. How not to give in into anxiety and hopelessness. That I don’t know. I envy people who can calmly wait for months as if it’s business as usual.
Quitting is a really bad option the more senior and smarter you become – the harder it’s to get a job (my last job search was mostly rejection by “too experienced for this position”). Especially with testing background, because Head of Delivery, VP of Engineering and CTO require great coding skill even though quite often they are in the past for many of them.
So how does one help build great teams and products if he is not a Head of Delivery, a CTO or a team lead? How does one not burn out? How does one stop quitting and starts helping build an atmosphere where people can achieve something?
Consulting? Starting own business working for same
insane unaware clients? Start a startup working for a VC ? Start own business… when you’re burn out?
PS writing this I feel like Pieter Hintjens said “finding myself on the wrong side of history”.