December 21, 2017
Patrick Stein: VP of Engineering
Tatarians in the Spotlight is another one of our blog series, in which we feature our own employees and have them share stories about their work. This week, we talked to Patrick Stein, our VP of Engineering, about his team and Tatari’s technology.
Tatari: “Let’s start with the basics: tell us a bit about yourself.”
Patrick Stein: “Well, I’m from Canada. I grew up in Toronto, went to school there as well, and then actually ended up dropping out of school in order to do a startup there. I kind of hung around that scene for a couple of years, and, at some point, I decided that I’ve spent enough of my life in the Great White North, and then moved to Portland, Oregon, where I also worked for the startup Vizify. Lived there for a couple of years, really loved it, but Yahoo acquired the company I worked for, and then I had to move to San Francisco where I spent a couple years doing the big company thing at both Yahoo and Tumblr.”
T: “And then you, obviously, ended up at Tatari! How would you describe what you do at Tatari?”
PS: “The really short version is that I run the engineering team. We’re a small team for now, so I get to do a nice mixture of things. There is the management component to it; I have to make sure that every little problem is taken care of and that everyone is working on the right task. I also work with the rest of the executive team to make sure that we have clear goals and roadmaps, so that’s more of a strategic part of my job. The most fun part, which goes back to my background as an engineer, is that I love building things, and I still have the opportunity to dive into the small things here at Tatari and get my hands dirty. I get to work on features, with clients on data integration, and, just in general, greasing the wheels to help everything run smoothly.”
T: “How would you describe Tatari’s core technology?”
PS: “On a high-level, we really try to keep our technology simple and straightforward, which means we like to use a small set of tools that are very powerful. We like to push those to their limits before we expand to others. At the core of it is our database, which runs on Postgres, and we’ve been using that for a while. On top of that, we’ve built a pretty rich and robust Python backend analysis pipeline. That communicates to our web dashboard across an API, and our dashboard is built on a NodeJS, Typescript, and React. So, I’d say, cutting- or almost bleeding- edge on the frontend, but conservative and maybe even a little old-fashioned on the backend.”
T: “From a technological point of view, what makes TV measurement challenging?”
PS: “That’s a really good question. There are really two aspects to it from Tatari’s standpoint. Number one is just the sheer number of complexities that need to come together and make things work. On a singular level, many of these things are not hard to solve. But, when you combine them together, like dual feeds, syndications, and different sources of data, these complexities multiply and things get really tricky, so we have to be really rigorous with how we approach solving these problems.
The second concern, on top of all these complexities, is that we try to get analysis done very quickly to have real-time results, which is something that makes Tatari unique. We don’t want to wait two weeks to show clients what happened, we do it in 24 hours, and are trying to get that down even less. So, often, you have these scenarios in which your data points are not even complete yet, meaning that we have to work off of partial information. When all of this is combined, you get really interesting challenges.”
T: “So, what were some specific technologies we had to deploy to make this work?”
PS: “Another good question. We haven’t really had cases where we had a specific problem that required a particular piece of technology to perfectly solve it. I think I could say that, instead, we follow a few guiding principles when deploying our technology. First, we believe strongly in automated testing. For instance, before we deploy something new, we first create a new database, populate that with a bunch of actual TV data, and then we run a big suite of tests with hand-calculated results against that database, which often means a lot of pen-and-paper math to make sure that everything lines up. This gives us a lot of confidence that whatever we change doesn’t affect calculations in a way we don’t expect. Beyond that, we also recently migrated to Kubernetes, a system that gives us tons of flexibility with how we actually perform our calculations. It’s very flexible and fluid, which allows us to build some pretty cool stuff on top of our rigorous testing system.”
T: “Clearly, to make this work, the engineering team has to be deeply involved with data. How do you ensure that your team understands the underlying data science?”
PS: “You know, this is one of the biggest challenges I have in terms of what I do. And, this is something that’s prevalent in many companies here in the Silicon Valley. You have the engineering team, you have the data science team, but the big question is—how do you bridge the gap between them? So first and foremost, I think that it’s important to focus on individual strengths. It’s not that engineers can’t deal with data, or that data scientists are not good at programming, but data scientists will always be more efficient at figuring out the math and statistics, and the engineers will be better and quicker at actual deployment.
However, this doesn’t mean we work in isolation. The data science team still works hard to ensure that the science is understandable, and we make sure to build tools that are easily readable and usable for them. Very often, when we have a challenging problem, we will also sit together and try to solve the issue collectively, rather than throwing things over the fence from one team to the other. It’s still an evolving process for us, and I think the industry in general, but we like to have a close interaction between these teams while finding the right balance. You don’t want to have everyone so narrowly specialized, otherwise things get tossed between the teams all the time. At the same, if everyone is equally involved, things don’t get done efficiently.”
T: “To step away from the technicalities for a bit, how would you describe your team?”
PS: “The most notable attribute is that everyone has done work in both large companies and startups, with everyone having a bias toward working in startups. When you have that kind of experience across the board, it’s really hard to faze the team with a problem that they have never seen before. We have people who worked on finance, data visualization, dating apps, video content, all sorts of stuff, so every person has deep experience in a different area. We bring that diversity together, which helps us tackle different problems very quickly.”
T: “Would it be safe to say that you look for these attributes when building your team?”
PS: “These things, of course, are always really nice to have. But, really, beyond that, we want to see a hunger for learning. There are different ways in which this can manifest, but everyone that we hire in engineering, and at Tatari in general, shows excitement for new information. When you think about it, it’s those type of people who are okay with being wrong and just saying ‘I have no idea how this works’ when they are confronted with something hard, but still want to get involved and figure out how things work. I think this is especially important for us at Tatari because TV advertising is not something that you are likely to learn about on your own or in any school. So, the ability and willingness to be comfortable with the unknown, while being excited to learn something new, is definitely something that we look for.”