Sign in

Felix Geisendörfer

@felixge.de
2.7K followers 141 following 163 posts

Working at Datadog on Go Profiling, Performance, OpenTelemetry and more. Before: - Manufacturing Observability at Apple - Co-founder at Transloadit - Node.js Core Dev

PostsRepliesMedia
Felix Geisendörfer @felixge.de · 4h
I assume you considered pi or other harnesses? Anything keeping you on codex?
100
Felix Geisendörfer @felixge.de · 10/09/2026
Congratulations! To both the Go team, as well as to you! This is fantastic news for the community. 🎉❤️
031
Reposted by Felix Geisendörfer
thepudds @thepudds.bsky.social · 10/09/2026
I’m very, very happy to share that I have just joined the core Go team at Google to work on the Go runtime and compiler! I’ve been pitching in as an external contributor since 2018, but now my very enjoyable hobby is becoming my day job 😅 (Also, my name is PJ 👋)
121868
Felix Geisendörfer @felixge.de · 30/06/2026
Sorry for the delay, here is the link. docs.google.com/presentation...
docs.google.com
2026-06-16 The Heap Profile is a Lie (GopherConEU)
The heap profile is a lie* Felix Geisendörfer, Datadog Hello, and welcome to my presentation: The heap profile is a lie. My name is Felix Geisendörfer … 1 * Truthful, but not burdened by the whole tru...
183
Felix Geisendörfer @felixge.de · 02/06/2026
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...
chromium-review.googlesource.com
Gerrit Code Review
010
Felix Geisendörfer @felixge.de · 15/05/2026
Yes, they do :).
030
Felix Geisendörfer @felixge.de · 06/05/2026
PSA: Green Tea GC in go1.26 is incredible 🚀 This is what we saw for two big Go services. We'll try to gather more data and share it soon.
3377
Felix Geisendörfer @felixge.de · 04/05/2026
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...
github.com
proposal: runtime/pprof: add a rss profile type · Issue #79179 · golang/go
This is a proposal to introduce a new "rss" profile type to runtime/pprof to provide Go users with a holistic breakdown of their program's memory usage. Problem Statement As part of incident respon...
2255
Felix Geisendörfer @felixge.de · 30/04/2026
I have a custom extension that tries to prevent accidents, but for use cases requiring stronger security I spin up dedicated VMs.
010
Felix Geisendörfer @felixge.de · 30/04/2026
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...
youtube.com
Building pi in a World of Slop — Mario Zechner
YouTube video by AI Engineer
2286
Felix Geisendörfer @felixge.de · 31/03/2026
Arguably flame graph screenshots are not the best context encoding, but yes - it works sometimes!
130
Felix Geisendörfer @felixge.de · 31/03/2026
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...
000
Felix Geisendörfer @felixge.de · 31/03/2026
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...
210
Felix Geisendörfer @felixge.de · 31/03/2026
Profiles (unlike logs, metrics and traces) are directly linked to code. Florian Lehner and I demonstrated this at KubeCon by using profiling to root cause an incident caused by a coding agent. But the reverse works too: agents can use profiles to troubleshoot or optimize code.
220
Felix Geisendörfer @felixge.de · 31/03/2026
The OpenTelemetry Profiles Signal is now in Alpha 🚀 This is a big step towards making Continuous Profiling in production available to the whole industry. And given the rise of AI coding, this couldn't come at a better moment in time ... 🧵
Florian Lehner and Felix Geisendörfer presenting "The Fourth Pillar Arrives: OpenTelemetry Profiling Alpha in Action" at KubeCon EU
2161
Reposted by Felix Geisendörfer
Paul Bauer @bauer.codes · 25/03/2026
People that strip debug symbols are not to be trusted.
021
Felix Geisendörfer @felixge.de · 22/03/2026
I’m headed to KubeCon Amsterdam where I’ll be talking about the otel profiling signal graduating to alpha stability. HMU if you want to chat about otel, go, o11y, profiling or anything else. I’m in town until Thursday night.
070
Felix Geisendörfer @felixge.de · 11/03/2026
+1 I don't see any good reason for introducing a new term exclude. But git UX is abysmal in general. I exclusively use jj as a frontend these days. But the .git/info/exclude hack still applies :)
010
Felix Geisendörfer @felixge.de · 10/03/2026
.git/info/exclude is one of my favorite git features, but I'm always surprised when I talk to people who never heard about it. It basically allows you to add stuff to .gitignore without modifying the file. Great for ad-hoc ignoring some files created during debugging.
2252
Felix Geisendörfer @felixge.de · 07/03/2026
I used vim exclusively for 10+ years. But when LLMs came up, I ditched it for VS Code and later Cursor as it was the path of least resistance. But given the advancements of claude et al, it's time to go back. neovim + tmux + jjui - let's go.
2260
Reposted by Felix Geisendörfer
Johannes Bechberger @mostlynerdless.de · 13/02/2026
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...
mostlynerdless.de
Redacting Sensitive Data from Java Flight Recorder Files - Mostly nerdless
Redact sensitive data from Java Flight Recorder and JVM crash logs with jfr-redact, a tool for safely sharing profiling and error files.
073
Felix Geisendörfer @felixge.de · 29/01/2026
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...
meetup.com
Observe event-driven systems | Zendesk Customer Success Story | Cont. Profiling, Thu, Jan 29, 2026, 6:00 PM | Meetup
I'm excited to announce another meetup! If you're interested in give a talk, feel free to reach out to me at marcel.drechsler@andsafe.de \-\-\- All talks will be **presen
072
Reposted by Felix Geisendörfer
Jake Bailey @jakebailey.dev · 07/01/2026
My GopherCon talk was just posted!
youtu.be
GopherCon 2025: Porting the TypeScript Compiler to Go for a 10x Speedup V2 - Jake Bailey
YouTube video by Gopher Academy
27819
Felix Geisendörfer @felixge.de · 06/01/2026
If I had to guess, they want to avoid triggering the hook when the user is still actively watching the window. But IMO that would be better solved using terminal focus tracking 🤔
020
Felix Geisendörfer @felixge.de · 06/01/2026
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...
github.com
[FEATURE] Configurable timeout for idle_prompt notification hook · Issue #13922 · anthropics/claude-code
Preflight Checklist I have searched existing requests and this feature hasn't been requested yet This is a single feature request (not multiple features) Problem Statement The idle_prompt notificat...
130
Reposted by Felix Geisendörfer
Jeff Dean @jeffdean.bsky.social · 19/12/2025
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...
213225
Reposted by Felix Geisendörfer
VLDMR VRNKN @vladimir.varank.in · 15/12/2025
Profiling Request Latency with Critical Path Analysis, @felixge.de @ GopherCon 2025 www.youtube.com/watch?v=BayZ...
youtube.com
GopherCon 2025: Profiling Request Latency with Critical Path Analysis - Felix Geisendörfer
YouTube video by Gopher Academy
1174
Felix Geisendörfer @felixge.de · 16/12/2025
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!
162
Felix Geisendörfer @felixge.de · 10/12/2025
A small productivity hack I use every day. gist.github.com/felixge/ce96...
050
Reposted by Felix Geisendörfer
Anton Zhiyanov @antonz.org · 26/11/2025
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...
antonz.org
Go proposal: Goroutine metrics
Export goroutine-related metrics from the Go runtime.
1225
Reposted by Felix Geisendörfer
Nick Ripley @nsrip.com · 23/11/2025
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 :)
0354
Reposted by Felix Geisendörfer
Michael Knyszek @michael.express · 20/11/2025
My talk from GopherCon 2025 about Green Tea is up on YouTube! www.youtube.com/watch?v=gPJk...
youtube.com
GopherCon 2025 - Advancing Go Garbage Collection with Green Tea - Michael Knyszek
YouTube video by Gopher Academy
13511
Felix Geisendörfer @felixge.de · 28/10/2025
actually, almost the same, the trunk parent is missing, but that’s okay if x is a descendant of trunk I guess?
000
Felix Geisendörfer @felixge.de · 28/10/2025
You can do that in one step if you run: jj parallelize x::w same as jj parallelize x::w jj new trunk x n p w
100
Reposted by Felix Geisendörfer
Neal Lathia @neallathia.bsky.social · 25/10/2025
"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...
newsletter.vickiboykis.com
I want to see the claw
I respect quality software and the people who write it. And, I’ve invested years of my life in working on becoming one of these people (even if the journey...
2285
Felix Geisendörfer @felixge.de · 24/10/2025
Thank you for all your great work on this ❤️
020
Reposted by Felix Geisendörfer
Steve Klabnik @steveklabnik.com · 22/10/2025
I see a future in #jj-vcs: steveklabnik.com/writing/i-se...
steveklabnik.com
I see a future in jj
Blog post: I see a future in jj by Steve Klabnik
6738448
Felix Geisendörfer @felixge.de · 15/10/2025
+1
000
Reposted by Felix Geisendörfer
Michael Pratt @prattmic.com · 02/10/2025
jj v0.34 is out, including Gerrit upload support! github.com/jj-vcs/jj/re...
github.com
Release v0.34.0 · jj-vcs/jj
About jj is a Git-compatible version control system that is both simple and powerful. See the installation instructions to get started. Release highlights Support for uploading changes to Gerrit ...
1153
Felix Geisendörfer @felixge.de · 30/09/2025
I'd love to join one of these again soon, but I'm playing beach volleyball during that time. But usually I play Fridays, so it should work next time.
020
Felix Geisendörfer @felixge.de · 28/09/2025
Watching "stupid jj tricks" from JJ con 2025 live right now. Tune in: www.youtube.com/watch?v=WWNh...
youtube.com
JJ Conference 2025
YouTube video by GerritForge TV
061
Felix Geisendörfer @felixge.de · 24/09/2025
What’s the market rate for corporate emoji smuggling? 🤣
media.tenor.com
a man in a green plaid shirt is standing next to another man in a black coat
ALT: a man in a green plaid shirt is standing next to another man in a black coat
130
Felix Geisendörfer @felixge.de · 23/09/2025
www.youtube.com/watch?v=_eRR...
youtube.com
No one knows what it means, but it's provocative
YouTube video by bentleyguten
050
Felix Geisendörfer @felixge.de · 18/09/2025
Wohooo!!
010
Felix Geisendörfer @felixge.de · 17/09/2025
I need to start a critical path analysis art gallery soon. The kind of stuff goroutines get up to behind the scenes can be truly fascinating.
070
Felix Geisendörfer @felixge.de · 17/09/2025
Initial prompt + follow-up conversation from cursor: gist.github.com/felixge/b317...
gist.github.com
cursor_investigating_goroutine_state_tr.md
GitHub Gist: instantly share code, notes, and snippets.
110
Felix Geisendörfer @felixge.de · 17/09/2025
Two amazing time savings here: a) Tracing the call paths of a bunch of runtime functions to a function I know exists, but don't know the name of ("does network wakeup"). b) Writing the final analysis with code snippets and links to the Go code (permalinks at the right Go version). This is fun.
110
Felix Geisendörfer @felixge.de · 17/09/2025
I'm starting to get better at leveraging AI agents for the kind of low-level stuff I'm doing sometimes. Example: Asked opus to explain some runtime internals, and then turn the analysis into a nice human-readable markdown output that I can use to explain a code change I'm making to a colleague.
140
Reposted by Felix Geisendörfer
Go @golang.org · 16/09/2025
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
google.qualtrics.com
Go Developer Survey 2025
Share your feedback about developing software with Go.
05731
Reposted by Felix Geisendörfer
Ari Arnbjörnsson @flassari.bsky.social · 11/09/2025
Profile.
8795153