Joy Gao's Avatar

Joy Gao

@joygao.bsky.social

software engineer at ClickHouse; prev: Figma, WePay long-form ✍️: https://expertofobsolescence.substack.com

3,541 Followers  |  212 Following  |  184 Posts  |  Joined: 13.05.2023
Posts Following

Posts by Joy Gao (@joygao.bsky.social)

Ha this is great

20.02.2026 19:40 — 👍 1    🔁 0    💬 0    📌 0

(Or at least largely redefined)

20.02.2026 04:35 — 👍 0    🔁 0    💬 0    📌 0

Builder is outcome-oriented. And AI allow them to get to their outcome faster and provide a faster feedback loop.

Craftsman is process-oriented. And AI removes the process of designing, implementing, debugging, testing, etc. the reward was the journey, but the journey is no longer there.

20.02.2026 04:33 — 👍 4    🔁 0    💬 1    📌 1

This has been my observation, but curious if anyone else feel this way:

- if you are a builder at heart, using AI to code energizes you

- if you are a craftsman at heart, using AI to code feels like it’s taking something away from you

20.02.2026 04:10 — 👍 11    🔁 1    💬 5    📌 0
Book cover of "Designing Data-Intensive Applications, 2nd edition". It has a similar wild boar on the cover as the first edition, but it uses O'Reilly's new cover design, and the boar is now slightly colourised.

Book cover of "Designing Data-Intensive Applications, 2nd edition". It has a similar wild boar on the cover as the first edition, but it uses O'Reilly's new cover design, and the boar is now slightly colourised.

The second edition of Designing Data-Intensive Applications, by myself and @chris.blue, is finished and sent off to the printers! Ebooks should be available in the next week, and print books in 3–4 weeks. Sigh of relief. 😅

(BTW, this is a good opportunity to support your favourite local bookshop!)

18.02.2026 11:09 — 👍 649    🔁 139    💬 27    📌 18

😆

16.02.2026 03:22 — 👍 0    🔁 0    💬 0    📌 0

Nobody:

Me: honey I think I finally have an explanation for why you have better senses (taste/smell/vision) than me: my ancestors invented agriculture earlier than yours, and evolution pruned my expensive sensory hardware to adapt to the modern world, while you are still fit for hunter-gatherer

16.02.2026 00:28 — 👍 2    🔁 0    💬 1    📌 0
Post image

One thing I'm excited about with The Consensus is giving you a hub to find interesting 1) jobs and 2) events going on in systems programming.

03.02.2026 00:18 — 👍 21    🔁 4    💬 2    📌 0
Post image

I will be speaking at the Monster Scale Summit this year to talk about ClickPipes. Hope to see you there! 😊

19.01.2026 22:24 — 👍 5    🔁 1    💬 0    📌 0
Keynote: Advent of Code, Behind the Scenes - Eric Wastl
YouTube video by CppNorth Keynote: Advent of Code, Behind the Scenes - Eric Wastl

If you're curious what it takes to run #AdventOfCode every year, I have a talk called Advent of Code: Behind the Scenes that you might enjoy: youtu.be/uZ8DcbhojOw

03.12.2025 11:10 — 👍 77    🔁 11    💬 1    📌 0
Preview
New “State of eBPF” Report Explores How Modern Infrastructure Teams Are Building on Kernel-Level Programmability – eBPF New eBPF Foundation research shows that eBPF has become the strategic platform of choice for infrastructure teams across networking, security, observability, FinOps, and AI/LLM workloads. The eBPF…

"eBPF is becoming the strategic platform of choice for infrastructure teams"

This line from latest eBPF Foundation report written by Andrew Green is going to be doing a lot of work in the next decade.

ebpf.foundation/new-state-of...

03.12.2025 15:00 — 👍 3    🔁 1    💬 1    📌 0

Happy advent of code month!

01.12.2025 18:02 — 👍 7    🔁 1    💬 0    📌 0

Nobody:
Me: (in k8s land) if a replicaSet contains only one pod, is it still a *replica* set?

19.11.2025 22:03 — 👍 5    🔁 0    💬 1    📌 0

This is so cliche but it is also so true — every time I grow in life/career is when I find myself in a situation I’m not ready/comfortable with.

I love routine, but have to keep reminding myself to break it from time to time.

14.11.2025 19:57 — 👍 8    🔁 1    💬 0    📌 0

Just like how human are bad at writing correct concurrent code, we are also bad at solving concurrent problems in our lives (both leads to *panic*, lol)

So the advice of only introduce concurrency if you must applies as life advice too: solve one problem at a time, multitask only if you must.

30.10.2025 06:08 — 👍 6    🔁 1    💬 0    📌 1

This is great and to-the-point.

30.10.2025 02:54 — 👍 1    🔁 0    💬 0    📌 0
Preview
add support for CTID bucketing with snapshotNumPartitionsOverride by jgao54 · Pull Request #3624 · PeerDB-io/peerdb PeerDB supports parallel snapshotting to optimize initial load time. To do this there are two ways today: we compute the total row count in a table, bucket the data evenly by watermark column -- ...

Best of OSS -- when your customer find new ways optimize your Postgres ingestion pipeline.

github.com/PeerDB-io/pe...

28.10.2025 19:55 — 👍 2    🔁 0    💬 1    📌 0

Hello, friends! After 10(!) years of #AdventOfCode, I've made some changes to preserve my sanity: there will be 12 days of puzzles each December (still starting Dec 1) and there is no longer a global leaderboard. Read more:
adventofcode.com/2025/about#f...
adventofcode.com/2025/about#f...

22.10.2025 02:32 — 👍 615    🔁 120    💬 51    📌 25

Quite optimistic about this project and the great people behind it.

26.10.2025 21:56 — 👍 6    🔁 0    💬 1    📌 0
Post image

LLM output much?

25.10.2025 22:39 — 👍 5    🔁 0    💬 1    📌 0

Really great opportunity for those who want to learn more about sync engines / building real time applications.

25.10.2025 20:38 — 👍 5    🔁 1    💬 1    📌 0

Encountered multiple issues on one roundtrip with BA:
- connection ticket not available for download
- failure to check-in (blank page) after filling out required personal details
- created BA account for inflight wifi, and then unable to login afterwards

Makes a lot of sense now wrt outsourcing.

25.10.2025 20:16 — 👍 0    🔁 0    💬 1    📌 0
Post image

:(

25.10.2025 20:04 — 👍 0    🔁 0    💬 2    📌 0

Now that we have all retreated from Monday’s world wide war rooms… anybody beat this chaos monkey on hard mode?

22.10.2025 23:29 — 👍 0    🔁 0    💬 1    📌 0

People are like programming languages, with personalities on a spectrum between strongly typed and weakly typed.

The strongly typed prefer routines, structures, and consistency; the weakly typed prefer and thrive in a dynamically changing environment.

Yes I am strongly typed 😆

17.10.2025 06:00 — 👍 1    🔁 0    💬 1    📌 0
Preview
An Existential Guide to: Making Friends Friends Friends What Glorious Friendly Friends!

open.substack.com/pub/theshado...

12.10.2025 22:32 — 👍 3    🔁 1    💬 1    📌 0
Preview
Engineering Manager - Database Integrations United States (remote)

We are hiring an EM for the database integration team (ClickPipes) at ClickHouse!

job-boards.greenhouse.io/clickhouse/j...

30.09.2025 23:01 — 👍 3    🔁 1    💬 0    📌 0

Great blogpost summarizing a paper that I now must read.

18.09.2025 07:09 — 👍 7    🔁 1    💬 0    📌 0

A secondary but equally important reason is there are few things that are table-stake — correctness, reliability, security.

10.09.2025 19:52 — 👍 1    🔁 0    💬 0    📌 0

One of my favourite things about working at ClickHouse (and storage systems in general) is we get to nerd out on performance optimizations constantly.

10.09.2025 19:47 — 👍 13    🔁 0    💬 2    📌 0