Open Source
Open Source Software that I’ve authored and maintain (or have maintained in the past). I’ve also included some of the more significant contributions I’ve made to other Open Source projects. For details see my GitHub profile.
Maintainer
apache/pekko
An open source fork of Akka after it’s change to a non-Apache license. Graduated to top level project.
Previously Maintained Projects
akka/alpakka
The Alpakka project is an open source initiative to implement stream-aware, reactive, integration pipelines for Java and Scala. It is built on top of Akka Streams, and has been designed from the ground up to understand streaming natively and provide a DSL for reactive and stream-oriented programming, with built-in support for backpressure. Akka Streams is a Reactive Streams and JDK 9+ java.util.concurrent.Flow-compliant implementation and therefore fully interoperable with other implementations.
akka/alpakka-kafka
Alpakka Kafka lets you connect Apache Kafka to Akka Streams. This project was formerly known Akka Streams Kafka and Reactive Kafka originally.
akka/akka-core (Streams)
Akka is a set of open-source libraries for designing scalable, resilient systems that span processor cores and networks. Akka allows you to focus on meeting business needs instead of writing low-level code to provide reliable behavior, fault tolerance, and high performance.
akka/akka-projection
Akka Projections is a library used to build read side processors (read side views from event sourced journals in CQRS architectures) with a variety of sources, processing options, and message delivery semantics.
lightbend/cloudflow (Akka Data Pipelines)
Cloudflow enables you to quickly develop, orchestrate, and operate distributed streaming applications on Kubernetes. I was a member of the original team that developed and open sourced the Cloudflow framework (see first commit).
Author
kafka-lag-exporter
Blog post: Monitor Kafka Consumer Group Latency with Kafka Lag Exporter
I open sourced Kafka Lag Exporter to help users monitor Kafka consumer group lag & latency in their Apache Kafka apps. An Akka Typed application that runs on Kubernetes and exports Promtheus metrics.
connect-prism
Introductory Post, v0.4.0 Features
I’m the author of the node.js connect-prism and grunt-connect-prism libraries. Use prism to record, mock, and proxy HTTP traffic as middleware with the connect middleware framework.
learning-spark
A set of three end-to-end Apache Spark Streaming applications I’ve used in presentations to teach people about Spark.
exactly-once-streams
An engineering report and a set of PoC’s that demonstrate “Exactly Once” message delivery semantics in Apache Kafka using Kafka base clients, Kafka Streams, and Alpakka Kafka.
Contributions
Noteworthy contributions over the years. This is not an exhaustive list of contributions.
| Project | Contribution | Pull Request(s) | Artifacts |
|---|---|---|---|
livekit/agents |
Discovered CWE-532 vulnerability: API secrets exposed in plaintext in certain crash scenarios | PR #1 PR #2 |
GHSA-fr59-pwc6-3phm Fixed in v1.5.2 |
kamon |
Finagle client instrumentation | PR | — |
kamon |
DataDog Trace HTTP Propagation | PR | — |
kafka |
KIP-489: Kafka Consumer Record Latency Metric | — | KIP-489 KAFKA-8656 |
testcontainers-java |
Apache Kafka containerized cluster for testing | PR | — |
akka-projection |
Core engineer in initial release | — | v1.0.0 Release Notes |
akka-corealpakka-kafka |
External Shard Allocation Strategy for Akka Cluster | PR | — |
akka-core |
BoundedSourceQueue API for Akka Streams | PR | — |
akka-core |
Context mapping strategies | PR | Proposal only |
alpakka-kafka |
Rewrite partitioned sources | PR | — |
alpakka-kafka |
Kafka testcontainer support in testkit | PR | Docs |
kafka |
Don’t discard fetched data for paused partitions | PR #1 PR #2 PR #3 |
KAFKA-7548 Blog post |
akka-core |
Log messages DSL for Akka Typed | PR | Docs |
strimzi-kafka-operator |
Helm Chart for Strimzi | PR | Docs |
alpakka-kafka |
Apache Kafka Transactions support | PR #1 PR #2 |
Docs |
kafka |
KIP-270: Scala DSL for Kafka Streams | PR #1 PR #2 |
KIP-270 KAFKA-6670 Docs Collab with Debasish Ghosh |
playframework |
Relative and Canonical URL Path support | PR | Docs |