I was fortunate enough to spend this Summer as a Data Science Intern at Button. One year ago, I would have never imagined that I would be at a company like Button. I had just moved to New York City to pursue a masters degree in statistics 3 months after finishing my bachelor's degree. I was still unsure as to where I wanted to be in the future. I looked at school as a buffer against making any concrete decisions about my life. Moving to a place like New York City without a plan can be risky, but it gave me access to a ton of awesome opportunities and my time here at Button has helped me form the foundation for what I want to pursue in the future.

My Summer Projects

Working at Button was a huge change of pace to what I was used to. As a lifelong student, I had only participated in research projects where our process was more exploratory than objective based. Instead of working closely with a team of 2 or 3 people, I was now part of an entire network that contributed to a core product with many moving parts. I no longer had the convenience of being able to do all of my work locally; there was a large code base requiring tons of communication to update efficiently and safely.

This environment would prove to be much more rewarding than the research work that I have done in the past and I found that I was much more motivated as a result. In academic research it can take years for your hard work to have any kind of impact in the world. Here at Button, I was creating new features that were being put into production just days later. Being able to clearly see the results of the work you are doing is one of my favorite parts of working at a company like Button.

For the first half of my internship, I mainly focused on Instant Rewards, one of the products that Button offers to loyalty publishers. Instant Rewards is a data driven product that aims to increase customer confidence and engagement. Normally, when a user completes an order it can take days for the publisher to notify the user that they will receive their cashback reward, leaving users uncertain if a purchase was acknowledged. With Instant Rewards, we use data to detect when a user completes an order; customers can now be notified in seconds.

Working on this project has given me experience in many different fields; it has forced me to constantly learn and to adapt to new concepts. I had to quickly learn how to write production ready code in JavaScript and Go, languages that were entirely unfamiliar to me. I learned how to create models that were accurate enough to perform well, yet simple enough to be easily implemented for all of the different merchants that we work with. I learned how to create robust and precise internal alerting systems. I learned how to automate complex tasks. I learned how to create concise, informative visualizations. I learned how to deploy services with security in mind. I learned the inner workings of production ETL pipelines. Finally, I learned how to effectively present my ideas and progress.

During the second half of my internship I was able to apply these techniques to some other projects at Button. I worked with our experimentation frameworks and analyzed the value our products can add to our partners. I also spent a lot of time on RFM segmentation analysis of our various customer bases. RFM segmentation refers to defining user types based on the time of their last purchase, the frequency of their purchases, and the amount of money they spend. This customer segmentation provided deeper insights into experiment results. The rest of my time was focused on software development and improving our internal services. My biggest contribution in this area was creating an anomaly detection system to alert on any potential outages for one of our major products. The core of this system involved using Median Absolute Deviation to determine if the current day's performance of the product was an outlier.

As an intern here, I have felt empowered to speak up whenever we are having a meeting or discussion on what we're working on. Button has a flat leadership structure that extends all the way down to the interns. My insights are given just as much weight as anyone else's and there are even areas in the company where I have become one of the domain experts!

The Button Culture

Button puts a huge emphasis on creating a world-class company culture that allows employees to work their best. The prevailing philosophy is to allow people to work in the way where they feel they are the most efficient. This means that we have flexible work hours, can work remotely, and can even bring dogs to the office. For example, it's easier for me to write when I am alone, so I am currently drafting this blog post on the engineering floor's balcony. We also have encouraged social time through catered lunch everyday and regularly scheduled networking events.

Although I love these aspects of Button, to me culture goes way beyond these perks. It's more about the people that you work and interact with everyday. Great culture permeates itself throughout the company and can be felt in all of the interactions that everyone has with each other. From day 1, the onboarding process made me feel welcome and eager to learn about the business. There are a lot of people involved with the teaching process and it's a great investment to have someone from each team take time from their busy schedule to integrate new employees.

In addition to the day-to-day, every Friday we have demos, a block of time where anyone can present what they have been working on throughout the week. It's great to be aware of what everyone is doing and it creates an extremely supportive atmosphere throughout the office. We are all working on something important and demos helps raise awareness of opportunities to support each other. There are many people here who have gone out of their way to help me, not only with the work that I am doing, but also to make sure that I am making good progress in my career path.

Favorite Moments

  • Seeing the Instant Rewards notification on my own phone. I was able to see some of the results of the work that I had been putting in.
  • Button's Hackathon week. One of the core values at Button is entrepreneurship; if we see a problem or an opportunity we should take steps to work on it. The goal of the Hackathon was to spend time on projects that we think will be productive to the company. We were able to take a break from our regular schedule and work on projects that we as an engineering team proposed. I had a great time working on network graph visualizations for our internal services with engineers I normally wouldn't have the opportunity to collaborate with.
  • The on-site interview. My interviewing process was busy, but rewarding. After an exciting phone interview with my (now) immediate manager, I was asked to come to the office for an onsite interview just 1 day later‚Ää‚Äî‚Ääthings move quick at Button. This was during finals week at Columbia University, so I was initially hesitant. However, Button was more than accommodating so I was happy to adjust my schedule.
  • National Intern Appreciation Day. The office surprised us with cake, champagne, and a nice dinner in Brooklyn. It felt a little weird to have my face eaten‚Ää‚Äî‚Ääbut it was a fun, unique experience.
  • Sailing on the Hudson River. The engineering team's summer retreat was a blast. It was great to be able to take a break and bond with the entire team.

Last Thoughts

Not only should companies compensate you monetarily, they should also pay you with knowledge. This is especially true for an internship and certainly the case with all of my learnings from Button. This internship has given me great insight to what I want to accomplish in the next few years. Because I had such a great experience at Button, I have accepted an offer to return after I graduate. I am very excited to be a part of a company that focuses on its employee's growth as I start the next steps of my career.

P.S. we have many open positions at Button, so check them out and apply now!