I've been a software engineer in India for 8 years, working with reputed companies. My previous company (A) was an Indian startup that grew significantly during my 5-year tenure there. I learned quickly as a junior and mid-level engineer, often handling urgent issues. Despite frequent deployment failures, it never hindered our release pace. However, after 5 years, I felt burned out due to poor work-life balance, especially after getting married, and the pay wasn't competitive.
I moved to my current company (B) about 2.5 years ago, drawn by a 100% salary hike, better work-life balance, and excellent perks. But I soon noticed a strong cultural shift. The engineering quality at B is not on par with A, and their systems are less mature despite being in the same domain. I saw this as a chance to improve B's systems using my experience, but progress was slow. The company seemed more focused on appearing as tech leaders rather than actual tech innovation.
Initially, I had a supportive manager, but my feedback on engineering practices and processes led to tension. Over time, my manager avoided interactions with me. Now, the team dynamics are strained. Juniors respect me, but peers and seniors, even recent joiners, view me negatively, questioning my teamwork. Bureaucratic politics from new tech leads and senior managers, who came from the same previous team, add to the problem. My manager, caught in this new dynamic, no longer supports me and avoids our 1:1s due to their negative nature, although she now wants to rebuild our relationship as she claims that she has reflected over it after she got a break from everything after few weeks' of leaves.
The toxic environment has pushed me to prepare for other opportunities, though it's made me wary of company cultures. I don't want to join startups due to their poor work-life balance, but I seek a role where I can spend 60% of my day learning valuable tech skills without unnecessary politics. The office environment has turned very hostile for me where anything I try to say gets taken in negative light. This is affecting my mental health, but I'm trying to stay here until July for my stock vesting.
I'm struggling to stay hopeful about the software industry and would appreciate any encouragement. Thanks!
July seems doable, it’s June. Maybe it’s the last day of July, but hopefully you can tough it out. If you do get a new opportunity ideally you can set your start date to the day after vested shares are in your account, so you see the light at the end of the tunnel.
The rest of this is a lot more complex. It seems like you came in with what may have been reasonable suggestions, but hadn’t established trust, and maybe weren’t delicate in your suggestions. This set you up as negative and critical rather than positive and helpful. Maybe your approach was really delicate and folk still got defensive. Either way, it’s a chance to learn, and you can consider how to balance proactively making helpful changes and bring viewed as a know-it-all or negative/confrontational.
It seems like your manager does want to rebuild, but you are putting the responsibility for the strain on your relationship on her. You are going to need to be ready to accept responsibility for your part if it’s going to improve.
Regardless, if you think you’re done, I’d still try to make amends with your manager if only to get experience doing that.
The “Goldilocks” company that has great work life balance, deep learning opportunities, no politics, and good pay is simply difficult to find. You may need to rank these, and develop strategies for learning about your highest priority items.
Sorry to hear this - I've been there too. The simple fact of the matter is that most engineering teams are bad. A lot of people go into tech for the wrong reasons (often clout/money), and even for people doing it for the right reasons, it's just extremely hard to run a healthy engineering organization overall. It's extra brutal when a good team becomes bad.
This is life, but at the end of the day, you have the choice to leave. If a team goes bad, try your best to fix it, and if you can't, just leave. In the meantime, you can help craft the world that you want to live in. The bright side is that the junior engineers respect you - Share as much of your wisdom and empathy with them as you can before you go. My mentality is to always strive to make the world a better place, 1 act of kindness at a time.
For advice on choosing a good team: [Taro Top 10] How To Find A Good Engineering Team And Company
For switching jobs: [Course] Ace Your Tech Interview And Get A Job As A Software Engineer