Senior software engineer, full-stack, polyglot
Aktualisiert am 13.02.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 13.02.2024
Verfügbar zu: 80%
davon vor Ort: 0%
DevOps
Rust
Java
Performance
Hochverfügbarkeit
Scala
AWS
Terraform
Verteilte Systeme
Architektur
Deutsch
Muttersprache
Französisch
Muttersprache
Englisch
Verhandlungssicher

Einsatzorte

Einsatzorte

Deutschland, Schweiz, Österreich
möglich

Projekte

Projekte

3 Jahre 6 Monate
2021-01 - heute

architecture and design reviews

Consulting Distributed Systems Engineer Scala Akka Java ...
Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer, Company (digital media measurement and analytics). Ongoing support of the engineering team with the implementation of Scala- and Akka-based microservices:
  • architecture and design reviews
  • code reviews
  • technical questions
  • performance engineering
Scala Akka Java Skalierbarkeit Kubernetes
digital media measurement and analytics
1 Jahr
2023-01 - 2023-12

Built an automation for rendering results

Performance Engineer AWS Linux Terraform ...
Performance Engineer

At Adaptive, I helped to benchmark the messaging platform on Amazon Web Services (AWS) and another major cloud provider.

During the course of the project, I:

  • built the infrastructure provisioning harness required to run the tests on two cloud providers with different scenarios and configurations (instance types, network connectivity, storage, etc.)
  • built an automation for rendering results (latency graphs, experiment parameters, etc.)
  • helped to run benchmarks, analyzing results and investigating performance issues
  • built a tool for automatically provisioning, running and retrieving results

There is a press release from AWS on the topic and the performance testing results are publicly available.

Aeron
AWS Linux Terraform Bash Performance Engineering Python Java
Adaptive Financial Consulting
1 Jahr 5 Monate
2020-10 - 2022-02

infrastructure modernization

Tech Lead Kotlin Java ReactJS ...
Tech Lead

After watching the drone footage of San Francisco in burning orange skies due to wildfires, with the Blade Runner soundtrack playing on top of it, I decided to look for an engagement with a company helping to do something to address climate change. This is how I learned about Leap Energy which provides solutions for connecting distributed energy resources to wholesale energy markets in order to make the electric grid more resilient.

In the role of Technical Lead I focused on projects in the following two areas:

  • infrastructure modernization
    • migration of the self-hosted customized VPN server to a cloud offering (vendor selection, user migration)
    • migration of the self-hosted Kafka cluster to Confluent Cloud (vendor selection, data migration, integration with the monitoring system, service migration and coordinated roll-out)
    • migration of the self-hosted elasticsearch cluster to elastic cloud (vendor selection, data migration, service migration, coordinated roll-out)
  • microservice architecture modernization
    • introduction of in order to document architecture decisions
    • introduction of GRPC as a means for service-to-service communication (replacing direct database access across services and an experimental service-to-service communication via Kafka topics) between Spring Boot services
    • development of a service protocol registry and distribution mechanism (based on protocol buffers) to allow contract-first design and development of the various services
    • introduction of Gradle with Kotlin support as a build tool as a replacement to maven and porting multiple services
    • introduction of jOOQ as a replacement to Hibernate for database access
Kotlin Java ReactJS TypeScript Python Go Spring GRPC Bash Gradle Maven Kafka SQL Elastic Search Terraform AWS
Leap Energy
1 Jahr 3 Monate
2020-07 - 2021-09

Review of the technical design of a single-node Akka application

Consulting Distributed Systems Engineer Akka Scala Java ...
Consulting Distributed Systems Engineer
  • review of the technical design of a single-node Akka application against the business objectives
  • support of the project team with regard to questions and issues arising during the project with regard to the usage of Akka and Scala
Akka Scala Java Aktorsysteme Reactive Design Patterns
2 Monate
2020-03 - 2020-04

Architekturevaluierung eines Event-Sourced Systems

Consulting Distributed Systems Engineer Event Sourcing CQRS Kafka ...
Consulting Distributed Systems Engineer
  • Architecture evaluation of an event-sourced system based on Apache Kafka and Kubernetes
Event Sourcing CQRS Kafka Kubernetes
insurance telematics
1 Monat
2020-02 - 2020-02

Performance Engineering

Consulting Performance Engineer Performance Analyse Performance Measurement Performance Engineering ...
Consulting Performance Engineer
  • Troubleshooting performance issues with an Order Management System (based on Akka Cluster, Kafka and Kubernetes) and setting up a large-scale load test for the system
Performance Analyse Performance Measurement Performance Engineering Kafka Kubernetes Akka Cluster
SwissBorg
3 Monate
2019-10 - 2019-12

Cloud Performance Engineering

Consulting Performance Engineer Performance Engineering Performance Analyse Performance Measurement ...
Consulting Performance Engineer
  • The onboarding of a new strategic client on the Paidy platform brought with it stricter latency requirements (in order to meet the agreed-upon Service Level Agreement)
  • The backend application built on top of Akka Cluster with cluster sharding did not deliver consistent latency in redeployment and failover scenarios
  • I helped the engineering team find and understand the root cause of the latency fluctuations and guided them throughout the process of implementing a solution
Performance Engineering Performance Analyse Performance Measurement Akka Cluster AWS AWS ECS
Paidy
3 Jahre 5 Monate
2016-06 - 2019-10

Ongoing support of the engineering teams

Consulting Architect and Trainer
Consulting Architect and Trainer

Ongoing support of the engineering teams working on the next generation of the PSP (Payment Services Provider) core platform:

  • architecture reviews
  • design and code reviews
  • performance engineering workshops
Wirecard
1 Monat
2019-09 - 2019-09

Core application based on Akka Cluster

Consulting Distributed Systems Engineer Performance Engineering Async Profiler Java VM
Consulting Distributed Systems Engineer
  • A core application based on Akka Cluster had ongoing memory issues, requiring to run virtual machines with a lot of memory (64+ GB) as a workaround
  • I held a performance engineering workshop to show the team how to use the adequate tooling for performance profiling and memory pressure analysis
  • A key result of the workshop was a tenfold decrease of the JVM memory required to run the project
Performance Engineering Async Profiler Java VM
Delivery Hero
1 Jahr 2 Monate
2018-05 - 2019-06

Payment Services

Senior Software Engineer Scala Akka Akka Cluster ...
Senior Software Engineer

  • I joined the Payment Services team at MOIA to help with developing the second version of the payment system based on Scala and Akka
  • The system needed to enable the payment of MOIA trips and needed to integrate with multiple Payment Service Providers while providing strong consistency as well as being highly available

Scala Akka Akka Cluster Akka HTTP SBT Dynamo AWS AWS Kinesis PostgreSQ
MOIA
1 Monat
2018-12 - 2018-12

Cryptocurrency technology and services

Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer
  • Development of a template project for deploying Akka Cluster projects with Kubernetes
Kubernetes Akka Cluster
SwissBorg
7 Monate
2018-03 - 2018-09

Reviewing the system architecture and technical feature designs

Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer

I supported the engineering team during the initial development of the SILO platform (based on Akka Cluster and Scala) by:

  • reviewing the system architecture and technical feature designs
  • providing guidance and best practices with regard to the use of Akka Cluster, Scala and Kubernetes
  • developing the initial project scaffold and core application layer
Reactive design principles Actor systems Akka Akka Cluster Scala Kubernetes
Metaco
2 Monate
2018-05 - 2018-06

Evaluation of the deployment of a split-brain resolution solution

Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer
  • Evaluation of the deployment of a split-brain resolution solution for Akka Cluster deployed with Kubernetes on Amazon Web Services (AWS)
  • At this time, there was no official support for Kubernetes deployments of Akka and therefore I proceeded to analyze the deployment model with regard to different edge-cases that could occur in a split-brain scenario
Distributed Systems Akka Cluster AWS
MOIA (mobility)
1 Monat
2018-03 - 2018-03

Architecture review

Conuslting Distributed Systems Engineer
Conuslting Distributed Systems Engineer
  • Architecture review and code review of an Akka Cluster based application
Delivery Hero
8 Monate
2017-05 - 2017-12

Architecture of the new microservice-based software platform

Consulting Tech Lead
Consulting Tech Lead
  • architecture of the new microservice-based software platform for an existing real-time communication platform
  • design and code reviews
  • hands-on development of the core feature set of the platform (based on Akka, Scala and Scala.js)
telecommunications
10 Monate
2016-08 - 2017-05

Developed an embedded system

Senior Software Engineer
Senior Software Engineer

  • This engagement was a direct result of my work on deploying Akka on the Raspberry PI
  • VCharge developed an embedded system and software solution to help address the issue of maintaining the stability of the electric grid in the presence of increasing renewable generation
  • During this engagement I supported VCharge in building a new version of the low-latency backend service (based on Akka) responsible for aggregating telemetry as well as actuating the IoT devices at the core of the VCharge Grid network

VCharge
6 Monate
2016-02 - 2016-07

Beratung Verteilte Systeme

Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer

DIMOCO initially approached me in order to develop a prototype for an architecture evaluation with Akka Cluster to help make a decision of which technology to use (the other contending technology was VertX). I developed a software prototype deployed on multiple Raspberry PIs to demonstrate the resilience and failover capability of Akka Cluster (unplugging a network cable while transactions were being executed and showing that the processing continues and no transaction is failing makes for a good demonstration).

Akka Cluster was subsequently selected as the technology to use for developing the new version of DIMOCO?s SMS delivery platform. I supported the engineering team in the early stages of the development of the platform by:

  • reviewing the architecture and the technical design
  • regularly reviewing the code
  • providing guidance and best practices with regard to the use of Akka and Akka Cluster
DIMOCO
2 Jahre 4 Monate
2013-12 - 2016-03

Entwicklung einer Media-Platform

Software Engineer
Software Engineer
I joined the engineering team at TalentHouse in order to build the new version of the company site using the Play Framework and Scala.
TalentHouse
2 Jahre 9 Monate
2013-07 - 2016-03

Design und Entwicklung eines Portals für Golfresorts und Hotels

Software Engineer
Software Engineer

Nexxchange provides an all-in-one platform for managing Golf resorts and hotels.

I designed and implemented the online portal that aggregates the tee times of the multiple golf clubs, making them searchable and bookable.

Nexxchange AG

Kompetenzen

Kompetenzen

Top-Skills

DevOps Rust Java Performance Hochverfügbarkeit Scala AWS Terraform Verteilte Systeme Architektur

Produkte / Standards / Erfahrungen / Methoden

Resume:
  • I?m an experienced software engineer working as an independent consultant.
  • My consulting work consists in helping my clients:
    • engineer, deploy and operate highly available and fault-tolerant systems
    • get existing systems to meet predictable performance requirements in the face of increasing load
  • I have significant experience in engineering and operating distributed systems at all levels of the stack, from highlevel architecture down to debugging issues at the kernel or network level. Next to working on client projects I have also explored the topics of cluster membership and distributed consensus, trying to keep up to date with the latest research in this field and sometimes pushing the limit myself.
  • I am author of the book Reactive Web Applications (Manning).
  • I studied telecommunications at the National Institute of Applied Sciences in Lyon which have provided me with a deep understanding of the nature of networks, signals and information theory.
  • I live in Vienna, Austria and enjoy traveling a lot, which leads me to speak at conferences and deliver training courses all around the world. When I?m not working I like to spend time with my family and friends, run, cycle, take photos, scuba-dive, meditate and read.
  • I?m fluent in English, French and German and comfortable working in any of these languages.


Specialities:

Distributed systems, reactive systems, fault-tolerance, resilience, scalability, high availability, performance engineering, distributed consensus, cluster membership, event sourcing and CQRS, message-driven architecture, actor systems, asynchronous programming, functional programming, object-oriented programming, devops.


Training course delivery:

I?m a certified Lightbend Academy trainer and have delivered a number of courses on Akka and Scala.

  • 2020: Company (financial products and services): Lightbend Akka for Java - Professional
  • 2020: Deutsche Bahn Systel (mobility): Lightbend Akka for Java - Expert
  • 2020: Company (digital media measurement and analytics): Lightbend Scala Language - Professional
  • 2020: Company (digital media measurement and analytics): Lightbend Akka for Scala - Professional
  • 2019: Company (financial products and services): Lightbend Akka for Java - Professional
  • 2019: Lunatech (consulting), Netherlands: Lightbend Akka for Scala - Expert
  • 2018: WireCard (financial services), Germany: Lightbend Akka for Java - Professional (multiple times)
  • 2017: WireCard (financial services), Germany: Lightbend Akka for Java - Expert
  • 2017: WireCard (financial services), Germany: Lightbend Akka for Java - Professional
  • 2017: In cooperation with OpenForce: Lightbend Akka for Scala - Expert (public training course held in Vienna)
  • 2017: In cooperation with Trifork: Lightbend Akka for Scala - Expert (public training at Scala Days 2017 Copenhagen)
  • 2016: Deveryware, France: Akka Lightbend for Java - Professional
  • 2016: DIMOCO, Austria: Lightbend Akka for Java - Professional


Personal Research & Development:

  • Rapid membership protocol implementation in Swift
  • Building a 10000 node Akka Cluster with Rapid
  • Adaptive accrual failure detector
  • Visualizing Akka?s Cluster Membership with LEDs on the Raspberry PI


Open-source project contributions:

  • Contributions to Akka
  • Contributions to Play Framework versions 1 and 2
  • Committer for Makumba, a Web 1.0 framework for rapid application development
  • Smaller contributions to various open-source projects I used over the years


Speaking:

  • I frequently give talks at conferences (Devoxx, Scala Days, GeeCon, JFocus, ?) and user group meetings


Tools & Technologies:

  • The following is an (incomplete) list of tools and technologies that I have experience with


JVM frameworks and tooling:

  • profilers and memory analysis tools: Async Profiler, YourKit, VisualVM, TDA (Thread Dump Analyzer), etc.
  • reactive libraries and frameworks: Akka, Akka Cluster, Akka HTTP, Akka Streams, Lagom, Play Framework, Kalix, Vert.X, RxJava, etc.
  • java libraries and frameworks: Servlet, JSP, JSF, Struts, Freemarker, Drools, Spring, Spring Boot, etc.
  • build tools: Ant, Maven, Gradle, SBT, etc.
  • database access: jOOQ, Hibernate, R2DBC, etc.


Infrastructure:

  • basics: Linux server administration, bash scripting, etc.
  • infrastructure automation tools: Terraform, Packer, Chef, Puppet, Ansible
  • CI/CD: Jenkins, CircleCI, GitHub Actions, GitLab, etc.
  • containers and container orchestration: docker, kubernetes, nomad, etc.
  • monitoring: Nagios, Monit, Prometheus, Grafana, Datadog, etc.
  • cloud providers: AWS, GCP, Azure


Data / Streaming:

  • big data: Hadoop, Spark
  • messaging: Kafka, RabbitMQ, Aeron
  • workflows: AirFlow, Temporal
  • search: elasticsearch, SOLR, Lucene

Betriebssysteme

Linux
Experte

Programmiersprachen

Java
Experte
Scala
Experte
Rust
Fortgeschritten
Go
Fortgeschritten
Python
Fortgeschritten
C
Basics

Datenbanken

MySQL
Oracle
PostgreSQL
MongoDB
DynamoDB
Cassandra
Redis

Datenkommunikation

Verteilte Systeme
Experte
Distributed Consensus
Experte
REST
Experte
Aktorsysteme
Experte

Einsatzorte

Einsatzorte

Deutschland, Schweiz, Österreich
möglich

Projekte

Projekte

3 Jahre 6 Monate
2021-01 - heute

architecture and design reviews

Consulting Distributed Systems Engineer Scala Akka Java ...
Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer, Company (digital media measurement and analytics). Ongoing support of the engineering team with the implementation of Scala- and Akka-based microservices:
  • architecture and design reviews
  • code reviews
  • technical questions
  • performance engineering
Scala Akka Java Skalierbarkeit Kubernetes
digital media measurement and analytics
1 Jahr
2023-01 - 2023-12

Built an automation for rendering results

Performance Engineer AWS Linux Terraform ...
Performance Engineer

At Adaptive, I helped to benchmark the messaging platform on Amazon Web Services (AWS) and another major cloud provider.

During the course of the project, I:

  • built the infrastructure provisioning harness required to run the tests on two cloud providers with different scenarios and configurations (instance types, network connectivity, storage, etc.)
  • built an automation for rendering results (latency graphs, experiment parameters, etc.)
  • helped to run benchmarks, analyzing results and investigating performance issues
  • built a tool for automatically provisioning, running and retrieving results

There is a press release from AWS on the topic and the performance testing results are publicly available.

Aeron
AWS Linux Terraform Bash Performance Engineering Python Java
Adaptive Financial Consulting
1 Jahr 5 Monate
2020-10 - 2022-02

infrastructure modernization

Tech Lead Kotlin Java ReactJS ...
Tech Lead

After watching the drone footage of San Francisco in burning orange skies due to wildfires, with the Blade Runner soundtrack playing on top of it, I decided to look for an engagement with a company helping to do something to address climate change. This is how I learned about Leap Energy which provides solutions for connecting distributed energy resources to wholesale energy markets in order to make the electric grid more resilient.

In the role of Technical Lead I focused on projects in the following two areas:

  • infrastructure modernization
    • migration of the self-hosted customized VPN server to a cloud offering (vendor selection, user migration)
    • migration of the self-hosted Kafka cluster to Confluent Cloud (vendor selection, data migration, integration with the monitoring system, service migration and coordinated roll-out)
    • migration of the self-hosted elasticsearch cluster to elastic cloud (vendor selection, data migration, service migration, coordinated roll-out)
  • microservice architecture modernization
    • introduction of in order to document architecture decisions
    • introduction of GRPC as a means for service-to-service communication (replacing direct database access across services and an experimental service-to-service communication via Kafka topics) between Spring Boot services
    • development of a service protocol registry and distribution mechanism (based on protocol buffers) to allow contract-first design and development of the various services
    • introduction of Gradle with Kotlin support as a build tool as a replacement to maven and porting multiple services
    • introduction of jOOQ as a replacement to Hibernate for database access
Kotlin Java ReactJS TypeScript Python Go Spring GRPC Bash Gradle Maven Kafka SQL Elastic Search Terraform AWS
Leap Energy
1 Jahr 3 Monate
2020-07 - 2021-09

Review of the technical design of a single-node Akka application

Consulting Distributed Systems Engineer Akka Scala Java ...
Consulting Distributed Systems Engineer
  • review of the technical design of a single-node Akka application against the business objectives
  • support of the project team with regard to questions and issues arising during the project with regard to the usage of Akka and Scala
Akka Scala Java Aktorsysteme Reactive Design Patterns
2 Monate
2020-03 - 2020-04

Architekturevaluierung eines Event-Sourced Systems

Consulting Distributed Systems Engineer Event Sourcing CQRS Kafka ...
Consulting Distributed Systems Engineer
  • Architecture evaluation of an event-sourced system based on Apache Kafka and Kubernetes
Event Sourcing CQRS Kafka Kubernetes
insurance telematics
1 Monat
2020-02 - 2020-02

Performance Engineering

Consulting Performance Engineer Performance Analyse Performance Measurement Performance Engineering ...
Consulting Performance Engineer
  • Troubleshooting performance issues with an Order Management System (based on Akka Cluster, Kafka and Kubernetes) and setting up a large-scale load test for the system
Performance Analyse Performance Measurement Performance Engineering Kafka Kubernetes Akka Cluster
SwissBorg
3 Monate
2019-10 - 2019-12

Cloud Performance Engineering

Consulting Performance Engineer Performance Engineering Performance Analyse Performance Measurement ...
Consulting Performance Engineer
  • The onboarding of a new strategic client on the Paidy platform brought with it stricter latency requirements (in order to meet the agreed-upon Service Level Agreement)
  • The backend application built on top of Akka Cluster with cluster sharding did not deliver consistent latency in redeployment and failover scenarios
  • I helped the engineering team find and understand the root cause of the latency fluctuations and guided them throughout the process of implementing a solution
Performance Engineering Performance Analyse Performance Measurement Akka Cluster AWS AWS ECS
Paidy
3 Jahre 5 Monate
2016-06 - 2019-10

Ongoing support of the engineering teams

Consulting Architect and Trainer
Consulting Architect and Trainer

Ongoing support of the engineering teams working on the next generation of the PSP (Payment Services Provider) core platform:

  • architecture reviews
  • design and code reviews
  • performance engineering workshops
Wirecard
1 Monat
2019-09 - 2019-09

Core application based on Akka Cluster

Consulting Distributed Systems Engineer Performance Engineering Async Profiler Java VM
Consulting Distributed Systems Engineer
  • A core application based on Akka Cluster had ongoing memory issues, requiring to run virtual machines with a lot of memory (64+ GB) as a workaround
  • I held a performance engineering workshop to show the team how to use the adequate tooling for performance profiling and memory pressure analysis
  • A key result of the workshop was a tenfold decrease of the JVM memory required to run the project
Performance Engineering Async Profiler Java VM
Delivery Hero
1 Jahr 2 Monate
2018-05 - 2019-06

Payment Services

Senior Software Engineer Scala Akka Akka Cluster ...
Senior Software Engineer

  • I joined the Payment Services team at MOIA to help with developing the second version of the payment system based on Scala and Akka
  • The system needed to enable the payment of MOIA trips and needed to integrate with multiple Payment Service Providers while providing strong consistency as well as being highly available

Scala Akka Akka Cluster Akka HTTP SBT Dynamo AWS AWS Kinesis PostgreSQ
MOIA
1 Monat
2018-12 - 2018-12

Cryptocurrency technology and services

Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer
  • Development of a template project for deploying Akka Cluster projects with Kubernetes
Kubernetes Akka Cluster
SwissBorg
7 Monate
2018-03 - 2018-09

Reviewing the system architecture and technical feature designs

Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer

I supported the engineering team during the initial development of the SILO platform (based on Akka Cluster and Scala) by:

  • reviewing the system architecture and technical feature designs
  • providing guidance and best practices with regard to the use of Akka Cluster, Scala and Kubernetes
  • developing the initial project scaffold and core application layer
Reactive design principles Actor systems Akka Akka Cluster Scala Kubernetes
Metaco
2 Monate
2018-05 - 2018-06

Evaluation of the deployment of a split-brain resolution solution

Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer
  • Evaluation of the deployment of a split-brain resolution solution for Akka Cluster deployed with Kubernetes on Amazon Web Services (AWS)
  • At this time, there was no official support for Kubernetes deployments of Akka and therefore I proceeded to analyze the deployment model with regard to different edge-cases that could occur in a split-brain scenario
Distributed Systems Akka Cluster AWS
MOIA (mobility)
1 Monat
2018-03 - 2018-03

Architecture review

Conuslting Distributed Systems Engineer
Conuslting Distributed Systems Engineer
  • Architecture review and code review of an Akka Cluster based application
Delivery Hero
8 Monate
2017-05 - 2017-12

Architecture of the new microservice-based software platform

Consulting Tech Lead
Consulting Tech Lead
  • architecture of the new microservice-based software platform for an existing real-time communication platform
  • design and code reviews
  • hands-on development of the core feature set of the platform (based on Akka, Scala and Scala.js)
telecommunications
10 Monate
2016-08 - 2017-05

Developed an embedded system

Senior Software Engineer
Senior Software Engineer

  • This engagement was a direct result of my work on deploying Akka on the Raspberry PI
  • VCharge developed an embedded system and software solution to help address the issue of maintaining the stability of the electric grid in the presence of increasing renewable generation
  • During this engagement I supported VCharge in building a new version of the low-latency backend service (based on Akka) responsible for aggregating telemetry as well as actuating the IoT devices at the core of the VCharge Grid network

VCharge
6 Monate
2016-02 - 2016-07

Beratung Verteilte Systeme

Consulting Distributed Systems Engineer
Consulting Distributed Systems Engineer

DIMOCO initially approached me in order to develop a prototype for an architecture evaluation with Akka Cluster to help make a decision of which technology to use (the other contending technology was VertX). I developed a software prototype deployed on multiple Raspberry PIs to demonstrate the resilience and failover capability of Akka Cluster (unplugging a network cable while transactions were being executed and showing that the processing continues and no transaction is failing makes for a good demonstration).

Akka Cluster was subsequently selected as the technology to use for developing the new version of DIMOCO?s SMS delivery platform. I supported the engineering team in the early stages of the development of the platform by:

  • reviewing the architecture and the technical design
  • regularly reviewing the code
  • providing guidance and best practices with regard to the use of Akka and Akka Cluster
DIMOCO
2 Jahre 4 Monate
2013-12 - 2016-03

Entwicklung einer Media-Platform

Software Engineer
Software Engineer
I joined the engineering team at TalentHouse in order to build the new version of the company site using the Play Framework and Scala.
TalentHouse
2 Jahre 9 Monate
2013-07 - 2016-03

Design und Entwicklung eines Portals für Golfresorts und Hotels

Software Engineer
Software Engineer

Nexxchange provides an all-in-one platform for managing Golf resorts and hotels.

I designed and implemented the online portal that aggregates the tee times of the multiple golf clubs, making them searchable and bookable.

Nexxchange AG

Kompetenzen

Kompetenzen

Top-Skills

DevOps Rust Java Performance Hochverfügbarkeit Scala AWS Terraform Verteilte Systeme Architektur

Produkte / Standards / Erfahrungen / Methoden

Resume:
  • I?m an experienced software engineer working as an independent consultant.
  • My consulting work consists in helping my clients:
    • engineer, deploy and operate highly available and fault-tolerant systems
    • get existing systems to meet predictable performance requirements in the face of increasing load
  • I have significant experience in engineering and operating distributed systems at all levels of the stack, from highlevel architecture down to debugging issues at the kernel or network level. Next to working on client projects I have also explored the topics of cluster membership and distributed consensus, trying to keep up to date with the latest research in this field and sometimes pushing the limit myself.
  • I am author of the book Reactive Web Applications (Manning).
  • I studied telecommunications at the National Institute of Applied Sciences in Lyon which have provided me with a deep understanding of the nature of networks, signals and information theory.
  • I live in Vienna, Austria and enjoy traveling a lot, which leads me to speak at conferences and deliver training courses all around the world. When I?m not working I like to spend time with my family and friends, run, cycle, take photos, scuba-dive, meditate and read.
  • I?m fluent in English, French and German and comfortable working in any of these languages.


Specialities:

Distributed systems, reactive systems, fault-tolerance, resilience, scalability, high availability, performance engineering, distributed consensus, cluster membership, event sourcing and CQRS, message-driven architecture, actor systems, asynchronous programming, functional programming, object-oriented programming, devops.


Training course delivery:

I?m a certified Lightbend Academy trainer and have delivered a number of courses on Akka and Scala.

  • 2020: Company (financial products and services): Lightbend Akka for Java - Professional
  • 2020: Deutsche Bahn Systel (mobility): Lightbend Akka for Java - Expert
  • 2020: Company (digital media measurement and analytics): Lightbend Scala Language - Professional
  • 2020: Company (digital media measurement and analytics): Lightbend Akka for Scala - Professional
  • 2019: Company (financial products and services): Lightbend Akka for Java - Professional
  • 2019: Lunatech (consulting), Netherlands: Lightbend Akka for Scala - Expert
  • 2018: WireCard (financial services), Germany: Lightbend Akka for Java - Professional (multiple times)
  • 2017: WireCard (financial services), Germany: Lightbend Akka for Java - Expert
  • 2017: WireCard (financial services), Germany: Lightbend Akka for Java - Professional
  • 2017: In cooperation with OpenForce: Lightbend Akka for Scala - Expert (public training course held in Vienna)
  • 2017: In cooperation with Trifork: Lightbend Akka for Scala - Expert (public training at Scala Days 2017 Copenhagen)
  • 2016: Deveryware, France: Akka Lightbend for Java - Professional
  • 2016: DIMOCO, Austria: Lightbend Akka for Java - Professional


Personal Research & Development:

  • Rapid membership protocol implementation in Swift
  • Building a 10000 node Akka Cluster with Rapid
  • Adaptive accrual failure detector
  • Visualizing Akka?s Cluster Membership with LEDs on the Raspberry PI


Open-source project contributions:

  • Contributions to Akka
  • Contributions to Play Framework versions 1 and 2
  • Committer for Makumba, a Web 1.0 framework for rapid application development
  • Smaller contributions to various open-source projects I used over the years


Speaking:

  • I frequently give talks at conferences (Devoxx, Scala Days, GeeCon, JFocus, ?) and user group meetings


Tools & Technologies:

  • The following is an (incomplete) list of tools and technologies that I have experience with


JVM frameworks and tooling:

  • profilers and memory analysis tools: Async Profiler, YourKit, VisualVM, TDA (Thread Dump Analyzer), etc.
  • reactive libraries and frameworks: Akka, Akka Cluster, Akka HTTP, Akka Streams, Lagom, Play Framework, Kalix, Vert.X, RxJava, etc.
  • java libraries and frameworks: Servlet, JSP, JSF, Struts, Freemarker, Drools, Spring, Spring Boot, etc.
  • build tools: Ant, Maven, Gradle, SBT, etc.
  • database access: jOOQ, Hibernate, R2DBC, etc.


Infrastructure:

  • basics: Linux server administration, bash scripting, etc.
  • infrastructure automation tools: Terraform, Packer, Chef, Puppet, Ansible
  • CI/CD: Jenkins, CircleCI, GitHub Actions, GitLab, etc.
  • containers and container orchestration: docker, kubernetes, nomad, etc.
  • monitoring: Nagios, Monit, Prometheus, Grafana, Datadog, etc.
  • cloud providers: AWS, GCP, Azure


Data / Streaming:

  • big data: Hadoop, Spark
  • messaging: Kafka, RabbitMQ, Aeron
  • workflows: AirFlow, Temporal
  • search: elasticsearch, SOLR, Lucene

Betriebssysteme

Linux
Experte

Programmiersprachen

Java
Experte
Scala
Experte
Rust
Fortgeschritten
Go
Fortgeschritten
Python
Fortgeschritten
C
Basics

Datenbanken

MySQL
Oracle
PostgreSQL
MongoDB
DynamoDB
Cassandra
Redis

Datenkommunikation

Verteilte Systeme
Experte
Distributed Consensus
Experte
REST
Experte
Aktorsysteme
Experte

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.