POV: You are a software engineer in a toxic workplace.

POV: You are a software engineer in a toxic workplace.

And you need to get the f*** out.

Toxicity means something that is harmful or unhealthy for you. Toxic food is bad for your digestive system, and toxic air is bad for your lungs. A toxic workplace is harmful to everything about you. Since you might spend most of your waking hours there, its effects touch every part of your life: your physical and mental health, your relationships, your view of business and ethics, and your sense of teamwork. Everything.

In this article, we will discuss the signs that can help you identify a toxic workplace. If you recognize these signs, it might be time to Get the F*** out.

I've worked in toxic workplaces before, and what I'm sharing here comes from my own experience. I've seen my mental health decline, friendships at work fade, my learning and growth stop, and my physical health hit rock bottom.

You are not allowed the time off you deserve.

My first job right out of college was as a Frontend Engineer at a bootstrapped startup in Pune, India. Just a few days into the role, it became clear the company was struggling. The CEO was running out of money to pay salaries, but my colleagues and I chose to stay. As some of the first employees, we were deeply invested in the company's success, even ready to sleep in the office if needed.

However, things took a turn for the worse. The CEO became increasingly paranoid, believing he needed to squeeze every bit of effort out of us to move faster. He started micromanaging our working hours, monitoring the length of our tea and smoking breaks, and even checking our LinkedIn profiles to see if we were looking for new jobs. We tolerated this for a while, understanding the pressures of a startup.

But then he introduced a new policy: "If you are taking a sick day, you must send a selfie in the morning where you should look sick." That was the limit.

When you give your all to a company, you expect something in return. You expect to be able to call it a day and take a break when you're burnt out. Taking a day off when you're sick is a basic right. And it's not just about being sick. I've seen workplaces where taking a vacation becomes the talk of the cubicles, where you're labeled as a slacker for needing time off.

These are the first signs that you should leave as soon as you get a chance. Your effort deserves respect and recognition, not suspicion and unreasonable demands. You should be treated as human who needs a break once in a while.

Everything feels like a competition.

Once, I was out of a job for three months. This was a significant challenge for me, as I had numerous responsibilities and couldn't afford even a month's expenses without a salary. Desperation drove me to accept any job I could find.

I ended up joining a service-based company in my hometown. Previously, I had worked with some excellent startups known for their positive work culture and management that promoted freedom and innovation. As soon as I started working at this new company, a sense of disgust ran down my spine seeing how tasks were handled.

There was a written rule that, at the end of each week, every employee had to post the number of Jira tickets they worked on in a public Slack channel. Engineers who did not meet a specific quota (say five tickets) were publicly called out with comments like, "You need to do better." Conversely, those who completed the most tickets received public praise: "Bravo 💪🏽."

/This policy bred contempt among team members. Instead of fostering collaboration, it encouraged competition. Engineers began to grab "easy tickets" from the backlog to inflate their numbers and earn a "bravo 💪🏽" from the boss. The break room became a place of resentment, where employees complained about colleagues who "stole" their tickets, leaving them with difficult tasks that could take a week to complete. This meant that by the end of the week, they would have nothing impressive to post on Slack.

This toxic environment destroyed team spirit and turned colleagues into adversaries, all for the sake of superficial metrics. It was a clear sign that the company's values and priorities were deeply flawed.

You learn nothing, John Snow.

In the same company I previously mentioned, the competition to finish as many Jira tickets as possible each week or sprint led to a troubling trend. Everyone gravitated towards the easiest tasks, avoiding any effort to learn something new or exciting. The minimal knowledge of writing basic functions and components in React was sufficient to get by.

The company did not promote learning or resource sharing among peers. There were no discussions on the latest trends and tools, no conversations about optimization, and no efforts to address technical debt. Instead, it was all about mindlessly writing suboptimal code to move tickets on the Jira board.

In contrast, I've worked at companies with vibrant cultures of continuous learning. These places encouraged regular discussions about new technologies and open-source libraries. Employees actively shared information and knowledge with each other, fostering growth and progress.

This is how you grow as an engineer. The day you leave your job, you should be more skilled and knowledgeable than you were on the day you joined. Striving to outgrow the requirements of your organization enables you to contribute more effectively to its growth in return.

You don't see the impact of your work.

Calling this environment toxic might seem a bit much because not all companies are the same. Some focus on creating products that customers actively use and share feedback on, while others work for clients where the impact of your work is more subtle.

But things really turn toxic when management keeps you out of key decisions, letting only a select few decide the company's direction. Even in service-based companies, where you build software for other businesses and have to meet client needs, there should at least be room for healthy discussions. Everyone should be able to share their ideas on making great software, even if it's something mundane that a customer service rep uses in a windowless office.

These discussions are important. They give everyone a sense of ownership and encourage innovation. Without them, the work environment becomes stagnant, and people start to feel disengaged and disillusioned.

This situation also teaches you two valuable skills that are crucial for your growth: communication and collaboration. You won't be writing code forever. At some point, you'll transition into a management role. To prepare for this, you need to learn these skills from your managers now. That's why it's essential to be included in both key and minor decisions.


For those just starting their careers, it's essential to recognize the signs of a supportive versus a stifling work environment. Aim to be in places that value your input, promote learning, and prepare you for future roles. After all, you won't be writing code forever; one day, you'll step into management shoes, and the skills you learn now will be your stepping stones to success.

In conclusion, whether you’re at a startup or a service-based company, strive to be part of a culture that values your contributions and helps you grow. Recognize when it’s time to move on, and never settle for an environment that doesn’t appreciate or develop your talents. Your career is a journey, and each step should take you closer to where you want to be.

Did you find this article valuable?

Support Dev Shekhawat by becoming a sponsor. Any amount is appreciated!