I left my previous job because there was an abusive boss and lots of shady shit going on, but i didn't want to take "any" job, i wanted to work at a place with colleagues who cared about engineering things that were really good.
My new job with a vaguely hip European unicorn seemed like it'd be that place. I thought i'd get the European startup experience here in China. But, as it turned out, most of my colleagues did not apply to work at a European startup. They were working at the Chinese megacorp that bought the European startup, then got transferred over to work in an outsourcing arrangement. Many have opted to come on full time because they like working 40 hours and getting 4 weeks of holiday each year, but it still creates a mindset gap between them and the people who applied through our standard interview process.
The issue i have been facing is how to bring a passion for building great software to a team that is both culturally (as in company culture, not ethnic culture) and linguistically separated from the rest of the company. While the engineers in Europe go to conferences and contribute to open source and gladly tackle some really tough technical problems, people here just do whatever the boss tells them to do, and that's the end.
My team is under a manager who has never managed before, and his manager who is completely set in that outsource-y project management way of doing things. That is, the only thing that matters is the goals and deadlines set by the product team, and if an employee does not spend 100% of their time appearing to work to achieve those goals, then they are a poor return on investment.
Now, i get we are not running a daycare, and it's important for employees to generate revenue. But we are a fucking tech unicorn, owned by a Chinese megacorp with a 20 billion dollar market cap on the NASDAQ. We're not gonna fail if the cheapest 10% of the engineering staff takes the time to build good systems to underpin their features.
Anyway, unlike my colleagues, i challenged management on their waffling. I told them i wanted to solve hard technical problems and get an awesome product out the door, not sit in meetings tossing around a hot potato. I spent the last couple months building a piece of infrastructure that will not only enable our own features, but help other teams to deliver on theirs as well.
So it really chafed to be told that even though i am contributing to the company outside the team, i am not pulling my weight on my own team's business goals. The reason my management chain sees it this way is because they have spent months arguing with another management chain over who should own the core engineering work for our features. No manager wanted their team to take responsiblity for the foundational work, so now they're blaming me and some other engineers for independently doing work that the managers are still trying to palm off on one other. It's ridiculous.
The good news is that there is an internal mobility policy in the company, so a few months ago i said i'd like to get the ball rolling on that. Management gave me a month to see if they could change things for the better, and they didn't, so then i gave them a month to plan the transition.
Because they are a useless management chain, i was forbidden from speaking to my colleagues about it. So my teammates all found out on Friday afternoon that Monday i will be rotated onto a different team. I feel bad, but what can you do?
The team i am moving to is - thankfully - not building a brand new product, so they have a huge backlog of bugs and technical debt and bullshit to solve. There is no hot potato to toss around. There is a fucking potato avalanche and they need engineers who will roll up their sleeves and start making french fries. That's something i want to do. That's something i can do. It might not be exciting or glamorous work, but at least it's work.
This experience has only made me even more convinced that building new products is not for me. I am supremely not interested in the politics around "innovation" in large companies. All that posturing to get allocated resources or trying to slice and dice features to fit into business units instead of finding the right technical solution, it's such a wank. I now know i will never get a job above line management. The moment people start talking about their colleagues as return on investment, i'm out. Fuck that capitalist shit.
At least if you are working maintenance or repair you get to solve real problems, usually left by the last round of "innovators" and their minions who made a hash of it all.
Talking about this has somehow made me hungry.