Arena Tech Blog

Welcome to the Arena tech blog where our team of data scientists and software engineers post about our technical work and day to day life. If you find any of this interesting, please reach out – we’re hiring! You can see our open job positions here.

Here is a list of most recent posts:

  • Jul 24 - Arena’s Cultural Values at Work

    At Arena, defining our culture is as important as the quality of the software we deliver. One emanates from the other. In this blog post I share some of our cultural values, using stories of real-life situations to illustrate how we interact with each other on a daily basis: how we go about decision-making, how we prioritize our work, and what we do when things slip through the cracks.


  • Dec 12 - Cuban Conference Crisis

    A year ago I could never have imagined my last night in Havana. I found myself at the hip Fábrica de Arte Cubano, sitting with a glass of Ron Santiago on the rocks, listening to Bartosz Milewski explain how to achieve determinism in a concurrent system using a data structure called lattice variables (or LVars). Previously, I was unhappily programming in Java doing Android Development for a large tech company. After leaving, I found my current position with a small company, Arena, that decided to write most of their software in OCaml. At my company I was introduced [1] to functional programming concepts and the local FP community here in New York City. When my co-worker, Rudi, discovered that there would be an FP conference, Monad Libre, in Cuba, a country still off limits to American tourists, I knew I had to go.


  • Dec 04 - Go risky on libraries, conservative on infrastructure

    This post was a collaboration between Michelle Micallef and Trevor Smith. Trevor is the VP of engineering at Arena. Michelle is an engineer at Arena

    Getting a company off the ground is an exercise in risk management. When I was hired to build out engineering here at Arena, I was tasked to form an engineering team and choose our founding technologies. These decisions had to be made to maximize stability, while allowing us to innovate quickly. An important choice was what language our engineers would use. There are many ways a software engineer’s day is impacted by the language [1]. I approached these decisions with a risk management mindset. The idea is simple and commonplace: you weigh the risks of a choice compared with the gain to those involved. This pragmatic strategy was reinforced by a friend who advised me during this time to “go risky on libraries, conservative on infrastructure.” This is what we did.