I joined a company on a short-term contract, "for a month or two", to help out a friend and solve a few problems. Which became a four year engagement.

I became "the go to guy" for anything and everything related to a particular project, and the DevOps for that project, and eventually the DevOps+CI/CD guy company wide. But I also had to work on an assigned project as Lead Programmer, but never got any other programmer assigned to work with me.

I shipped two company critical products by myself, front-end, iOS & Android mobile app and backend infrastructure. I made significant contributions in the form of code to other teams, I ensured the company wide build-systems kept humming along and was 24/7 on-call DevOps for two years straight with no backup. At one point I literally had five separate managers that I reported directly too that each had their own competing needs.

Every couple of months I had a conversation with a higher up, and every couple of months I was told "there's no budget, it's difficult to hire, you do it so well, and we don't trust anybody else to do it, and nobody else wants to do it."

There was no promotion, no prospect of advancing, didn't receive a single pay increase in four years, "but you're so well paid already, there's just not the budget for that this year, we see you as more of a cost center than a profit center." And every time I was ready to quit, a few "friends" at the company talked me down off the ledge, who I later learned were being prompted to do that by upper management. It was a classic abusive relationship. I realize that now. And I fell for it.

When I started to have issues with shipping a product as both the Lead Programmer (mobile apps, fron-end, admin interface, backend infrastructure and API) and also be project manager and interface directly with a demanding client, including doing on-call 24/7 DevOps with no backup, and wrangling the company-wide CI/CD system, the project I was building, that should have been a five person team in reality, I was assigned a "tough manager" to set me straight and get me back on track. This was literally the conversation I had when the manager sat me down in a conference room, "I'm here to make sure you do what you need. I'm giving you some tough love. And I'm going to ride your arse until I see improvement." Now this manager was not the project manager, he was specifically assigned to manage my output, and after a month he went back to the execs and said "Justin isn't the problem."

This manager put up signs at the end of the cubicle row that said "If you need to speak with Justin, talk to X first." And people would ignore the posted signs, ignore that I had headphones on, and still interrupt me, and then my Manager and whoever was interrupting would get into an argument, right at my desk, over how urgent their request was. I eventually got moved out of that area to a "quieter area" near the IT guy, which unfortunately meant then people would come by his desk and have loud conversations about an IT issue, and when the IT guy wasn't around, would interrupt me to ask if I knew about how to solve problem X on their computer.

When the stress is so bad, and I have an outburst where I am screaming at my tech director to go fuck himself in the middle of the hallway, and they still won't fire me, an outburst I am not proud of and would never ordinarily do (I'm kind of a Mr Rogers & Ted Lasso until you hit the wrong button), you kind of get the idea of how indispensable they viewed my position. The outburst was over five people having a meeting directly at my desk, that didn't actually involve me, that was very loud and racous, and when I repeatedly and politely asked them to move their meeting elsewhere I was informed that I need to be more understanding and empathetic towards people's needs.

Coronavirus came along, everbody gets to WFH, which gives me breathing room to think, I start looking for a new position, the company hits a financial tough spot and decides they can do without me, which is like a great weight that lifted from my shoulders. I took three months off and built a few side-projects and was so much more productive than I had ever been in the past four years. https://www.linkedin.com/pulse/three-months-side-projects-ju...

I was still getting messages and urgent emails from people at the company four to six months later, on an almost daily basis regarding the DevOps and CI/CD pipeline. Everything had been documented, nobody wanted to read, it was easier to send me an email even though I no longer worked at the company.

I used to love being "the go to guy" but I've since learned, "don't ever be indispensable."

Unfortunately, history repeated itself at the following company, and is starting to repeat again. Maybe I'm the problem.