An article by Lisa and Xiaobin Ran

Girl scout badges (img source: <>)


Troubleshooting web-based issues can quickly become exercises in patience and extreme outside-the-box thinking, especially when there are multiple technologies, codebases, and partners at play. That’s why any tools that allow us to troubleshoot our case-specific problems can be so important. Here at GumGum, our Ad Server team has created an internal tool called “Badges” that allow various teams here to easily see useful data that is collected or created while requesting and serving our ads.


Back in August 2019, I wrote git and git-flow, a guide. I intended it to be used internally by GumGum to familiarize new hires with the workflow we use.

It covers a wide range of topics for people new to git and git-flow; however, it doesn’t cover everything I wanted it to cover. It was easy to say, I’ll do it later, but life happens, and almost two years later, the first part gets modest monthly views and reads while I fear that someone else will notice I never got to writing the second part. …

Image Source: Internet

Our process to migrate from Redshift to Snowflake in Looker

Migrating all our reports in Looker from Redshift to Snowflake was a multi-quarter project for us at GumGum. We had strategically planned (see previous blog post) this migration in phases to ensure business as usual and cost optimization. Our first phase of migration was the longest where we gave enough time to ourselves to experiment, and learn from the gotcha moments. Right after the first phase of the migration, we realized that we need to build a process for the future migrations.

To build the process, we documented all the different steps we performed in our first phase of the…

WireMock logo next to Spring Boot logo
WireMock logo next to Spring Boot logo

There is no free lunch when it comes to embracing microservices, a wise person once said. While there are many advantages to the approach, it comes with some undeniable challenges. One of these challenges relates to achieving proper test coverage across your system. In this blog, I will explain how I was able to tackle this, in integration-testing my Spring Boot based REST API microservices using Spring REST Docs and WireMock.

Why Use WireMock?

In mocking microservices, I aim to keep their respective integration tests as lightweight as possible. Since it’s advisable to test in isolation, simply connecting to a…

Photo: BENNI SCHMID — Copyright by

Relax and put your seat belt on… You’re about to enter my journey of an intense 2 weeks sprint I recently led, swapping my DevOps hat for a front-end one to build a full JAMStack website from the ground up deployed on AWS!

Foreword & Context

The GumGum Verity team applies machine learning techniques to the text and imagery on web pages to identify the context of the advertising inventory and brand safety threats. It then delivers content-level data over a Rest API that help publishers, DSPs and advertisers place ads in safe and relevant contexts.

This API not only supports page level…

“Nobody is Perfect” This quote not just applies to us humans but also the data that surrounds us. Any data science practitioner needs to understand all of the imperfections present in the data and handle them accordingly in order to get the desired results. Once such imperfection is the inherent Class Imbalance which is highly prevalent in most of the real world datasets. In this blog we will cover different Sample Weighting schemes that can be applied to any Loss Function in order to cater to the Class Imbalance present in your data.

What is the Class Imbalance Problem?

The Class Imbalance problem is a problem…


Data warehouse migration is moving data from one location to another or from one application to another. There could be various reasons for data migration like cost optimization, upgrading technology for performance, and scalability or consolidating data at one location. It is similar in concept to human migration, which is driven by climate, food availability, and other environmental factors.

At GumGum, business is expanding constantly, along with that, our data storage and compute requirements are growing exponentially. To strike a balance between scalability and cost, we have decided to move our reporting data from Redshift to Snowflake. This translated…

By Corey Gale, Engineering Manager, DevOps

For the DevOps team at GumGum, process has been constantly evolving. Two years ago we shifted towards an Agile methodology for managing all of our work, including interruptive support tasks. Our implementation of Agile borrowed some elements from Scrum (like daily stand-ups and sprint demos) and combined them with the flexibility of Kanban (like continuous delivery).

While this new bump in process rigor fixed a lot of problems like clarifying project priorities and encouraging early discussions about scope, it also introduced a lot of new overhead. …

If your company has a software in production for some time, you are probably familiar with this story. One of your teams is the keeper of a critical software in production. You are a small or medium size new age company who doesn’t have a NOC (those are so 1900s anyways!) and you have setup various alerts to notify you in case something goes wrong in production. These can be critical alerts that are setup with a combination of Sumo Logic / Splunk + Pager Duty or Cloudwatch (if you are in AWS) + Pager Duty. There is a whole…

When Merrill Bajana, one of our product managers and myself volunteered to take over the hosting of GumGum’s 5th annual Hackathon, it was pre-COVID-19. We began planning for an event in our Santa Monica office, but later made the call to go fully remote this year. We put a lot of thought into how to make 2020 the most successful Hackathon yet — here are some considerations and ideas for hosting a remote hackathon!

Building excitement

  • Website, hype video, Zoom background: We launched our Hackathon website with the help of our amazing designer Sebastien Shaeffer. The site features an incredible teaser video shot by and one of our actor-cum-engineer Florian Dambrine. We also had Sebastien put together a themed Zoom background, which we used in meetings leading up to the event.
  • Hackathon archive: We put together and then promoted a page that showcases each past Hackathon (teams, ideas, presentation videos, and winners) to give people an idea of how hackathons work and to hopefully inspire some new ideas.
  • Posts in our Slack chats: Leading up…

GumGum Tech Blog

Thoughts from the GumGum tech team

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store