2007 was the year I joined a product organization. It was among the Fortune 500. Its CEO was among the top 10 richest people in the world.

When I joined, I got a 2x salary hike. I was on cloud nine. But what really boosted my spirits was the fact that for the first time in my career, I would be on a mission to create something.

I had earned my place in a role to truly build something. And being able to build made me qualified to earn more than my servicing industry peers.

Three years ago, my peers mocked me for avoiding managerial promotions and bearing a heavy monetary loss. Now they envied me.

The product company dream life:

The product company was supposed to be free from the usual constraints of a 9–9 IT servicing organization.

And it indeed was — in the beginning.

We were building a CRM product. When I joined, the crucial components were already built. I was hired to maintain and enhance its business-UI bridging module. It was a high-quality C++ code built around COM architecture — Microsoft's flagship product in distributed computing. There was enough .Net already around, but the code size didn't qualify for a complete rewrite.

Besides, it was an acquired product. There was little willingness to break/rewrite that wasn't broken.

We weren't logging hours. Flextime felt obvious. The whole team had agreed upon that fact, including the manager. In fact, his calm attitude towards everything made it possible. A guy in his fifties, he had seen everything in the software industry. He never worried himself with minute work reportings, ticket updates, and team office hours. He never reviewed our code — that task was assigned to the principal developer within the team. However, sometimes he suggested quite revolutionary stuff — such as writing a new String class. And before we knew it, we found him writing it on the whiteboard.

All he knew was that he ran a team of highly competent and trustable individuals who could figure out solutions in transit, without the need to sit in front of a computer. For people issues (holidays or compensation), his doors were always open.

The team collaboration was minimal, but just enough. We met once a week to discuss tickets. Everybody understood each others' constraints and strengths.

Family time wasn't taxed. No one felt guilty for saying No to Friday beer parties, let alone late evening seating in the office.

I was living my dream. I didn't realize it was an unfulfilled dream of thousands of my peers, who were trying.

That dream went on until the 2008 market crash.

The product company fallacy:

The Fortune 500 company had to perform a heavy org restructuring to answer to its shareholders.

Yet, we weren't fired.

But the middle management got skinned. And our good-hearted manager got eaten up by this drive. He managed to save his job, but not the team leadership.

One of his peers who was handling a team now took charge of our team and the three neighboring teams.

What we witnessed was a massive leadership consolidation drive. The number of team members per manager went from 10 to 30. The teams that had the least number of tickets solved per month were acquired and began to be led by more performant leaders.

Some 3 months later, we realized it was a coup. Our new manager was a predator.

The org restructuring was an opportunity he seized to take over our cool-hearted manager's team. No one, absolutely no one, in the higher management realized that the lower number of tickets was attributed to the fact that our team worked on core features. We did not slice up our work into smaller, overestimated chunks.

Our let-devs-do-their-best manager was a bit lazy to update his estimates, which made him look like a heavily underperforming team lead who had a team that delivered stunningly extraordinary features.

No one realized the irony.

The product did fine as before. And it was making millions for the company.

But the culture began to turn around.

The new manager began to divide the newly acquired team. Often, we would see our junior colleagues having coffee with him. Every time seniors joined, their conversation seemed to diverge. An acqui-hire contractor guy was found in his cabin 3 hours every day. From the see-through door, we often saw them in closely huddled poses, never near a whiteboard or a computer screen.

There were no team meetings. But the workload distribution got haywire. Suddenly, senior devs got heavily buried under a truckload of tickets. They weren't complex in technical nature, but poorly defined stuff that required too much cross-team collaboration.

Often, developers had to attend late-night calls to escalate stuff with other teams. They entailed details that could be communicated in emails — something a manager was more suited to do.

The day of unhealthy appreciation:

One day, the manager called me in his office. I was handling a service pack delivery release with a junior developer.

I took a notepad and pen to jot down any details he might have for me. When I lifted them, I remembered that my last request for an office laptop was denied by the new manager. Senior developers of my stature had secured one, during our old manager's time. But not me.

I wished I had one because my rented home in the city was 1.5 hours away from the newly relocated office. I couldn't relocate quickly because that would breach my rental contract. Three hours a day in a megacity traffic commute (mostly in the rain) had heavily spoiled my work-life balance.

To cope up, I delayed my office entry by an hour and extended it by 2 hours to match the comfortable return trip via public transport. In effect, I worked 9 hours/day. I missed my old manager, during whose time I often signed off past 5 hours, never missing my target.

As I shut the cabin door, my manager described the problem: My new office routine. He showed me a log of my office in-out times for the past 30 days, completely disregarding my total office time.

He wanted everyone to fall in line, regardless of how they performed in software making (which he covertly appreciated). If I don't comply, there will be consequences.

To say this was humiliating would be an understatement. Without uttering a word, I came out of his office. The next day, I complied, even if it meant disturbing my sleep routine or commuting in a packed public bus. Due to heavier targets (and my overarching willingness to make up for my irregularities), I didn't change my office leaving time. My workday was extended to 10 hours, and I returned home after 13 hours.

A month into the grueling routine, I fell sick. I took a medical leave of an indefinite period and left for my hometown.

During my resting holidays, I gave serious thought to leaving the organization and going freelance. The job sucked. The city wasn't fitting either. I wanted to work on my own terms, with a better work-life balance.

There was no place better than my hometown.

Time to quit:

When I returned after 3 weeks, I was not only recharged but a changed employee.

And I was met with a pleasant surprise: The problematic manager had left for another, very attractive product company. The insider story was that he was fired by the upper management for screwing up other developers' careers in his past team. But no one could confirm it.

However, he left his mark on the culture: a guy trained under him became our new manager. He was his perfect disciple in office politics, and weaker in technology + communication. All he knew was how to push tickets around.

The rookie who spent the whole day in the bad manager's office became his right hand.

The team's fate rested on what those two people thought of everyone else.

At this point, I spotted an opportunity to switch my team or make good terms with the new manager. However, I felt too drained to even enter his traumatic cabin — the same one where I saw the log of my office timings slippage.

After three months, I handed in my resignation. My colleagues kept asking me where I was headed. When I told them it was a long-term freelance contract for a QA lead job, they felt I was a lunatic.

I didn't blame them. I was leaving a highly mature product organization + a lucrative developer role for a strenuous testing opportunity. I also accepted the lead role — something that I had resisted in my 10-year-long career.

All of it — to live in my peaceful hometown, undisturbed by city traffic, crazy office timings, or late-night manager/client calls.

Conclusion:

A product team has a differentiated advantage: Past a product release, it can afford significantly lower complexity in the codebase that it has owned for years.

Better organizations translate this advantage into a better work-life balance and mental health of its developers. This becomes an investment and comes back to the company in terms of better, often novel product + execution ideas.

But this advantage can be completely lost when the leadership isn't incentivized to realize this goal. Managers without this value lesson see their teams as mere headcounts to inflate their paycheques.

Such product organizations are no different from ever CV-altering service organizations.

My working conditions were in complete contrast to my expectations from a product company.

I might not be a good product developer as I would like to claim in terms of competency. But I was a good-hearted one. I knew what a good developer looked like, looking up to my seniors — who hadn't left due to their long-term investments in the city. I was keen to become one.

An unhealthy manager's nitpicking reversed my career direction. In my weakest moment, I couldn't take a holistic approach and failed to clinch the second-best.

I ended up compromising my career only to gain better working hours in my hometown because I found myself at the bottom of the deprivation ditch. My working conditions were in complete contrast to my expectations from a product company.

Past 2008, freelance programming was slowly picking up. ODesk (which later became Upwork) was changing the world for remote programmers.

It wasn't the worst decision I had taken in my career. But it didn't have any career merit. I was out in a wild-wild waste of freelance contracts, won by lower biddings, under-promising, and overarching deliveries. Without the initial fixed-term contract that I had gained, I stood no chance of success.

The only good thing that came out was that the decision changed me in a desirable way.

I found within myself the courage to abandon any ship and swim to the shore, without a lifeboat.

Want to write for Medium, and read every story on it?

Want to get an email every time Pen Magnet publishes? Click here to join his subscriber list.

Pen Magnet is the author of the popular senior developer interview eBook:

Comprehensive Approach to Senior Developer Interview (40+ example questions)