From day one at Zapr, Karthick wouldn’t say no to learning. He’s made the journey from tough-to-grasp technology books to building massive code libraries that today run Zapr’s business model - a mobile advertising platform developed completely in-house. Having worked on the whole range of Zapr’s tech stack - from the core data platform to server infrastructures, he is now part of Zapr’s Architecture team. He believes in always saying yes to challenges, and a warm smile to seal the deal.
More than three years ago, I left my job at a big organization where I felt like I was doing the same work everyday. After hearing about Zapr and speaking to the founders, I went for it. On my very first day, I was asked to read a book on Netty - a framework that would help us build an ad server from scratch. I spent two hours feeling like a complete fresher.
Jumping right into action and getting it right:
Diving right into building new technologies initially took a lot of learning. The first thing I picked up at Zapr was advertising technology. At first, it seemed pretty simple - a server typically receives requests and gives a response. But then the complicated part involved a whole lot of logical coding - spanning across 10-15 modules. Since multiple publishers and exchanges operate with ad technology, we all follow the Real Time Bidding Protocol (RTB) while buying and selling ads. This only gets more complicated with multiple fields - filters based on demography, age, device type, among many others.
The best thing was that we could jump right into action with excellent guidance from Siddharth, our VP of Engineering. He had a lot of experience in creating many APIs (application program interface) - a set of routines, protocols and tools for building software from scratch.
One Friday evening, we decided to release our first ad server. First we ran a complete end-to-end test, and checked if it passed all filters or ran into exceptions before getting final responses. We started from 6 PM, but then errors started showing up just before deployment. Back then the team was small, so we had to speak directly to exchange partners who would then connect us to their developers. It was very chaotic, but we finally we got to deploy at 4 AM the next morning!
Karthick diving deep into Advertising Technology at Zapr Tech conference 2017
Finding smart solutions for complex systems: Turning mistakes into building blocks:
To build a highly available and fail proof database, we needed to create “cluster” of multiple systems. The challenge was that if one system failed, it had to be robust enough for another to handle.
Starting anything from scratch is tough. So instead of saying yes or no immediately, first we try. If it is not working, then it’s good for our growth. If it is working, then great. Even if you get 99.9% of it right, you need to able admit the point where you went got wrong. Rather than forcing somebody to fit into a specific role, it’s better give opportunities to work on different areas.
I also worked with Zapr’s core infrastructure that ensures our content matching happens accurately and round the clock. When we’re looking at all TV content at any given point of time - shows to commercials, the challenge arises when there is even the slightest delay in the matching system. We need to go back to our records and correct the backlogs. This is how I picked up on a big data framework called Spark where we match multiple content in real-time.
Exploring new domains and learning from each other:
So one thing I can tell about myself is that I don't belong to any one of the products. If somebody asks me to help out with something I’ve never worked on before, I would do it - to learn. Say there’s a problem in the data lake which is the raw repository for all of Zapr’s user data, even though I wasn’t part of the team that built it, I would try and understand how the query works and help fix the problem.
In two-three years we learnt a lot of things about the system, the technologies, etc. So now we have to ensure that best practices are maintained and many processes need to be automated. Technically, these things are easier to pull off. But what’s equally important is bringing the right attitudes and behavioural skills to help everybody improve.
What I like here is that you can talk directly to anybody, even the co-founders and tell them what you’re problem is and where you need support. There are times when I’ve forgotten to eat my meals because I’m caught up with work and the CEO comes over to offer me a snack. That’s the kind of attitude that motivates me or anybody who works at Zapr.
Moving forward, here’s the biggest challenge while working with Artificial Intelligence systems and Machine Learning algorithms - we need to predict things before they actually go wrong. Sounds kind of impossible right? But that’s what we’ve been doing all along and solving these problems keeps us excited everyday.
Senior Software Engineer
Join Karthick and other software developers in building world-class technology at Zapr Media Labs! Check out our team page and get in touch with us: http://bit.ly/2zapr-team-careers.
If you know other people who’d make a great fit here at Zapr, share this article and let them know we’re hiring!