In case you were wondering, the Flux Team at Groupon is named after the 1985 classic, “Back to the Future,” because its members use insights from the past to predict the future. Fluent in both machine learning and big data, the team serves to translate for the company’s data scientists and engineers, who use vastly different coding languages and approaches. In so doing, Flux makes sure machine learning can be put into use very quickly, whereas in the past it could take months.
Recently, we spent time with the group to find out how they work across the approximately 2,000-person Chicago location (7,000 globally) to keep the “flux capacitor ... fluxing.”
FLUX AT A GLANCE
THE TEAM: Four engineers, one manager, an intern.
WHAT THEY DO: Bridge the gap between data scientists and engineers to ensure that insights drawn from data can affect the business faster.
WHERE THEY DO IT: Chicago.
WHAT THEY TAKE SERIOUSLY: The work.
WHAT THEY DON’T: Themselves.
BACKGROUNDS: Most team members have studied computer science. Additional courses of study: machine learning, data science, deep learning.
OTHER CREDS: You'll also find an MBA candidate, plus a chemical engineering Ph.D who used machine learning in his doctoral thesis.
YOU'RE AN IDEAL CANDIDATE IF: You're a quick study, able to learn new languages on the fly.
Built In: If you would, explain what your team does.
SreeRama Jayanthi, engineering manager: We work with about 10 teams across Groupon, helping process data into insights for business optimization.
One specific example is how we work with sales. Between the time the phone rings and a customer rep answers, we look at the customer’s order to see what we can do to help them resolve their issue and remain a long-term Groupon customer.
Derrick Spell, senior software engineer, tech lead for the project: More generally, our team allows good ideas to be put into use faster. Often, there are good insights from Groupon’s data, but the analysis is stalled in trying to implement it. You may spend six months working on one idea, without even having the chance to iterate.
So we've built a platform where the data scientists’ ideas can be implemented and immediately picked up by the engineering team. We've had models that went from idea to production within a couple of weeks on this platform. It used to take six months.
Built In: Can you give me an example of an idea this team accelerated?
Spell: One example is our work with Groupon Goods, which anticipates sales so that they can send inventory to warehouses strategically. A data scientist built a model that indicated: we need X units in the northwest and only Y units in the southeast.
But it’s hard to bridge the gap between having that insight and affecting the systems that place orders. We worked with the data scientist to put that model on the Flux platform, which provided a kind of ready-made bridge. Pretty much immediately, the engineering team started using that data to place orders.
Built In: What kind of technology is the Flux platform built on?
Spell: We run a lot of our models from Groupon’s large Hadoop cluster. From a program language standpoint, we use Java and Clojure, a Lisp implementation that runs on the JVM. Python is a glue language to bridge the gap between the Java and R. R is the language preferred by data scientists.
Built In: One of your colleagues here described Flux as the Rosetta Stone between data scientists and engineers. What do you think about that?
Bahador Nooraei, engineer: That's one of our main goals, actually. We do a lot of translating. Data scientists are worried about mathematical rigor. They have their own lingo and tools, like R. Engineers, on the other hand, are like: We don't know how to use R. What do you mean by “feature”? Or “training”?
It's hard for the two sides to even talk requirements. That adds to the complexity of making sure engineers can use machine learning models. Because Flux can speak both languages, we sit between the two.
Spell: And data scientists and engineers can, for the most part, stay in their realms of expertise. If a data scientist puts their model in Flux, an engineer can pull out that data without needing to know R even exists. And vice versa, the data scientist never has to worry: "What if the network gets flaky?"
Built In: I love your name, “Flux.” What's the story there?
Spell: We were originally part of a team called Quantum Lead, which is the pun that you think it is. When we became a platform for machine learning, we threw a bunch of ideas on a whiteboard and started voting. Flux won. It’s a “Back to the Future” reference. Because often, our data include insights from the past to predict the future.
Built In: Groupon seems to do a good job of work-life balance. How do you manage that?
Jayanthi: We take that piece seriously. We’re due diligent about the commitments we make. Once we commit, we make sure that things move. We strike a balance where we are having fun and delivering business value.
Built In: So, what kind of fun do you have around here?
Jayanthi: Actually, we spend more time with the team than with our families, so we do a lot of things to bond. We eat lunch together every day.
Spell: And we have good lunch conversations. Until recently, none of us were natively born to the same country. Our team chat room had the words: "I need coffee" in 12 language — all written without a dictionary. So we talk a lot about language and culture and philosophy over lunch. We also give each other crazy nicknames.
Built In: Do you guys have a reputation as a group?
Jayanthi: Yes. We’re always pushing to be on the edge of the existing system as opposed to staying within it. For example, most of our applications are done in Ruby or Java, but we also identify different tools for different problems.
Spell: We have the reputation of being courageous polyglots. There was once a team that inherited a Scala system. They didn't know what to do with it. They thought: "Should we completely re-implement this in Java?" We didn’t know it either, but we said, we can learn it. We were able to implement changes for the data scientists within a couple weeks.
Built In: What’s the best part about being here?
Jayanthi: It’s that ability to push boundaries and use a range of tools. We use Scala, we use Clojure, we use Java. A lot of companies cannot provide that.
Xiaohan Zeng, engineer: The engineering culture is great. There is an annual celebration of Groupon’s geekness called "Geekon." For a week, we can team up with anyone to explore new tech projects, which could end up being beneficial to the company. That's the place I want to be. I want to be with a group of nerds, because I'm a nerd myself.
Jae Chung, engineer: I’d also say that Groupon is well established, but our solution covers the entire stack from the back to front end. There’s a range of experience to gain. If you lack some of it, you can fill in the gaps as you mature.
Built In: What qualifications are required for Flux team members?
Jayanthi: We use a term, “data engineers,” a lot. That refers to people who have a combination of software engineering and computer science — but also are very proficient in using and managing big data.
Built In: How do you find people with that unique mix of skills?
Spell: We don't hire for language proficiency or necessarily for data science expertise. Instead, we try to gauge whether a candidate is a learner. Is this somebody who’s open to new ideas?
Nooraei: That learning aspect is the most important thing. I think I worked on six languages in the past three months, as well as many frameworks, libraries and systems. If that scares you, this isn’t the right fit. But if that sounds exciting, it’s the perfect team.
Built In: That's what they say about journalism. You need to be excited about becoming an instant expert at everything.
Nooraei: That makes sense. We also have a saying: We have a Ph.D or M.S. in computer science but a B.S. in everything else.