Research Fellow at SZTAKI (Institute for Computer Science and Control)
Budapest, Central Hungary
Join Prog.AI to see contacts
Join Prog.AI to see contacts
Summary
🤩
Rockstar
🎓
Top School
David Karnok is a research-focused software engineer with 14 years of experience specializing in reactive systems and backend development, currently a Research Fellow at SZTAKI in Budapest. He has made substantial open-source contributions to seminal projects like Reactor, RxJava, Helidon and Rx.NET, improving operator correctness, concurrency handling, and lock-free disposables across JVM and .NET reactive ecosystems. His work emphasizes robust error management, specification compliance and performance-sensitive fixes—often at the operator and disposal level where subtle bugs hide. Trained in both mechanical engineering and computer science at BME, he brings a systems-thinking approach that bridges rigorous research with production-grade engineering. Colleagues would note his knack for finding and fixing concurrency edge cases and for clarifying behavior through improved documentation and tests. He is actively exploring large language models for cosmological problems, combining hands-on coding with curiosity-driven research.
14 years of coding experience
Master of Science (MSc), Mechanical Engineering & Computer Science, Master of Science (MSc), Mechanical Engineering & Computer Science at Budapest University of Technology and Economics
RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.
Role in this project:
Backend Developer
Contributions:136 releases, 92 reviews, 1888 commits in 9 years 3 months
Contributions summary:David's contributions center around implementing core features and error handling within the RxJava library, particularly related to the Completable, Maybe, and Single reactive types. They focused on improvements around correct disposal behavior and error management, addressing issues in concurrent operations such as flatMap and various merge and sequence operations. Additionally, the user implemented new operators and expanded the existing ones, involving improvements in their internal working and javadoc clarification.
Contributions:5 reviews, 201 commits, 177 PRs in 5 years 3 months
Contributions summary:David focused on enhancing the performance and stability of the Rx.NET library's core components. They implemented lock-free methods for several key classes, including `MultipleAssignmentDisposable`, `AsyncLock`, `CompositeDisposable`, `AutoDetachObserver`, `PriorityQueue`, and `ObserveOnObserverNew`. Additionally, they refactored and improved existing operators, such as `Concat`, `TakeUntil`, and `RetryWhen`, and fixed memory and cancellation-related issues.
dotnetreactive-extensions
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.