A little over 2 years ago, I decided it was time to try out working at a startup. I ended up trying this at two different places that had their own unique traits.
The first place was a small 8 person shop that was attempting at building a personalized deal program mobile app that would allow restaurants to connect with loyal and influential customers. It started by two brothers and split across the US and India. For those who have been in the startup community a while, all this might have been a red flag already. But there were several factors that led me to give it a try.
The first couple of weeks went by in a blur of trying to settle down. It was learning a bunch of new technologies and adjusting to living in Bangalore again after a 9 year hiatus. Google App Engine and Python were completely new and quirky and it was interesting to use the Google App data store. I got to try out building services that used Google data store and were consumed by mobile app and a web application.
A month into my stint there I started to feel odd about the way the whole team was operating. It was bootstrapped by the founder so everyone had good pay and not much skin in the game. It also seemed too much like a corporation. There were managers, they gave orders and the rest of us executed them. There was also a small matter of people not respecting each other's experience and opinions.
Long story short, my first startup experience was not so great and it lasted all of 3 months.
My second attempt was at an Online Advertising trading company that was building an internal technology team. It was split across London and Bangalore. I was tech employee number 2 and was tasked with building a web version of the internal Campaign management system. Pretty soon I had two other people join the team and several other people joined the tech team. The main revenue for the company was through trading so tech was an internal facing part of the business. This left us in an awkward position of having internal clients who knew nothing much about how software was developed and little clue of what they wanted built.
This was a small company with around 50 people across all offices. I was able to push through a few important IT related changes, like switching to Google Apps for email. I learnt a lot about how online advertising works and processing large amounts of data using Hadoop and R. It also let me explore targeting and analysis of user behavior. We used AWS for our test and production environments, which let me learn about the various services they offer like EC2, ELB, RDS and Redshift. The stack we used for the web app was Java, NodeJS and AngularJS which were something I had never explored before so that was a good learning.
However, we had little luck getting time from the people who had the knowledge and expertise on the Excel tool we were trying to replace. We also had no access to the actual users, who were all internal! So it was left to three software developers with little experience in online advertising, to figure out what was the best way to build and migrate people onto the web application. Over time, other team problems made the situation worse, when other people's choice of technology were being pushed on our team with no real reason or buy in from us.
After about a year, I kind of realized that I was facing no growth and what was turning into an ego driven development organization. I decided it was time to move on and join a larger company that had a history of being employee friendly and had a good reputation.
Learning from my 2 stints
- I want to join startups on the ground floor as a founder or not till after its grown enough to already have a culture of its own
- Don't mix friendship/family and business in startups
- Ego has no place in business choices - it should only be fact driven
- Don't rush into choosing which startup you join or who you bring onto your team in small companies
- New technologies and platforms that I had not explored before - AWS, Java, Python, Hadoop, Redshift, AngularJS and NodeJS - which will help me be more informed about picking the right platform for any project in the future