Bertrand Mermet is a Senior Software Engineer based in Paris with 13 years of experience building high-performance back-end systems, currently focused on observability and tracing at Datadog. He has contributed core features and performance optimizations to flagship open-source projects like Datadog's dd-trace clients and the datadog-agent, notably implementing opentracing primitives and improving timer precision and memory allocations across .NET, Go, and Python libraries. His background includes systems engineering at Microsoft and an academic foundation in machine learning and embedded systems from KTH and Télécom Paris, enabling a strong blend of algorithmic thinking and low-level performance tuning. Colleagues know him for pragmatic refactors that reduce heap pressure and for adding practical metadata (like process IDs) that make traces significantly more debuggable in production.
13 years of coding experience
6 years of employment as a software developer
Master of Science in Engineering Machine Learning, Master of Science in Engineering Machine Learning at KTH Royal Institute of Technology
Master’s degree in Engineering Embedded systems, Master’s degree in Engineering Embedded systems at Télécom Paris
Mathematics Physics Chemistry, Mathematics Physics Chemistry at Lycée Janson de Sailly
Contributions:75 reviews, 43 commits, 37 PRs in 2 years
Contributions summary:Bertrand primarily contributed to the Datadog Agent, focusing on bug fixes and optimizations within the Go codebase. Their work involved addressing regressions in trace parsing, cleaning up unused arguments, removing string concatenations, and optimizing heap allocations within core tracing functionalities. The user also worked on improving sublayer aggregations and customizing msgpack parsing for improved performance.
Contributions:1 review, 129 commits, 58 comments in 6 months
Contributions summary:Bertrand contributed to the core functionality of the .NET client library for Datadog APM, introducing essential features for tracing. They implemented an initial Opentracing implementation, building out core classes such as `Span` and `SpanBuilder` with key methods like `Start`, `Finish`, and `SetTag`. Further development involved adding support for setting the service name, resource name, span type, and error flags, thus improving data collection and contextualization. They also worked on various refactoring and code cleanup tasks, like switching from the `EndTime` to the `Duration` attribute.
net-librarydotnetprofilingapmtracing
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.