Tom Johnson
banner
tomjohnson3.bsky.social
Tom Johnson
@tomjohnson3.bsky.social
CTO at Multiplayer.app, full stack session recordings to seamlessly capture and resolve issues or develop new features.
Also: 🤖 robot builder 🏃‍♂️ runner 🎸 guitar player
👇 Check my article on best practices on how to structure logs in the comments (or you could always use @multiplayer.app ’s full stack session recordings which automatically correlate logs by session 😅).

beyondruntime.substack.com/p/logs-that-...
Logs that talk back
How to debug distributed systems without losing your mind
beyondruntime.substack.com
December 4, 2025 at 10:07 AM
When you’re looking for the bug, every log file you grep through gets you closer to the root cause.

The trick is making those logs useful, faster.
December 4, 2025 at 10:07 AM
If you’re thinking about:

• how to let tools like ChatGPT, Claude, or Gemini interact with your apps safely
• how to turn small AI experiments into prod features
• how to keep costs predictable
• and how to put the right guardrails in place

…then you’ll get a lot out of this panel.
December 2, 2025 at 11:51 AM
That means automatically correlated insights frontend to backend: being able to understand end-to-end your system, from user action, to the specific trace, log, request/response.

(That’s what we do at Multiplayer with full stack session recordings 😉)

beyondruntime.substack.com/p/from-red-a...
From Red Alerts to Root Causes
How observability builds on monitoring to keep complex systems reliable.
beyondruntime.substack.com
November 28, 2025 at 1:04 PM
I recently reviewed what went wrong with one of our users’ internal tool incidents and the lessons were clear: you have to shorten the path from “something broke” to “we know why.”

And it starts with high-quality issue reporting powered by full-stack session recordings.
November 21, 2025 at 2:30 PM
Let me know what other best practices you’d add to this list!

👇 Check the full article: beyondruntime.substack.com/p/apis-dont-...
APIs don’t test themselves
Why automation is the only way to keep pace with modern distributed systems.
beyondruntime.substack.com
November 19, 2025 at 3:01 PM
• Test authentication and authorization just as rigorously as the “happy path”

• Keep your test data clean, parameterized, and repeatable

• Continuously monitor the health of your test suite, track flaky tests, and evolve coverage as the system changes
November 19, 2025 at 3:01 PM
• Start early and target the APIs that matter most

• Write isolated, assertive tests that validate one behavior at a time, with strong assertions

• Use mocks, stubs, or service virtualization for dependencies
November 19, 2025 at 3:01 PM
👆He captures perfectly why business critical issues slip through when context is missing and you have to waste hours piecing together all the information.

(and how Multiplayer full stack session recordings are built to solve that 😊)
November 17, 2025 at 9:46 AM
‣ Shape your data early.
‣ Prioritize security.
‣ Be deliberate with receivers.
‣ Export with efficiency.
‣ Monitor the Collector itself.

The lesson I keep coming back to is simple: an observability framework is only as strong as its Collector configuration.
November 6, 2025 at 4:04 PM
He's giving a talk at ZurichJS next week.

If you're in town, I recommend checking out their EOY meetup on Thursday 13 Nov, 18:00 CEST. 👇

zurichjs.com/events/zuric...
ZurichJS Meetup: 1st Anniversary Special Edition | ZurichJS
Before the winter code freeze sets in and the only thing you want to debug is your holiday light setup, it's time for on...
zurichjs.com
November 3, 2025 at 10:52 AM