My Profile Photo

Ian Tabolt


Hello! I'm a software engieer at Foursquare where I work on our developer platform team, which builds our APIs that make external developers' lives easier by providing Foursquare's own location technology for use in their apps.
Previously I was on the developer systems team, where I worked to make our own developers' lives easier with awesome Scala tooling and build workflows.
Aside from being a professional Scala enthusiast, I am also a stubborn bike commutor, an okay marathon runner, Yankees & Ravens fan, and husband / 2x doggie dad / 1x baby dad.


Resume

Current

 Foursquare

Apr 2017 - Present | New York, NY

Recently began work on the next generation developer API. Previously on our infra team focusing on Scala tooling and infrastructure of Foursquare, including our build workflow (Pants), and core Scala libraries like Spindle and Rogue. I worked to improve the Scala ecosystem in our codebase, which is a monorepo comprised of millions of lines of Scala over thousands of packages.

Previously worked on our venue pipeline built on Hadoop, Scalding, and Spark. The pipeline ingested place records from first and third party sources, performed distributed clustering/conflation, and output a canonical view of the world’s places.

Some recent projects:

  • Upgraded our codebase to Scala 2.12, after dozens of other third party library upgrades to ensure compatibility.
  • Migrated our Rogue library to use reactive streams instead of callback hell for asynchronous MongoDB access.
  • Migrated our MongoDB clusters to a cloud-hosted solution, while avoiding data loss or downtime on the application side.
  • Integrated a Scala formatter into our codebase.
  • Refactored our Spindle Thrift codegen to significantly cut down on generated code.
  • Developed an onboarding project to guide new developers through monorepo setup and usage.

Education

 University of Delaware

Aug 2009 - May 2013 | Newark, DE
BS, Computer Science
Concentration: Artificial Intelligence


Past

 MLB Advanced Media

Jul 2016 - Apr 2017 | New York, NY

I worked on the sports data API (Java 8/Spring/Couchbase), which was a originally developed for MLB, but our team adapted it to NHL, MLS, and other sports. This system served all of the stats and data that powered the streaming services, websites, and apps used by these leagues. Built a responsive job scheduling framework with Scala and Akka (Streams/Actors/HTTP).

 Rowgatta (contractor)

Nov 2017 - Jun 2018 | Brooklyn, NY

Built out scalable server-side microservices using Lightbend Lagom (Scala, Akka, Play Framework, Cassandra, Kafka). Worked with founders, designers, and app developers to deliver backend API requirements for a distributed remote workout class system.

 Aol / ad.com

May 2015 - July 2016 | Baltimore, MD

Scala software engineer working on high performance ad-serving platform, handling impressions, clicks, actions, and RTB - serving and handling billions of concurrent ad requests per day. Our team migrated a large .NET ad serving system to Scala, sending developer happiness through the roof while saving the company tens of thousands per month.

 WordAi / Article Forge

June 2013 - May 2015 | Baltimore, MD

Back-end Scala/Java/PHP software engineer at Cortx, a small company (~2 people at the time) creating NLP-powered tools used by SEOers for content creation needs as an alternative to freelance writers. While at Cortx, I built ArticleForge from scratch - an NLP pipeline that given one or more keywords, gathers relevant content and restructures it “in its own words” as a fresh article.