[Techie Tuesdays] Vedang Manerikar, scaling systems at Helpshift
Vedang Manerikar is the senior platform member at Helpshift - An in-app customer support platform. Unlike most techies covered by this column, Vedang didn't realize his inclination for computers until he passed high school. It was only on the advice of a family friend did he get started with it. Vedang says, "I didn't know anything about computers until 11th standard. In Fergusson College, I had to choose between Biology, Geography or an elective/vocational subject like Electronics/Computers. I hated Biology, and I was not enthusiastic about Geography. My friend's dad said, 'If you love Math, you'll love CS'. Choosing that class was the best decision I ever made."
By the time Vedang finished his intermediate, he had decided to pursue computer science full time and took admission into the BE Computer Science course atPune Institute of Computer Technology in 2004. Computer Science wasn't the first choice or a sought after subject those days. People preferred Electronics and Communication engineering over it. "I'm lucky that I was passionate enough to convince my parents to let me choose Computer Engineering instead.” recalls Vedang.
Life in college wasn't easy. Floppy Disks were the trend and you had to have a CD writer to transfer huge files. At his college Vedang and his friends figured out a better solution, "This was a time when most people didn't have laptops, and information was still exchanged using floppy drives. So we would disassemble and carry around our machines with us, in order to set them up for things like social gaming or just to show off. "
But how did they come across the solution for larger files? In his 2nd Year, Vedang wrote a program as part of a competition, which could split up text files in chunks of 1.44MB to be put up in floppy drives and then the same program was used to join those files, by implementing Huffman coding. It was during the implementation during a lab exercise, they learnt about version control. "We also learned the importance of version control during this competition, because at the last moment, I copied the wrong folder ("Opus-latest", "Opus-final" etc) and we had to ask the judges to come back later while we went home and got the correct version of the program.Git was a new thing then, we were just beginning to hear about it,"Vedang recalls.
During another instance in his 3rd year, when they had a course on Relational Database Management (RDBMS) and they were required to build a project for this course. Vedang again challenged the Status Quo, unlike other people who were building CRUD (Create, Read, Update, Delete) applications like "Library Management", "Hotel Management", "Airline Ticket Management", he decided to go ahead a build a word guessing game.
What made this game different was the fact that the system was constantly learning from the guesses and the mistakes of the user. And not just the user’s mistakes but their thoughts as well! Talk about Artificial intelligence and Machine Learning and here we had it in a simple program!
After his college Vedang joined Symantec where he worked for two years. Life was easy in Symantec as he was youngest in his team and not much was expected of him. Soon he got bored and started considering an option to pursue an MS. He quit Symantec in two years but since but did not want to take a loan for MS. So hedecided to work in a startup thinking it would give him more relevant experience.
It was the perfect timing when a friend asked him to come and talk to the co founder of Infinitely Beta (Help Shift). Though Vedang was worried that he is not a web guy and had been working on systems for quite some time. But his friends convinced him to come over anyhow. Vedang remembers an advice his friend Prajwalit gave him:
“So maybe we won't hire you, but you and BG (Baishampayan Ghose, the CTO and co-founder of Helpshift) have a lot in common. You should at least meet him.”So I went to see BG. He started our chat with "I'll give you some material to study, and in a week's time we can conduct a technical interview."
Since I was a C programmer, BG wanted me to write an nginx module to compress html payload, eat up all the whitespace, expect in places where the whitespace was part of the formatting.
I did that in the allotted time, and was made an offer. "
It has been four years Since Vedang has been working with Helpshift, and the learning has not yet ceased. There have been a lot of great moments as well as bloopers too. Vedang says he once destroyed an entire search cluster worth of data because he hurried through a procedure that should have been followed carefully. It was a time of panic, because their main search cluster was degrading, and they needed to bring up a backup immediately. He had already prepared the backup, all that was left was to replay the last few days worth of data on it. Instead, he wiped it clean and had to start from scratch. Vedang learnt a very important lesson that day, one he still remembers,
"Regardless of how smart/senior/experienced you are, working with live production data is always dangerous, and you always need to be really careful.Unfortunately, people don't learn this lesson until they actually mess something up on production."
Other than programming Vedang has a deep interest in Hindu mythology and has written some great answers on Quora about it. In fact he also got an offer from Disney UTV to write a Mahabharata script for them. But religion is a very delicate topic and he didn't want people threatening him over something he wrote.
At Helpshift, they handle over a 100 million app-sessions per day and looking forward to scale it to over 1 billion app-sessions per day by the end of this year. Vedang has to make sure that the systemcan handle this load without slowing down. He constantly evolves himself by learning about distributed systems, the technology stacks and identifying areas of improvement from the perspective of scaling up.
Talking about the lessons learnt from his journey, he lists the most important things students should take care of when starting up in the field of technology are:
1. People want to help you, so learn to communicate properly. No question is dumb, as long as you can show that you have spent time trying to figure it out yourself. Read "How to ask smart questions" on the internet.
2. Find a good mentor. There is no better way to learn quickly than with a mentor.
3. Learn to spend more time with your problems before giving up on them. If you feel like giving up, take a short break (5-10 minutes), and come back to your problem.
Connect with Vedang here.