Currently scala programmer @ Virtuslab with nearly 4 years of professional experience around JVM. Focused on modern, statically typed languages and libraries designed for faster feature development with strong accent on scalability and code maintainability. Believes that simplicity is the key in modern software development.
I examine the challenges and opportunities of using the actor model of computation for programming and execution of scientific workflows. Various interesting aspects of this problem include providing an additional layer of abstraction for designing scientific workflows, implementing typical workflow patterns using the actor model, leveraging event sourcing as a novel approach for workflow state persistence, applying supervision as a fault tolerance model, and parallelization of scientific computations within workflow tasks. In order to properly investigate these problems, I have created Scaflow, an Akka-based programming library and workflow execution engine, and used it to build and run real-life applications.
During this presentation I will briefly describe lessons learned from this experience.