CoPs Across the Merge

May 29, 2027 · 18 min read

Greenbox has 19,000 subscribers across two brands and six cities. The Harvest Box integration is fourteen weeks old. The RAG status on the integration slide is amber, which is a colour that means everyone has agreed to stop arguing about whether it’s green or red. The formal project has a timeline, a name, and a dedicated channel nobody reads. The things that are actually integrating happen in other places.

Hamish comes into the Perth office for a fortnight in July. Sydney has sent him up for a Harvest Box platform review that is going to last two days. The other twelve are padding, because his wife is in Europe at a conference and the alternative was a fortnight in an empty flat in Newtown.

On his second morning he stands at the coffee machine in the kitchen with the sloping floor and the broken-backed chair, and he looks at the pinned lists outside the big meeting room for long enough that Priya walks past, stops, and comes back.

“Sorry,” he says. “I was reading.”

“Read as long as you like.”

“This one.” He points at the line that says Name the pain, not the thing. “Is this yours?”

“Maya’s. After the Go Guild died.” Priya half-smiles. “Jas wrote it on the list. She writes everything on the list.”

“Who’s the list for?”

“Whoever’s reading.”

Hamish nods. He looks at the paper for another moment. He says, carefully: “Can I come to the Thursday one? Just to watch. I don’t want to take up a chair.”

Priya considers him. Hamish is a good engineer. He is the kind of engineer who reads the test suite before the code. Priya has read one of his PRs from the first month of the integration and wanted to write him a note about it, and then hadn’t, because she hadn’t wanted to come on too strong.

“You can come to any of them,” she says. “Pager Thursday is probably the one where it’ll be most obvious what’s going on. You could bring something if you had something.”

“I’ve got a thing.”

“Come to Pager, then. Thursday at four, the small room upstairs.”

“And the, the kitchen one?”

Priya hesitates for just long enough that Hamish notices.

“That one is also open,” she says. “It might not be the one for you yet. But come if you want to come.”

The Pager session

Pager Thursday is the easy one.

Ifeoma has seeded it, Ifeoma still stewards it, and the room includes on a good week three or four engineers who have been at Greenbox under a year. It meets in the upstairs room, because the kitchen is too small now and Pager never had the kitchen’s sacred-attic feel. The artefact is a runbook template and a slow-growing collection of post-incident notes. The pain is a pager that goes off at 3am.

Hamish brings a thing. A specific thing. On the Friday before his trip, Harvest Box’s payments integration paged on the Sydney side at 02:47 and the engineer who took the call. Rania, Hamish’s closest colleague in Sydney, had followed the Harvest Box runbook, found it pointed at a dashboard that had been retired in April, fallen back to Slack, failed to find anyone on-call from the Perth side, and ended up paging Tom at 03:29. Tom had been polite about it. Rania had written a short postmortem. The postmortem lived in the Harvest Box wiki, which nobody from Perth reads.

Hamish brings the postmortem to Pager Thursday. He reads four paragraphs of it out loud. The room listens. Ifeoma asks one clarifying question, which is who owns the payments service on a Friday night in Sydney? and Hamish says I don’t know, and neither does Rania, and that is exactly the problem, and the room laughs in a way that is not quite amused and not quite horrified.

By the end of the hour the group has an action Hamish did not expect. Ifeoma proposes that the first-two-minutes runbook template, which every squad at Greenbox has adopted and nobody at Harvest Box has seen, gets introduced to the Sydney team through Hamish, and that Rania, who has the most recent painful 3am, gets invited to the next Pager Thursday by video.

Ifeoma writes it down without asking. That is how Pager Thursday works.

Hamish walks to the lift afterward with Ravi. He says, “That was the most useful meeting I’ve been in since I joined this company.”

Ravi nods. “That’s what it does.”

Hamish has been in the building long enough to know which Thursday is the one Ravi means when Ravi says it. He pauses at the lift.

“I’m going to the other one tomorrow,” he says.

Ravi: “The kitchen one.”

“The kitchen one.”

Ravi thinks about it for a second. “Good luck.”

“Good luck?”

“You’ll see what I mean.”

The kitchen

Hamish arrives at 3:59. Kofi is already there. Kofi has moved to Perth, which Hamish has read in the HR newsletter but has not yet processed, and Priya is pouring tea. Anika’s face is on a laptop propped against the thermos. Jas is at the end of the table with her notebook. Tom comes in at 4:02 carrying a flat white and sits without speaking.

There are eight people in the room. Hamish makes nine, which is already uncomfortable, because he has been told the kitchen seats six plus a laptop.

Priya begins. She does not introduce Hamish because Priya has thought about this and decided that introductions make this room worse, not better. She says: “Kofi, what have you got?”

Kofi has a thing. It is a question about whether the pause_state field on the merged subscription resource should now include a Harvest Box legacy enum value, or whether legacy Harvest Box subscriptions should be mapped into the existing Greenbox pause states, with the legacy-specific meaning carried as a separate flag. He has drafted a migration and he has questions.

The discussion is twenty-seven minutes long. Hamish, for the first fourteen of them, can follow it. The shape is familiar from Pager Thursday and from his own previous job and from his undergraduate compiler-design papers. There is a field that means different things to different readers, and the question is whether to unify the meaning or unify the shape.

At the fifteenth minute Kofi says, “This is the same problem Priya hit in the September we had three weeks ago.”

Anika, from Melbourne, snorts. “The September we had three weeks ago. God.”

Kofi: “You know what I mean.”

“I know what you mean.”

Priya: “For the room who wasn’t there. Kofi means the thing with the farm-reconciliation window that broke because we renamed one side and forgot to tell the other. It’s written up in the gist under April, the second time. If you haven’t read it, skim it before you keep going on this.”

Hamish has not read the gist. He does not know what the September we had three weeks ago is. He knows, or he can infer, that Priya and Anika and Kofi are referring to a prior episode of this kind of problem that has become a shorthand the four of them share and he does not.

He tries to contribute. He says, carefully: “At Harvest Box we had something similar with the delivery-slot field. We solved it by –”

Tom is listening. Jas is listening. Anika’s face on the laptop is listening. Priya is listening. Hamish stops halfway through his sentence because he has realised, in real time, that nobody in the room has the context to know what “similar” means from his end. The Harvest Box delivery-slot story is ten sentences. The ten sentences require ten years of Harvest Box’s particular domain to parse. The reason the Greenbox team can have this conversation in shorthand is that they have been through the prior version of it together, and the shorthand is the shape of the shared history.

He finishes the sentence, weakly, and the room, kindly, takes the contribution without making it weird. Kofi says right, yeah and keeps going with his question. Hamish does not say anything else for the rest of the session.

He watches. The discussion moves. They agree on a shape. Priya writes it in the gist. Kofi says he’ll have a PR on Monday. Anika says something about the Melbourne ops console that involves a phrase Hamish is now certain is a running joke of six months’ standing. Jas writes one line in her notebook and does not look up.

At 5:04 the meeting ends because meetings in the kitchen end when they are finished and not before. Hamish stays seated until the room has emptied. Then he takes his cup to the sink, washes it, dries it, puts it on the rack. He walks out of the kitchen and out of the office and sits on the low wall outside the front door, which is dusty because nobody has swept it since the roof repair in May.

The step

Priya finds him eight minutes later. She is holding her own tea in a different cup. She sits down beside him without asking.

They don’t say anything for a while. Down the street a truck is reversing and the beeping does the thing it does when you are listening for it.

Hamish: “I don’t think that one is mine.”

Priya: “No. I was going to try to tell you that this morning. I wasn’t sure how.”

“It’s not just that nobody was unkind. It’s not even the history, though that made it sharper. The contracts you were arguing about, the pause-state field, the farm-reconciliation window, the delivery-window thing, those are Greenbox’s contracts. Between Greenbox services. Harvest Box has its own version of each of them, and ours don’t speak to yours except where the integration project is making them. A year of showing up wouldn’t make those mine. My services aren’t in the room.”

Priya is quiet for a beat. “That’s the better way to say it. I’ve been trying to find it and couldn’t.”

“The history thing is real too, the September we had three weeks ago didn’t mean anything to me. But that’s the symptom. The reason I’d never catch up is that I’d be translating pain that isn’t mine into a shorthand built for pain that is.”

Priya nods slowly. “And the pain in the room right now is that the two codebases share the words but not the boundaries the words mean. That isn’t a shared pain yet. It might be in two years. It isn’t today.”

“No. It isn’t today.”

They sit. The truck finishes reversing. Somewhere a dog barks.

Hamish says: “Can I start one?”

Priya turns to look at him properly for the first time. “You can start one. What’s the pain?”

He thinks about this. “Two things. The first one doesn’t need a new meeting. It needs an old one to widen. The AI stuff. We’ve got four teams running something that learns from data, pause-risk; Yasmin’s cost-prediction ModelA trained set of weights plus the architecture that makes them useful – the thing you load up and run inference against. ; the substitution-ranker Tim’s been quietly shipping in Sydney; a Harvest Box recommender I inherited that nobody’s sure should still be running. All four are figuring out evaluation and guardrails separately. That pain is the same pain in four corners, and it is shared across both brands. Modelling Thursday already exists for it. I should come, and we should make it bigger, not fork it.”

Priya: “Agreed. Come. Bring Tim if he’ll come. Bring Rania. I’ve been meaning to widen it and not done the bringing.”

“The second one needs a new meeting. Every cloud decision we made at Harvest Box, Greenbox made differently. CI, deployment, observability, IAM across the two AWS accounts, secrets rotation, the shape of our infrastructure-as-code. The integration project has a plan for the big-ticket items. The day-to-day, where a platform engineer on either side keeps re-implementing the wheel because nobody has a surface to compare notes, has no home.”

“What would you call it?”

“Cloud Thursday, probably. Not clever. The pain is specific enough that the name doesn’t need to be.”

Priya nods. “That’s a real one. Write the invite. Don’t make it better. Just send it.”

“Four pm, a Thursday, a room?”

“And bring something you’ve built that somebody at the other brand has built differently. Or a decision you’re about to make that somebody’s already made and you don’t know it. Let the wording be yours.”

Hamish nods. He looks at her. “And the kitchen one. I’m not going to come back to it, unless you need me to. But I’m glad it’s there.”

Priya: “Thank you.”

“For what?”

“For saying it out loud. I was going to have to tell at least three other people the same thing this quarter and you’ve just made me better at it.”

They go back inside separately.

What Pager looked like the following fortnight

Pager Thursday, the week after Hamish sat in on it, had Rania on video from Sydney for the first time. Rania was awkward for six minutes and then, without noticing it happening, stopped being awkward. The Harvest Box runbook was being discussed as if it were the team’s runbook, because in the room that was the meeting and the runbook, it was. By the fourth week, Pager Thursday had no Harvest Box section and no Greenbox section. It had a runbook, and the runbook had pointers, and when something broke the pointer was what mattered, not the provenance of the pointer.

The Pager pattern worked because the pain was the same pain. A 3am page in Sydney woke someone in Sydney, and a 3am page in Perth woke someone in Perth, and both of those people wanted the same things from the first two minutes. The vocabulary they needed to share was small and sat on top of the shared concrete experience of being woken by a phone.

Priya, watching this work, wrote one line in the gist.

The first two minutes don’t care whose company you came from.

The widening, and the new one

Modelling Thursday widened on the Tuesday after Hamish’s step conversation. Hamish brought Tim; Rania came from Sydney on video; Yasmin brought her cost-prediction notebook; Kai, rolling off as a contractor at the end of August but willing to come for one more month, was asked to tell the regex-harness story from the beginning, because nobody from Harvest Box had heard it. He did not particularly want to. He told it anyway. It took seven minutes. The room was quiet afterwards, and then Tim said we’ve been doing evaluation on our recommender with a pretty similar set of assumptions and the conversation started moving. By the third widened session, Ruth’s name could be said without explanation, because the Harvest Box people had heard the story and, in one case, had a version of their own.

Priya did not steward the widened version differently. She sent the reminder. Dina still brought the spreadsheet. The new people brought their own versions of it. The meeting did what modelling Thursday always did, just for more people.

Hamish’s Cloud Thursday invite went out on a Tuesday in late July. The body, his choice, said: Thursday four pm, small room. Bring something you’ve built that somebody at the other brand has built differently, or a decision you’re about to make that somebody has already made and you don’t know it.

Seven people came. Hamish; Ravi from Greenbox platform; two Harvest Box SREs who had been waiting for this meeting since the merger announcement; a Greenbox engineer who had just spent a fortnight reimplementing Harvest Box’s secrets-rotation pattern because nobody had told her one already existed; Rania, who had developed a taste for Thursdays after Pager; and a Sydney DevOps engineer who brought a printout of the two companies’ IAM role-naming conventions side by side because the printout was already funnier than anything he could have said about it.

The first session was bumpy in its own way. The room argued for ten minutes about whether to unify log formats or leave them, the Harvest Box SRE wanted unity, Ravi wanted to cut the scope to one concrete thing, and the person with the secrets-rotation question quietly went first because nobody else had. They ended with two decisions nobody had come in expecting: Ravi would document Greenbox’s rotation pattern somewhere the Harvest Box side could find it, and the IAM printout would go up on the wall next to Jas’s list.

The printout was four pages. Hamish taped it up anyway.

Cloud Thursday did not become the kitchen. It became its own thing. Its own steward (Hamish, to his mild surprise), its own vocabulary, its own pain. By the eighth session its shorthand included the secrets-rotation pattern and a slow-growing catalogue of decisions the two companies had made differently that the team was, one at a time, deliberately choosing one of.

FinOps Thursday, meanwhile, had picked up two Harvest Box engineers who were drowning in reserved-instance decisions. Yasmin had been quietly terrified of this, because she had been the steward of FinOps Thursday and had not asked to become the steward of a bigger FinOps Thursday. The first merged session had thirteen people in it and produced nothing. Yasmin had gone home and cried and then messaged Priya at 11pm saying is this broken. Priya had replied at 11:02 saying one session with thirteen people is broken, not the meeting. The next week they split into two FinOps Thursdays, one East and one West, with a shared gist and a monthly joint session. Both halves worked.

Nobody called this the FinOps split, because a name would have implied a decision that felt bigger than it was. It was just what fit.

The kitchen stayed

The original Thursday did not try to absorb Sydney. It did not try to grow. Priya resisted two attempts, one from Marcus and one from an enthusiastic HR director whose name Priya keeps forgetting, to make it a bridge between the original team and the acquired team. Priya said no to both of them in almost the same words: if we try to bridge with the kitchen, we lose the kitchen and we don’t get a bridge.

What happened instead was small and unglamorous. Once a quarter, the original Thursday and Cloud Thursday ran a joint session. The joint session was in the big meeting room because the kitchen wouldn’t fit everyone. It was ninety minutes, not thirty. It had a shared agenda of exactly one item, a platform-level boundary question that touched both groups, and after the ninety minutes, everyone went back to their own Thursdays.

The first joint session was about the shared event bus, which carried subscription events from both brands and was, on paper, the integration project’s responsibility but in practice nobody’s. The second was about the data catalogue, with the analyst and Yasmin and two Harvest Box data engineers pulling into the same room for the first time. The third, pencilled for October, was going to be about the PII boundary between the two customer datasets, which had gotten harder since the address-merge went live.

Nobody calls the joint session a CoP-of-CoPs. Jas, who is the person who most wants to call it that, specifically doesn’t.

What Maya told the board on a Wednesday

Patricia asked about integration at the August board, because Patricia always asks about integration at the August board.

Maya said: “The formal integration project is amber. The architecture is amber. The finance systems are late. The HR integration has been a bad month. Most of this will sort itself out, the way most integrations do, a quarter later than projected, with three senior people leaving and no one being able to explain afterwards exactly what the break-point was.”

Patricia waited.

Maya: “The thing that is not amber is the practices. Pager Thursday merged. FinOps Thursday split and then that worked. Modelling Thursday widened to cover the four ML systems we now have, the pain is the same in four corners, so the meeting is the same meeting, just bigger. Cloud Thursday started from scratch because nobody had a place to compare platform decisions we’d been making differently, seven people, three Harvest Box, and by the end of the month they had stopped re-implementing the same wheel in two shapes. The kitchen didn’t try to absorb Sydney, which is why it survived.”

Patricia, who has been watching all this, said: “Which of those did you design?”

“None of them. I seeded Pager and FinOps before the merger because you told me to try. The modelling widening and Cloud were Hamish, because he sat in the kitchen for one session and worked out what was and wasn’t his.”

“And you did not intervene.”

“I did not intervene.”

“Good. Don’t.”

Maya wrote the exchange down in the back of her board notebook and underlined the last two sentences twice.

Jas, late one evening

Jas stayed late on a Tuesday in early August because she had been trying to write something for a fortnight and not finding the words. She pinned a new line to the list outside the big meeting room at quarter to seven and went home.

The list, as of that night, had twelve items. The top was still A Thursday is easier to start than to design. The new line, at the bottom, in a slightly shakier hand because Jas had been writing it with the marker she hadn’t uncapped since March, said:

A CoP does not merge. A pain merges.

Kofi read it on Wednesday morning, photographed it, and sent the photograph to Hamish in Sydney with no other message. Hamish looked at it for a while on the train. He did not reply. He thought about it. He wrote the reminder for the next Cloud Thursday on the train back from Parramatta, which is a thing he has never done before, and sent it when he got to the office, and the reminder had a different opening line than any previous Thursday invite at either company. It said:

Bring something you had to build twice.

Seven people came. Between them they had built the same thing in seven shapes. It was going to take them a year to stop.

The Greenbox story continues in What Came Next. I'll be writing about a few other things in the meantime -- the next chapter lands around 1 June.

These posts are LLM-aided. Backbone, original writing, and structure by Craig. Research and editing by Craig + LLM. Proof-reading by Craig.