Technical articles and stack decisions from Songkick
Optimising platform spend with cluster autoscaling
This post was written originally by Phil Hope while we worked together in the Platform Team — I just helped with a bit of editing. In this blog post, we’ll explore how we leveraged cluster…
Setting up a Smooth [Prometheus] Operator
In a previous post we discussed how, as part of moving our apps to Kubernetes, we needed to get some basic foundations in place first. In that case, we looked at how we imported our Kubernetes logs…
Getting Kubernetes logs into BigQuery cost-effectively
At Songkick, we’re always looking for new ways to make the most of available technology in order to work smarter, faster, and ensure we can sustain growth as efficiently and effectively as possible…
iOS App Architecture for Web Developers
This article is part of a series of posts dedicated to helping web developers new to mobile development bridge the gap between building web apps and iOS using the common MVC pattern, as told by two…
This article is part of a series of posts dedicated to helping web developers new to mobile development bridge the gap between building web apps and iOS using the common MVC pattern, as told by three…
How We Ran a Hack Day in the Age of Social Distancing
At Songkick, we try to have a company-internal hack day once per quarter. Hack days are an opportunity for us to hit pause on our day-to-day work and explore new ideas for the company. It’s a way to…
Building a Growth Framework Pt II: No Tester Left Behind
In April 2018 the Engineering team at Songkick started using a Growth framework; a way for developers to simply and clearly understand where they currently are in their roles and what they need to…
2019 in technology
At its height songkick.com reaches over a hundred requests per second with upwards of 7000 users active on the site at a time, whilst our apps serve millions of users per month worldwide. To help us…
How we migrated to Google Cloud
At Songkick, we recently completed a successful migration from our data centre to Google Cloud Platform. I’d like to give an overall account of how we successfully delivered this project with a…
Songkick Engineering Principles
Last time we thought about what we believe in as an engineering team was in 2012. The team has changed almost entirely since then, so we thought it’s a good time to think about what our principles…
Migrating our ETL pipeline to Luigi on a Cloud
Previously, on Creating a musical (data) pipeline, we shared how we went about creating a custom solution for solving our ETL needs using Go, Python, DataFlow, and BigQuery. This setup allowed us to…
We’re so cutting edge: How we added a React App to our Rails project at Songkick
Over the past year the engineering team at Songkick has been hard at work migrating our old data centre to the Google Cloud Platform. It has been a long process and it has had it’s fair share of…
Solving for X: The accessibility problem that we fixed using geometry
Making sure as many people as possible can share our love of live music is one of our values at Songkick, and one of the areas we can make the biggest difference is with our mobile apps. So when we…
Creating a Technology plan for 2019
What is your Tech team going to achieve in 2019? Making plans for a team is hard, full stop. Making plans for a team for an entire year? Pretty daunting. But as the saying goes: and the start of…
Parsing ginormous JSON files via streaming
At Songkick we process data from a wide range of sources in order to provide music fans with an up-to-date comprehensive list of live music shows by the bands they love. This involves several…
The great UTF-8 migration
At Songkick, we recently fixed a bug that we’ve had for several years. It was a large and complicated issue to solve, and we wanted to share the history of the bug, and the process that we went…
Empowering the design team at Songkick
A lot of teams struggle with bridging the gap between developers and designers, despite working in similar areas to solve problems for our users. Here at Songkick we have taken steps to help our…