Curriculum vitæ

Peter Bourgon

peter@bourgon.org · https://peter.bourgon.org/cv

I'm a distributed systems and infrastructure engineer with more than 15 years of experience building large, fast, and reliable software. I'm an expert Go programmer, with multiple large-scale projects to my credit, strong ties to the community, and a commitment to education and mentoring. Outside of my professional work, I like to stay active in the open-source community. Selected projects include Go kit, a sort of standard library for microservices in Go; and OK Log, a distributed log management system.

My areas of interest include CRDTs and coördination-free systems, observability, microservices and dev/ops tools, and Go best practices, including mentoring and training. Some selected talks and articles include:

For more of my values, see my About page. For all of my talks and workshops, see my Talks page. For my work history and education, see below. For anything else, you can e-mail me, at peter@bourgon.org.

2017 – now

Fastly, Berlin/San Francisco

On the Data team, I maintained and hardened the infrastructure that powers billing, real-time and historical stats, and customer logging.

On the Production Engineering team, I led a migration of the company from a heterogeneous mix of monitoring tools to Prometheus. Most of my work was focused on developer outreach, embedding in teams to teach best practices around instrumentation, dashboards, and alerts.

I'm currently working on a research project related to distributed state in the Office of the CTO.

2015 – 2017

Weaveworks, Berlin/London

Weaveworks acquired my infrastructure mapping and monitoring side project, which became Weave Scope. At Weaveworks I continued to develop Scope, bootstrapped Weave Cloud on AWS with Kubernetes, maintained and improved the gossip and CRDT library Weave Mesh, and developed initial versions of the change management tool Weave Flux.

2012 – 2015

SoundCloud, Berlin

On the Discovery team, I was the lead architect and engineer for search. I migrated us from Solr to Elasticsearch, rebuilt the indexing and query pipelines, and integrated machine learning models for ranking and relevance. I focused on latency KPIs, operational (dev/ops) simplicity, and scalability. That infrastructure continues to power the search product today.

On the Activities team, I rebuilt the infrastructure that powers most of SoundCloud's event feeds to meet orders-of-magnitude increases in growth. At the core is Roshi, an open-source, CRDT-based distributed system for events. Several major product features, including the SoundCloud stream, were powered by Roshi.

On the Infrastructure team, I developed a next-generation containerized application platform based on The Datacenter as a Computer. I was the technical lead for the complete ecosystem: a container supervisor, a cluster scheduler, a service discovery system based on Consul, and the necessary glue components for them to interact. (Full disclosure: the project was canceled.)

2010 – 2012

IPTEGO, Berlin

IPTEGO was a small company that made a network monitoring product called PALLADION. I contributed several protocol analyzers, including RTCP, MEGACO, DIAMETER, and RTP. In time, I moved to the core technology group, and built several distributed systems that scaled the product to continent-sized installations at major telecoms. Eventually, I became a product manager for that group, and (among other things) was responsible for build and release management.

I left when IPTEGO was acquired by Acme Packet. Around a year later, Acme Packet was acquired by Oracle.

2009 – 2010

Sabbatical, Johannesburg

I spent a year in Johannesburg, South Africa, volunteering for several NGOs, and contributing to open-source and personal projects.

2006 – 2009

Bloomberg, New York City

Bloomberg is an information services company, focusing on financial data. I was an engineer on the BLAW team, which provided research tools for corporate lawyers. I focused on BBLS, a federated (distributed) legal document search engine. I scaled BBLS from dozens to thousands of concurrent users, and from tens- to hundreds-of-millions of documents. My job involved defining and maintaining strict SLAs, system health monitoring, and code quality control measures.

2002 – 2006

ADTRAN, Huntsville

ADTRAN manufactures network equipment for carriers and the enterprise. I was a co-op student engineer (like a recurring internship) on several different teams. I implemented SNMP and TFTP features on embedded-class hardware, and developed multiple new features for ADTRAN's routers and switches, with an emphasis on security and VPN technologies.

2001 – 2006

Clemson University, Clemson

I earned a Bachelor of Science (B.S.) in Computer Engineering, which is a mix of pure Computer Science and Electrical Engineering. I emphasized software engineering and network (distributed) programming. I graduated with honors, and a minor in mathematics.