(Week 5) Thoughts After Finishing the First Project
Kevin Fleming works at Bloomberg. I am still confused about his role. He’s definitely not the cto (he corrected someone on this). From his linkedin: “Member of the CTO Office at Bloomberg LP”. When asked about his day to day, he responded that he shows up to work with one task in mind and leaves having done several. He has a generalist skillset, leaning more on coordinating engineers than implementing the tech itself.
The requirements of his position seem crazy difficult (to me). I was extraordinarily impressed with his ability to move through the stack at Bloomberg without gaps in knowledge, although nobody really pressed him on any part of it.
Kevin started by explaining what Bloomberg does. It’s a financial company that employs journalists and engineers. Their main product is a service called “Bloomberg Professional Services”. It’s marketed as a terminal that lets investors communicate with each other and have access to information at crazy speeds. There are only ~325,000 customers with terminals, but each customer pays 2000 dollars a month. That adds up to 7.8 billion dollars annually.
He talked about technical challenges Bloomberg faces. He described their efforts in reducing latency to 100ms for all outbound information related to new stories. For example, if the New York Times posts a story, Bloomberg is expected to log it and respond in 100 milliseconds or less, which is an impressive feat considering how many different news sources they keep track of.
The tech stack is giant. Kevin probably listed twenty-five to thirty different technologies. These range from server software, data processing software, distributed computing software, interfaces, database software, and more. There’s certainly no way I could keep track of it all.
I found that the talk had so many insights. It was interesting to see how a massive company changes open source tech. For example, he described improvements made to jupyter: moving menu items around to match real world expectations. This made sense to me, and has real world effects on software that people use. Solr is another project Bloomberg has contributed to. The impetus for the improvements is the 100ms latency edge that Bloomberg tries to maintain, and so they needed to make improvements to Solr in order to achieve that.
I also liked his discussion of netflix’s ‘chaos monkey’. Chaos monkey is a tool developed at Netflix that has the sole purpose of breaking things in netflix’s CDN, and then reporting those errors to the responsible parties. He categorized this under the umbrella of ‘chaos engineering’. It’s a little buzzwordy, but the description is apt.