An Interview Process That Works For Me “What is your interview process?” is a question I have answered many times. I have conducted technical interviews for over twenty years and I am proud of the process I have refined in the past decade. It has been extremely effective for hiring high-quality software engineers that are a fit
Choosing a WebAssembly Run-Time The security of the platform is critically dependent on the quality of the WebAssembly run-time that implements the sandbox.
WebAssembly at the IoT Edge: A Motivating Example In a previous article, I shared my excitement for WebAssembly in the context of the Internet of Things (IoT). I am particularly excited about the potential for sharing code, flexibly and securely, between the cloud and the edge. In this article, I provide a motivating example.
Why Am I Excited About WebAssembly? As it continues to evolve, WebAssembly has the potential to be the platform executing an enormous amount of IoT computation.
Our Transition to Renewable Energy: Motivating the Most Challenging Problems in Distributed Computing and IoT With millions of points of control and a mix of cloud and edge computing, the renewable energy grid is a massive, distributed computing platform with unique challenges.
Engineering Management: Three Books and Three Videos I can distill my management philosophy to three accessible books, all of which have an accompanying video lecture.
Masking the Problem: Representing Complex State Without Strings Maybe the industrial world had it right all along.
Version Too A joke is not funny if you have to explain it, but this essay is my attempt to explain a joke.
Twitter: A Love-Hate Relationship We need to look at the real world and not just re-presentations of it.
The State of the Art for IoT Just because a device is connected to the Internet does not make it IoT.
Kubernetes Startup Probes: Getting Your Feet Under You If you will allow me to continue my self-indulgent podiatric joke: startup probes allow you to get your feet underneath you.
SARS-CoV-2 and the Future of Work I will conclude with a call to action. If this blog goes quiet for a while after this, you will understand why.
Reflecting on Our Core Values This is an essay about reflecting on our values to understand what drives them in order to separate our core values from these other strong drivers.
Understanding Our Core Values: An Exercise for Individuals and Teams An exercise in exploring, identifying, expressing, and sharing our core values.
Shared-Nothing Architectures for Server Replication and Synchronization A shared-nothing approach to server replication, notably one that incorporates a shared, distributed journal, is a far more reliable, flexible, and powerful approach, particularly for systems focused on time-series and events.
Rethinking Streaming Workloads with Akka Streams: Part III Combining actors and streams can make problems simpler, with less code to test and maintain, and with a more natural separation of concerns.
On Eliminating Error in Distributed Software Systems I review techniques for eliminating error in software and explain why they are not jointly sufficient for eliminating error in distributed software systems.
Engineering as Sketch Comedy While these sketches are useful for lightening the mood and having a laugh, I think they also provide relevant commentary for understanding engineers and engineering work.
Rethinking Streaming Workloads with Akka Streams: Part II Reimagining a paginated API as a streaming workload.
Observations on Observability The future of operating software systems at scale will look like process engineering.
Rethinking Streaming Workloads with Akka Streams: Part I The Akka Streams API is one of my favourite tools for building reactive, distributed applications. If you are not familiar with it, I published an article on the motivations [https://blog.colinbreck.com/akka-streams-a-motivating-example/] for using the Akka Streams API, as well as an article on how its powerful semantics
Licensing Software for Mutual Success Most enterprises make extensive use of open-source software. Many are attracted by the price: free. Free from the perspective of some people, anyway. Most enterprises also purchase a lot of commercial software and services. I want to explore how licensing terms often discourage using the software most effectively—encouraging suboptimal