Rafal is a software engineer with 12 years of experience in C, Erlang, and Elixir. He has worked on various distributed systems, ranging from tiny clusters on microcontrollers to some of the largest chat servers in the world.
Having consulted on many real-world projects, he has come to believe that clean architecture, ruthless simplicity, and a principled stance towards testing for correctness are required for software to serve its business purpose successfully in the long run.
Currently, Rafal is a software engineer at Whatnot, a rapidly growing live shopping platform.
What if we could apply a combinator to an entire system to ensure that it meets
SLAs? Such a construct exists, and it's called a feeback control loop. By iteratively applying a controller function to the output of our system, we can steer its behavior without any knowledge of the inner workings. This high-level take on Control Theory turns out to be easily implemented in functional languages, such as Elixir.
Because we rely only on functions to build our control schemes, we can easily nest them to manage more that one parameter of the system. This philosophy resulted in a framework that's now used in ensuring the performance of Grindr's production systems in the presence of uncertainty.
For example: if our web service fails to meet the SLA for any reason, the controller function will direct the system to drop a fraction of incoming requests, until all the requests that are accepted, remain within SLA.