About me
November 20, 2020
I graduated Computer Science from IIT Bombay in 2009. After which I worked in Microsoft Research Labs in Bangalore till 2014. My primary research area was Information Retrieval. I worked extensively on Pseudo Relevance feedback and application of spectral clustering methods on search and feedback. I worked on productizing email and contact search and query completions for Outlook.
I worked on two startups after that. The first one was on using large documents or text as queries in search. The potential applications could be in legal, patent or prior art search, news search, multilingual news search, blog search, etc. The key idea was to solve nearest neighbour problem in embedded space. The problem is hard because text requires a larger number of dimensions to capture the intent meaningfully.
The second startup I worked was on providing rental accommodations to bachelors and families by leasing out properties from owners. I realised that at its core it was an optimization problem. We made money till the house was occupied and we lost rapidly when it wasn't. The business is a very low margin business and the cost of service was quite high. Both the startups we closed before we raised any money from anyone. Because of this experience I got interested in solving effeciency problems in businesses.
This is when I serendipitously met Deepak, the CTO at MindTickle and who is also a senior from college and was an acquaintance at that time. We had a few conversations about what MindTickle was doing and we discussed interesting machine learning problems for optimizing sales coaching. MindTickle had about 20 engineers when I joined and about 80 people overall. I joined MindTickle as a "Product Researcher". I guess it was a new term :) like in many startups, but my job was to own new technologies from conception to production. My role expanded to include more and more engineering management with time. In my first year here we had released an extensive new analytics product based on Spark. We brought in technologies like active learning, transcription, outlier detection and conversational UX interface. At this stage conversational intelligence was becoming an existential threat to the company. We started with a POC and one engineer, gradually scaled the team to 10 and released the first version in an year. We were not just proud that we built something, but we built it to the best standards of that day. We introduced trunk based development, event driven microservice architecture, GraphQL, Gitlab CI/CD, Helm, behaviour driven testing automation. There was a time during this when almost whole of our iOS team had quit and the project for rearchitecting it was a quarter behind. Me and my teammate from the ML team rolled up our sleeves and started working on the iOS app and we hired engineers in parallel and released it.
In the second half of my MindTickle journey, I have owned technology and engineering processes across all teams and brought all of these concepts from Call.AI to the rest of the platform. We "refactored" the engineering org based on concepts of domain driven design into horizontal and vertical teams, wrapped up several critical technical debt projects and rearchitectures to the core platform and set up a program management office. When we wrap this up we will have brought issue counts down across the platform by 3 times, modernized our disaster recovery, CI/CD, infrastructure deployments, monitoring, site reliability, incident management and release management, deprecated our core database and now set up horizontal team of architects for future growth. MindTickle has been a full of learning experiences beyond my conventional and assigned role. Today we are almost 150 engineers, almost 8 times when I joined.
I also cleared the public civil services examination (UPSC) in 2012 and joined DANICS in 2013 and quit during the two years of my probation. I may write about it some other time :)
Find me on LinkedIn