Tuesday, October 14, 2014

Meet the Engineers Behind Polyvore: Esha Pathak

Get to know the Polyvore engineering team! Here, Esha talks about how she works with big data, our tech stack and what makes up our engineering culture.


What do you do every day?

I’m on the infrastructure team, so I help maintain our backend infrastructure in our Data Center and Cloud on AWS. In addition to my day job, I love getting updates on all the latest fashion trends from our creative community. It’s pretty cool that I’m able to help build a platform that empowers people all over the world to express their style.

How does Polyvore’s scale affect your daily work?

As our Polyvore community grows, my team continues to scale our backend systems. With new features built on our data, I help create new Cassandra clusters, and scale the existing Cassandra clusters by adding more nodes to accommodate our growing data. Cassandra is our backend for storing our unique outfit data for our newly launched Style Graph, which provides users with personalized product recommendations.

What are you doing with big data?

Polyvore’s big data stack consists of Cassandra, Hadoop, Hive, Solr, and Pig; but specifically I create new clusters and maintain existing clusters on Cassandra, which is the backend for Polyvore’s big data needs. Thanks to our user community and the billions of data points they generate every day, we’re one of the only companies that can do style personalization and recommendations at huge scale.

What’s a new technology you’ve started using at Polyvore that you’re really excited about?

As we move more data onto our Cassandra cluster, it’s exciting to watch Cassandra’s framework get integrated into new technologies like Spark and Shark and apply their unlimited scalability.

What is a technical problem that you think Polyvore is approaching in an interesting way? What is a technical problem that Polyvore is in a unique position to solve?

We are constantly testing our code to reduce build breakage and improve code quality. Our test-driven development encourages us to build a number of tests for new features, using Jenkins for continuous integration and deployment. On average, we deploy code 5-10 times a day.

How would you describe the Polyvore engineering culture?

Polyvore’s culture is defined by making decisions based on merit and reasoning, regardless of job level. It is a flat hierarchy. Everyone is very involved in explaining and asking why, and you can feel the shared responsibility that each of us can make a difference.

Any fun facts we should know about you?

I am very talkative! Learn more about me on my set here.