I’m a software engineer and architect with a focus on distributed systems, machine learning and data science. I combine
solid software engineering skills with good machine learning know-how to ensure that developed machine learning solutions
also run reliably in production and are maintainable. I’m passionate about technology, a continuous learner and a contributor
to several open source projects. I enjoy working in teams and helping others to meet project goals more effectively.
event sourcing and CQRS,
event stream processing,
See also Stories for more details.
Since 04.2018, Freelance machine learning engineer
- Development of a scalable face recognition system. Usage of deep neural networks for face detection and learning of
face embeddings. One-shot learning of a person’s identity and face recognition via nearest neighbor search in embedding
space. Scalability via data parallelism.
- Responsible for all machine learning and software engineering aspects of the project including deployment to production
Since 04.2011, Freelance software engineer, machine learning engineer and data scientist
- Software development and consulting services with a focus on distributed systems, system integration, data-intensive
applications, machine learning and data science.
- Sabbatical year from 05.2017 to 03.2018 to extend my knowledge about machine learning, data science, statistics and
02.2017 - 03.2018, Freelance software engineer and consultant
fine.lines.software GmbH, https://bullet.io
- Design and implementation of a distributed system architecture based on event sourcing with explicit causality that
also includes mobile devices.
- Consulting activities and development of prototypes.
09.2014 - 08.2017, Freelance software architect and engineer
Red Bull Media House, http://www.redbullmediahouse.com
- Global distribution of the in-house digital asset management platform. Responsible for architecture, design and
- Conception and development of Eventuate, a toolkit for event sourcing
and event collaboration at global scale with causal consistency.
10.2015 - 07.2017, Freelance software architect and engineer
agido GmbH, http://www.agido.com
- Architecture and design consulting for an online sports betting web application with an event sourcing and event
stream processing architecture.
- Usage of Eventuate as technical basis for the web application backend. Development of streaming data analytics
extensions for Eventuate.
10.2013 – 02.2014, Freelance software engineer
Lightbend, http://www.lightbend.com/ (formerly Typesafe)
03.2012 – 10.2013, Freelance software architect and engineer
Eligotech BV, http://www.eligotech.com
- Development of an E-Wallet management web service for customers in the online gambling industry.
- Conception and development of Eventsourced, an open source project for
building reliable, scalable and distributed event-sourced applications in Scala.
02.2011 – 04.2011, Software architect and engineer
- Development of scalability and high-availability concepts and prototypes for the Talend Integration Factory.
01.2005 – 01.2011, Lead software architect and engineer
InterComponentWare AG, https://icw-global.com/
- Conception and development of the Open eHealth Integration Platform (IPF), an eHealth
integration platform on top of Apache Camel. Development and deployment of IPF applications in several international
- Development of LifeSensor, a web-based personal health record.
09.2000 – 12.2004, Senior software architect and engineer
LION bioscience AG, http://www.lionbioscience.com
- Development and optimization of hierarchical clustering algorithms for the drug discovery pipeline of an international
- Development of an integration platform for globally distributed chemical compute services.
- Development of an activity tracking web application for pharmaceutical research projects.
02.1999 – 08.2000, Software developer, Research assistant
CAME, University of Salzburg, http://uni-salzburg.at
- Development of algorithms and software for ab-initio protein structure prediction. Application of statistical mechanics
to evaluate generated protein structures.
07.1998 – 01.1999, Software developer
Austrian Red Cross, http://www.roteskreuz.at/
- Development of a patient transportation management system.
- Programming languages: Scala, Java, Python, C/C++, Haskell.
- Machine learning: scikit-learn, Tensorflow, Keras, Spark MLlib, R, PyMC3.
- Stream processing: Spark Streaming, Akka Streams, Kafka Streams.
- Databases: MySQL, PostgreSQL, Oracle, Cassandra, HBase, DynamoDB, MongoDB, LMDB, LevelDB, …
- Cloud computing: Amazon Web Services and Google Cloud Platform.
- Java SE and Java EE stack plus many other Java libraries and frameworks.
- Lightbend Reactive Platform plus many other Scala libraries and frameworks.
- Confluent Platform (Apache Kafka and its ecosystem) and Reactive Kafka.
Open source projects
The following is an incomplete list of open source projects I’m currently working on or worked on in the past. See also
Stories for some details and my Github account for a complete list.
- Eventuate. A toolkit for event sourcing and event collaboration at global
scale with causal consistency. Founder and lead developer during my work at the Red Bull Media House and active contributor
- Machine learning projects such as
- Bayesian machine learning. Collection of notebooks related to
Bayesian machine learning. Extended when I’m writing new articles on that topic.
- Face recognition. An introduction to face recognition with deep neural
networks and a lightweight example implementation.
- Machine learning basics. Stanford machine learning course
exercises re-written in Python and scikit-learn.
- Akka. A toolkit for building highly concurrent, distributed, and resilient message-driven applications
for Java and Scala. Contributed Akka Persistence and Akka Camel.
- Streamz. A combinator library for integrating Functional Streams for Scala (FS2),
Akka Streams and Apache Camel. Personal project that I’m still actively developing. Functional programming API on top of
Apache Camel and successor of Akka Camel.
- akka-persistence-cassandra. Storage plugin for Akka Persistence.
Started as personal project and now officially maintained by Lightbend.
- akka-stream-eventsourcing. Personal project that brings to Akka
Streams what Akka Persistence brings to Akka Actors: persistence via event sourcing. This is experimental work, inactive
at the moment.
- Eventsourced. A library for building reliable, scalable and distributed
event-sourced applications in Scala. Founder and lead developer during my work at Eligotech. Evolved into Akka Persistence
and is not maintained any more.
- Open eHealth Integration Platform. A platform for developing eHealth integration
solutions. Founder and lead developer during my work at ICW.
- Apache Camel. An integration framework based on known Enterprise Integration Patterns.
Contributed several integration components as well as core functionality during my work on the Open eHealth Integration
- 11.2015, Reactive Systems Hamburg -
Event Sourcing and CQRS with Akka Persistence and Eventuate.
- 10.2015, Scala User Group Munich -
Event Sourcing and CQRS with Akka Persistence and Eventuate.
- 06.2011, Scala eXchange 2011 -
Connecting Akka to the Rest of the World.
- 11.2009, W-JAX, Munich - Die Open eHealth Integration Platform.
- 05.2009, ICW Developer Conference, Walldorf - The Open eHealth Integration Platform.
- 05.2008, ICW Developer Conference, Walldorf - Instance-based Security with the Security Annotation Framework.
- 11.2007, SOACon, Munich - Implementierung von Enterprise Integration Patterns auf einem JBI ESB.
- 1997, MS in Chemistry (Mag. rer. nat.) with distinction, Karl-Franzens Universität Graz.
- 1996, Various courses in computer science, Karl-Franzens Universität Graz.