This interview series, “Meet A Developer,” is part of our monthly series featuring members of our Product Development team. To find the latest interviews as well as Leanplum Product Development news, meetup recaps, and more, head over to our Leanplum Product Development blog.
Hi Billy! Great to chat. To start, what is your title?
I’m the Pod Lead on the Productivity Pod.
[What are “pods”? Check out our previous Engineer Spotlight for an intro to how our product development team is structured.]
How long have you been working at Leanplum?
Since July of 2017, so almost a year. I started working at Leanplum as a Senior Software Engineer, then was promoted to lead the Productivity Pod. So it was a quick transition but a very supportive one. I hadn’t managed a team before but was provided a Pod Lead coach to help with the transition and plenty of resources to help me learn.
Describe your background in software engineering and what led you to Leanplum.
I’ve come a long way to find what I call the “Goldilocks” company at Leanplum. I spent my first early couple of years at Apple, which had great benefits but not really any culture and I ultimately wasn’t enjoying the work I was doing. That experience made me realize that people and culture are just as important as technical growth, so I wanted to find a company that had both.
I left Apple to work at Glassdoor, which had a great culture but not the technical challenges that I was looking for. Then I went to work at Twitch, which had the technical challenges I wanted but not quite the culture. That led me to Leanplum, which has the perfect mix of technical challenges and culture.
What attracted you to Leanplum?
I’d heard a lot of great things about the people who work at Leanplum, and once I looked into the company, the technical challenges were intriguing.
Right off the bat when I interviewed, I got a sense of warmth from Leanplum. I could tell that the team prioritized hiring for culture as much as talent, which was a big priority for me too. There was a really strong sense of community within product development and people seemed to really enjoy working together, which makes the work itself more enjoyable.
Tell me more about the Productivity Pod and your role. What does your team do?
I lead our Productivity Pod in making the entire ProdDev department more efficient. We try to make developer’s lives easier by reducing the number of steps they have to go through to get the code they’ve written into production while increasing the quality control and automation behind that.
Recently, we’ve shifted heavily towards DevOps to support how quickly Leanplum is growing. We’re actively hiring more DevOps engineers with the goal of having a DevOps pod in addition to our Productivity Pod. Until then, we’re taking on more responsibility for DevOps in addition to our productivity work.
What does your day-to-day look like?
I try to get in pretty early to connect with our teams in other time zones, our Bulgarian team specifically. I also use the morning hours to get a lot done on my own projects, so that’s the portion of my day that I can do my best work as an individual contributor. The rest of the day is working cross-functionally with different teams to keep our priorities moving and update stakeholders with our progress.
I’m naturally an extrovert in an industry that is often spun as full of introverts, so this role allows me to interact with people both inside my department and out, while still being able to contribute on an individual level
What are some of the existing projects your team is currently working on?
Leanplum receives a huge amount of traffic (over 18+ billion API calls a day) that requires a sophisticated and scalable infrastructure. To ensure we can scale to meet our growing demands, my team is currently leading the migration of moving our infrastructure to Kubernetes. In addition to that, we’re also working on building out our own robust monitoring / alerting infrastructure on top of Prometheus that can support traffic at such scale.
What’s been your favorite technical challenge to work on at Leanplum?
There are a variety of interesting technical challenges on the Productivity Pod, so currently it’s a tie amongst three things.
Recently we finished building an API integration automated test platform. Leanplum currently gets about 18 billion API calls a day, but we didn’t have an efficient way to validate that our APIs were functioning end-to-end. So I built an expandable framework in Python that automates continuous testing of all the API endpoints and enables one to easily add new API tests. That was cool because it was written simply enough that you could also mimic customer behavior in different apps. Now, our Sales Engineers uses the same framework for populating their test apps with some data or writing their own scripts — it’s really been able to grow.
The second technical challenge I’ve really enjoyed is GitHub automation. This involves building a custom GitHub app to allow automation to trigger based on GitHub webhooks. In doing so, we’re building a framework that allows everything from tests, builds, other third-party integrations (i.e. Slack and Jira), and really any script to trigger based on developer activity in GitHub.
Finally, I also assisted in building out an intelligence tool for our Marketing Department when they needed help with account discovery, enabling them to transition their work from manual to automated. Implementing automation across the company and helping other departments use tools to become more efficient is cool to see — you get an instant understanding of your impact!
What would you say to someone joining Leanplum?
Practice for the technical interviews! Just kidding.
In your job hunt, think about the people that you’re going to work with because they’re going to be a big part of your life. Numbers get thrown around a lot in tech, but you work with these people every day. Really pay attention to how a company views culture. Especially at Leanplum, you’ll find something really appealing. Pay attention to the family you decide to join.