Karl Nilsson is a seasoned software engineer with 14 years focused on designing and implementing distributed, fault-tolerant systems, currently working on RabbitMQ through Broadcom in Brighton. He brings deep core-server and backend expertise across Erlang, .NET, and language tooling, having contributed to high-profile projects like RabbitMQ (server, management, delayed exchange) and MonoDevelop/F# tooling. Karl’s work blends architecture and hands-on engineering—optimising stream queues, Raft implementations, and build/test automation—while also improving developer experience through language server and IDE enhancements. Notably, he pairs systems-level performance tuning with practical DevOps improvements, such as migrating build systems and adding end-to-end tests, reflecting a pragmatic approach to reliability. His academic background in linguistics and cognitive science hints at a thoughtful, human-centered perspective on complex technical problems.
14 years of coding experience
17 years of employment as a software developer
BA, Linguistics, Cognitive Science, 2:1, BA, Linguistics, Cognitive Science, 2:1 at University of Sussex
English Language and Literature/Letters, English Language and Literature/Letters at Lund University
A Multi-Raft implementation for Erlang and Elixir that strives to be efficient and make it easier to use multiple Raft clusters in a single system.
Role in this project:
Back-end Developer
Contributions:2 releases, 99 reviews, 985 commits in 6 years
Contributions summary:Karl primarily contributed to the back-end logic of the Erlang and Elixir based Raft implementation. They implemented features related to release cursor tracking, added batch processing for applied notifications, and introduced a command for throw-away commands. They also made contributions to improve test scenarios by creating partition scenarios. The user's focus appears to be on optimizing the Raft implementation for better efficiency and throughput.
Contributions:2 reviews, 13 commits, 2 PRs in 4 years 5 months
Contributions summary:Karl primarily focused on enhancing the functionality and stability of the RabbitMQ delayed message exchange plugin. They implemented tests, including end-to-end tests, and addressed issues related to argument types. The user also modified the build process and configuration files, including updates to the `rabbitmq-components.mk` file, indicating involvement in DevOps practices. Furthermore, the user explicitly addressed recovery binding on plugin init.
exchangepluginrabbitmq-pluginqueueingamqp
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.
Request Free Trial
Karl Nilsson - Software Engineer (R&D Engineer 6) at Broadcom