My first job was at an IT Services company.
I followed this up by working at startups but many of them failed and soon I became an expert at "This project/company is gonna die!".
At first I saw this as a curse but eventually I came to see this as a boon. If you can tell the future, you can avoid mental/emotional trauma3.
The Startup that broke me
I work at a BigCorp now4 and all credit goes to the last startup I worked at.
What do we hate about BigCorps?
- Soulless work
- Office Politics
- Despotic Managers
What do we hate about Startups?
- Financial insecurity
- Little to no social life
I am sure you know where this is going... Combine the two and you have my previous startup.
This was a company with 4 Managers/Executives, 2 Engineers & 1 Business Analyst.
That's not a mistake. Let me elaborate:
A team of Director, a Project Manager, a CTO & a HR Manager was required to oversee 2 Engineers and a contractor.
I don't want to bore you with all the war stories but let me give you an example or two.
"CTO" doesn't know REST
We were discussing the architecture of a working system and he remarked
The client's architecture is completely messed up. The frontend & backend two applications. Each engineer has his own local setup and they are not testing their migration code on a centralized test server but on local instances.
I thought this might be a great way to learn from the CTO and I started elaborating on REST architecture. I was hoping to hear his objections to the setup but was met with silence. Then I noticed that he basically stopped talking to me altogether.
Turns out that he took offense to me talking/knowing more than him. He started spreading rumours of how I am toxic and untrustworthy. In case you are wondering this was Week 1, Day 3 of me joining the company.
A month later he left the company because of office politics & ego clash within the management.
Git branches are expensive!
The management team has Microsoft background5. All of the projects we were getting were in Open Source technologies like Python/Postgres etc.
I pushed for Git as our Source Control tool of choice.
I get called into management office one day and I was asked to justify my carelessness.
Why did I create so many branches? Was I not aware that I was wasting company's money?
I was confused and explained to them that branches in Git are free. Now they were confused and they went on to explain to me that in Microsoft's version control system, you had a fixed number of available branches and you had to pay for extra ones.
I do not know, nor do I care to check if what they were saying was true.
What I did come to know later was that they were planning to create a fuss out of this to "put me in my place".
Office politics I tell ya :)
Get out while you can
I ended up working there for almost two years and that... was a mistake.
I had to put up and justify this kind of crap quite often and it's not a good thing for one's psyche.
Since this was my first time coming across such inane levels of toxicity, I did not realize what I had signed up for.
- Work at a place that respects you.
- Never stay back at a place for money, even if they offer you 1.5-2x your original salary. You might think they see your value now but that's never the case.
- Just because it's a startup it does not mean the office will be free of soul sucking middle managers.
- If your startup has petty bureaucracy reminiscent of BigCorp then that's not a startup that's a pit of despair.
- It is possible to find good managers & good work at a BigCorp and if you don't, you can look for internal transfer. If that doesn't work Get Out.
We had to create XML sheets from existing templates using Notepad. Why in god's name would you make a person do this manually and with Notepad of all the things is beyond me. ↩
As any thinking human being would, I decided to automate my task using scripts. This meant others in my team spent 13 hours creating these templates while I spent 30 mins prep + less than a second running my script. Management was not happy that I wasn't working hard like others. ↩
Software Engineers are bizarre creatures. We treat our work as our precious babies. ↩
As of January 2021. ↩
None of them actually worked at Microsoft, that would have been truly depressing. ↩