My colleagues Pablo and Kemal are campaigning for a seat on the OTel GC. Pablo is a prolific contributor and GC veteran who needs no introduction. Kemal has done fantastic work on Compile-Time Instrumentation for Go. But please check out all the candidates and vote! github.com/open-telemet...
Felix Geisendörfer
Felix Geisendörfer
@felixge.de
Working at Datadog on Go Profiling, Performance, OpenTelemetry and more. Before: - Manufacturing Observability at Apple - Co-founder at Transloadit - Node.js Core Dev
2.6K followers141 following167 posts
Felix Geisendörfer reposted
If anybody with connections to the V8/Chrome team is reading this, my colleague Attila is trying to find a reviewer for a patch to improving profiling. Many thanks in advance for any leads 🙇🏻♂️ chromium-review.googlesource.com/c/v8/v8/+/78...
I just published a proposal for a new RSS profile type for Go. It aims to solve the issue that the heap profile typically shows < 50% of process RSS, which is very confusing. It should also help to quickly identify when memory usage is dominated by cgo. github.com/golang/go/is...
In exchange for 18 minutes of your time, you can get an elevator pitch about why you should be using pi (instead of claude) and perhaps more importantly, one of the sanest takes on using AI effectively 🔥 www.youtube.com/watch?v=Rjfb...
If this sounds interesting to you, and you'd like to get an early taste of the troubleshooting powers of the Profiles Signal, please check out our post on the OpenTelemetry blog for more details: opentelemetry.io/blog/2026/pr...
And of course, if you're looking for a vendor, Datadog has you covered. You can join the preview for the OpenTelemetry eBPF profiler here: docs.datadoghq.com/profiler/ena...
Felix Geisendörfer reposted
Felix Geisendörfer reposted
Redact sensitive data from Java Flight Recorder and JVM crash logs with jfr-redact, a tool for safely sharing profiling and error files: mostlynerdless.de/blog/2026/02...
I'll be speaking at the Datadog User Group Berlin today. Expect live demos of our Continuous Profiler product, root causing an incident caused by an LLM-assisted refactoring. www.meetup.com/datadog-berl...
Felix Geisendörfer reposted
Just spend like 20 minutes debugging why claude code notifications don't work. Turns out they fire after a hard coded 60 second timeout. I don't get it, I thought I'm supposed to feed this thing with input as fast as possible? github.com/anthropics/c...
Felix Geisendörfer reposted
My colleague Sanjay Ghemawat & I have done a fair bit of performance tuning of various pieces of code. We wrote an internal Performance Hints document ~2 years ago as a way of identifying some general principles & we've recently published a version of it externally. Doc: abseil.io/fast/hints.h...
Felix Geisendörfer reposted
Profiling Request Latency with Critical Path Analysis, @felixge.de @ GopherCon 2025 www.youtube.com/watch?v=BayZ...
The talk @florianl.bsky.social and I submitted has been accepted at KubeCon 2026 in Amsterdam. 🎉 Small wrinkle: The talk says that the profiling signal is in alpha … which is not true yet. Fear driven development will continue until reality and talk description are aligned!
A small productivity hack I use every day. gist.github.com/felixge/ce96...
Felix Geisendörfer reposted
Accepted! Go 1.26 will introduce per-state goroutine metrics: running, waiting, in syscalls, etc. Developers can use them to catch problems early without needing full traces. antonz.org/accepted/gor...
Felix Geisendörfer reposted
Small contribution just before the Go 1.26 freeze: go.dev/cl/610815 removes the hard-coded 100ms sleep from the CPU profiler for most platforms. This will make it more efficient and unblock deeper call stacks. As a bonus, uncovered and fixed an 8 year old bug in the profiler go.dev/cl/722940 :)
Felix Geisendörfer reposted
My talk from GopherCon 2025 about Green Tea is up on YouTube! www.youtube.com/watch?v=gPJk...
Felix Geisendörfer reposted
"It has, with generative code, become harder and harder to strive towards the lions because the models produce code that is, quite literally, mid" - beautiful post by @vickiboykis.com newsletter.vickiboykis.com/archive/i-wa...
Felix Geisendörfer reposted
Felix Geisendörfer reposted
jj v0.34 is out, including Gerrit upload support! github.com/jj-vcs/jj/re...
Watching "stupid jj tricks" from JJ con 2025 live right now. Tune in: www.youtube.com/watch?v=WWNh...
Initial prompt + follow-up conversation from cursor: gist.github.com/felixge/b317...
Felix Geisendörfer reposted
Hi folks, it’s survey time! We’d love to learn more about how you use Go and what could be improved. Share your feedback via our annual developer survey at google.qualtrics.com/jfe/form/SV_.... It should take 10 - 20 minutes to complete, and will be open through September 30. Thank you! #golang
Felix Geisendörfer reposted
Even if the solution hadn't come to me, leaving the test case without a fix is a fantastic way to start the way. It gives absolute clarity of focus in the morning. IIRC @thorstenball.com has been talking about this in the past as well.
Felix Geisendörfer reposted
I'm excited to see that github.com/florianl/go-tc reached 500 stars on GitHub! It all began as a way for me to explore loading an eBPF program in pure Go via the traffic control API of the Linux kernel, and it's awesome to see so many people finding it useful. Thanks everyone!
Felix Geisendörfer reposted
“jj undo can now undo multiple operations progressively by calling it repeatedly, whereas previously, running jj undo twice was previously a no-op (it only undid the last change).” 😮 It seems Christmas came early this year. github.com/jj-vcs/jj/re...
Felix Geisendörfer reposted
Gotta say @felixge.de has very top notch diagrams in this presentation! #golang #gopherCon