< Back to results

Software Engineer (Scala) - Insights


Permutive / London / Engineering & Modelling
Job Overview

Permutive is expanding our engineering team further and we are looking for a Scala Engineer to join our Insights Team and help build and scale our analytics platform which helps our customers to better understand their audiences while preserving privacy.

You'll use a wide range of technologies to build the functionality that solves previously-impossible problems for our customers and helps them deliver value through our platform.

You should be keen to own the process of building new product features and managing the whole development process, including coding, testing, deploying, and monitoring.

The wider context

We’re 45+ engineers working to build an outstanding engineering culture so that everyone who joins has the opportunity and the support to do the best work of their life. Small, autonomous teams are important to us, and we want to empower everyone to make—and be accountable for—decisions through ownership.

Everything we build has to scale: our platform handles more requests each day than there are new tweets and Google searches, and each month we see more than a billion users. We think applying functional programming techniques like compositionality and type-safety is the best way to build the type of massive distributed system our platform comprises, allowing us to move fast without sacrificing quality.

Teams and technologies

The Insights Team are focussed on building and improving our analytics platform which helps our customers to understand their user audiences and extract meaningful information while preserving privacy.

We are responsible for the real time consumption, analysis and forwarding of events flowing to the Permutive platform. To give an idea of the scale we operate at, we have multiple data pipelines, each processing at around 90k events/sec at peak times and doing 200k read/write operations to our databases. It’s not unusual for our analytics Kafka cluster to be handling around 4M messages/sec.

We would love to hear from Software Engineers that have knowledge or an interest in working with some of the technologies we use:

  • Scala: cats, cats-effect, http4s, fs2, circe, doobie
  • Infrastructure: Kubernetes, Kafka, Bigtable, BigQuery, Postgres, Grafana, Prometheus, Apache DataSketches

You will be responsible for building backend systems that power Insights platform, including data pipelines, data storage and compaction mechanisms, and APIs for enabling other teams to access analytics data.

The ideal candidate will have

  • Understanding of functional programming and general software engineering concepts.
  • Experience with Scala programming.
  • Experience with designing systems that have to operate at scale.
  • Interest in batch and stream data processing.
  • Excellent communication skills, in particular, when discussing technical concepts.

We'd be particularly excited if you have one or more of the below

  • Experience with messaging systems (e.g. Kafka or Kinesis)
  • Experience with distributed data stores (e.g. Bigtable, DynamoDB)
  • Experience building and deploying microservices, e.g. using Kubernetes
  • Experience with cloud platforms such as AWS or GCP
  • Familiarity with functional Scala libraries, e.g. fs2, http4s, cats-effect
  • Familiarity with probabilistic data structures, e.g. Apache DataSketches, Bloom Filters

Latest Jobs at Permutive


Permutive Overview

Permutive is the only publisher data platform built on edge computing. We enable publishers to increase their data driven advertising revenue and make revenue diversification a reality, whilst keeping user privacy at the heart of our technology. Some of our customers include BuzzFeed, Business Insider, The Economist, Condé Nast International, Immediate Media and Burda Forward

Website Twitter LinkedIn Archive


Visit Permutive Careers Page (opens new tab)
Permutive Jobs by Location

Check below to see all of the open Permutive jobs organised by office location.

London (8)

New York (7)

Permutive Jobs by Team

Check below to see all of the open Permutive jobs organised by team.

Client Services & Strategy (1)

Engineering & Modelling (4)

Marketing & Communications (1)

Partnerships (1)

Product & Design (3)

Sales & Sales Support (3)

Technical Services (2)