• May 21, 2021

Working at RealSelf: Karan Sharma, Senior Software Engineer

Working at RealSelf: Karan Sharma, Senior Software Engineer

1024 442 Ward Vuillemot

What are some of your favorite tech tools your team is using?

Our tech stack has a variety of programming languages and frameworks. Our teams undertook a mammoth effort of migrating pages from Angular to React. Most pages of our website are in React and others are planned to be migrated soon. Our backend is composed of apps written in PHP, Ruby, Typescript, Golang, Scala. All of our applications are hosted on AWS Cloud with a mix of services running under EC2 instances and AWS Lambda behind API Gateway.

Our database is hosted on Aurora MySQL with some of the services having self-contained datastores using DynamoDB. For configuring applications and infrastructure on AWS, we completely rely on Infrastructure as code. My favorite tool that we use is our in-house script that creates a service with lambda functions behind Api gateway in just 4 minutes as per the supplied configuration. By automating most of the repetitive tasks, we drastically reduced our programming efforts. This was created by a team of engineers who are currently working on advancing our platform to move towards service-oriented architecture. Our teams love this utility and I am so glad to work in RealSelf where teams help save each other’s time by creating innovative solutions.

What’s the biggest problem your team is solving?

We are working on a very ambitious project to revolutionize our eventing infrastructure, mainly how we track user interactions on our page. We currently use Google tag manager (GTM) to track user interactions across our website. We use this data to make meaningful decisions using Looker dashboards. Though GTM is amazing and helpful, we have to load it as a third party script which eventually adds up to our page load time and impacts our lighthouse scores. Also, it takes around 24 hours for the event data to be loaded in Google Analytics. This prevents our PMs from detecting feature anomalies much earlier. To overcome these shortcomings, we are creating our eventing pipeline to send these interactions asynchronously. There are many aspects of this project I enjoy. First, this is a very important project for our whole organization as this will remove GTM as a third party script which will increase page performance for our heavily trafficked pages and in turn improve our SEO scores. Also, this could significantly improve the time to visualize user activity events from 24hrs to ~15 mins, which will help us act faster 

What’s something unique about your team from other engineering orgs you’ve been part of?

During our sprint retros, we discuss which RealSelf Business Operability Principles the team demonstrated well & we can mention the member/s who were instrumental in that success. This is so rewarding because it provides us a platform to recognize the efforts of our fellow teammates, value their contributions, & in turn, keeps everyone motivated. 

Along with that, we also discuss which BOP our team would want to emphasize in the next sprints. This generates thoughtful discussions, helps teams align their focus, and a great learning opportunity for the team itself to grow. This tradition is followed by all the engineering teams at RealSelf and I always look forward to Sprint Retros recognizing the efforts of my team.  My team also plays games virtually every month, on a Friday. And who doesn’t love playing games on a Friday, right? It is so fun, and we have bonded well and that’s the best way to sign off and head into the weekend

Karan Sharma
Senior Software Engineer

Karan Sharma joined RealSelf in 2019 and is currently working as a Senior Software Engineer. He holds a Master’s in Computer Science from Northeastern University, Boston, and a Bachelor’s in Information Technology from Mumbai University.