Flatmates & Founders
Read Chapter 6: Night Shift
The cold snap had migrated inside, settling into the bones of the flat like an unwelcome tenant. Jazz had layered two hoodies over her thermal and still couldn't feel her fingers properly. The repaired boiler wheezed somewhere in the kitchen, producing heat that vanished before it reached the living room where they'd set up their makeshift workstations.
Tom's chair scraped against the floorboards. He'd been silent for the better part of three hours, which was either a good sign or a very bad one.
"I found it," he said.
Jazz looked up from her screen. "The cufflink?"
He shook his head, and something in her chest sank—not for the cufflink, she told herself, but for the way his shoulders dropped when he realised what he'd said. "No. A problem."
She pushed back from the desk, crossing the two metres of scuffed floor that separated their laptops. Tom's screen glowed with the PopWork onboarding flow, the one Davis in Peckham would attempt tomorrow evening when he tried to set up his weekend booking.
"There," he said, pointing at a sequence of checkboxes. "Hosts can set their availability by day, but there's no buffer time function. If Davis has a client check out at noon and another check in at one, the system doesn't flag the gap for cleaning."
Jazz leaned closer, scanning the code. "So he overbooks himself, the client arrives to a dirty flat, and PopWork gets blamed for a problem the host created."
"Exactly." Tom ran a hand through his hair, leaving it standing at odd angles. "I've been staring at this for an hour trying to figure out if we can patch it before tomorrow or if we just flag it manually."
"Manually isn't scalable."
"No shit."
The words hung between them, sharp and unnecessary. Tom visibly winced.
"Sorry. I'm—" He gestured vaguely at the pile of energy drink cans by his elbow, the dark circles under his eyes, the mountain of code they still needed to review. "Tired."
Jazz pulled the spare chair closer, sitting down beside him. Their shoulders were inches apart. She could smell him—coffee and something woodsy, probably whatever cheap cologne he'd grabbed at Boots. She forced herself to focus on the screen.
"Okay, so we need buffer functionality. You know how Airbnb handles it?"
"Default one-hour minimum, host adjustable."
"Right. But what if we did something smarter?" The idea was forming as she spoke, half-formed but electric. "What if buffers are dynamic? Hosts input their average cleaning time per listing, the system learns and adjusts based on booking patterns."
Tom was quiet for a moment. "That's—"
"Complicated?"
"Different." He turned to look at her properly, and for the first time all night, his expression had lost its frantic edge. "Nobody's doing that. Not Airbnb, not Vrbo. They all use static buffers because it's easier."
"Easier isn't better." Jazz shrugged. "PopWork is supposed to be the platform that actually thinks. That's what we pitched Marcus."
"That is what we pitched Marcus." Tom's eyes widened. "Shit. We pitched him dynamic scheduling in the deck, didn't we? Page twelve, under differentiators."
"And then we forgot to build it."
They stared at each other. The radiator clanked in the kitchen, and somewhere in the building a door slammed, but the moment held them suspended—two people who had just realised they were in the same maze, holding the same map.
"We could do it," Tom said slowly. "The learning model is aggressive for a weekend hack, but we don't need the full version. We need a heuristic—base it on listing type and number of rooms, let hosts override it."
"How long?"
"If I code and you handle the UX flow—" He looked at his watch. "It's already midnight. We give it four hours, we could have something testable by morning."
"But Davis's booking is in—"
"Eighteen hours. If we build it tonight, we can walk him through the new feature tomorrow. He'd be the first host in London—actually, the first host anywhere—using adaptive scheduling."
Jazz felt the pull of it, that dangerous gravitational force of a problem worth solving. She'd felt it in university, hunched over group projects while Tom argued with anyone who'd listen, and she'd buried it since, because wanting the same things as Tom Okafor meant wanting him, and that way led to heartbreak with a capital H.
But it was just work. It was only work.
"Four hours," she said. "Then we sleep until noon and hope Davis doesn't email before we wake up."
"Deal."
They shook on it. His hand was warm around hers, warmer than it had any right to be in a flat this cold, and she pulled away first.
---
At 1:47 AM, Jazz discovered Tom had a habit of muttering to himself while he coded. At 2:30, Tom discovered Jazz talked to her code like it was a misbehaving pet. By 3 AM, the rhythm between them had smoothed into something almost musical—his keystrokes staccato, hers deliberate, punctuated by the occasional grunt of frustration or the whisper of a page turning when she consulted the product spec she'd printed days ago.
"Your spacing is inconsistent here," Jazz said, pointing at a block of TypeScript.
"Functionally irrelevant."
"Functionally irrelevant and actually irrelevant are different. If we bring on another engineer—"
"You mean if we have money for another engineer."
"Same thing." She highlighted the section and fixed the indentation herself. "See? Clean."
Tom opened his mouth—probably to argue, because that was what he did, argue first and agree later when it cost him less—but instead he just nodded.
"Fair."
Jazz felt the victory like a small, warm coal in her chest. She checked the clock again. Three hours to go before her self-imposed deadline, and they were—
"Wait." Tom's hands froze over the keyboard. The cursor blinked at the bottom of the screen, eleven lines from where he'd stopped. When he spoke again, his voice was hoarse. "Wait."
"What?"
"You said earlier—dynamic buffers based on learning patterns." He was scrolling now, frantically, back through the code they'd written. "If we store the buffer data properly, we're not just building scheduling adjustments. We're building a data layer that learns how long cleaning actually takes per listing type."
Jazz was already ahead of him. "Then we're not just a booking platform. We're a logistics platform with real operational data."
"Nobody has that. Not with actual host-reported cleaning patterns."
"We could sell it. Aggregate and anonymise it, offer benchmark reports to hosts, property managers."
"Or use it." Tom spun to face her. "Jazz, we use it to predict. Host has a three-bedroom flat in Zone 2, average cleaning time from hosts with similar listings is an hour and twenty minutes, typical client checkout time is 11 AM. We could tell hosts before they even list: here's your optimal buffer, here's your optimal turnover day."
"Revenue stream beyond commission."
"Data licensing."
"Operational dashboards."
They were both standing now, though neither had consciously risen. The flat was cold, the budget was nonexistent, and their one tentative host had a buggy booking interface—but for the first time in weeks, Jazz felt the shape of something they could actually build. Something that mattered.
Something he'd brought out of her.
She looked at Tom, at the ridiculous enthusiasm lighting up his face, the same expression she remembered from across crowded lecture halls and shared tutorial sessions, the same expression she'd sworn she'd never let herself want again.
The air between them tightened. Her pulse skittered.
"We should—" Tom stopped. His gaze dropped to her mouth, then back up to her eyes. "We should document this. Before we lose the thread."
"The thread." Jazz's voice came out too breathy. "Right. Documentation."
She sat down. He sat down. They did not look at each other for the next twenty minutes, and when they did, it was only to discuss variable names and API endpoints.
---
At 6:12 AM, dawn leaking grey through the thin curtains, Jazz closed her laptop with a decisive click.
"Done."
Tom mirrored the gesture, rubbing his eyes. "Version one-fucking-zero of the adaptive buffer module. Davis gets his link at 9."
"Get some sleep."
"You first."
"I'm not tired."
"Jazz, you just asked me which month came after November."
"That was a trick question designed to test your knowledge."
"Three times."
"Sophisticated testing methodology."
Tom laughed. It was a real laugh, low and warm, and Jazz hated how much she'd missed it. The first time she'd heard it was in their second year, when she'd accidentally set off the fire alarm in the design building during a late-night project session. He'd found her hiding in the stairwell, mortified, and he'd laughed until he wheezed.
She hadn't seen him laugh like that since they'd signed the lease on this disaster of a flat.
"Okay," he said, catching his breath. "But seriously. Sleep. We've got twelve hours until Davis tries to use this thing, and Marcus has been cc'ed on our weekly update email in six days."
"I'll sleep when PopWork has two hundred hosts."
"Then you're never sleeping again."
"Then I'm never sleeping again." She stood, stretching her arms overhead, and caught him watching her. The moment stretched, elastic and dangerous. "What?"
"Nothing." But the way he said it meant something, and they both knew it.
Jazz turned away first. She gathered her laptop, her notebook, the mug that had held her third cup of instant coffee at some ungodly hour. She was at the door to her room when Tom's voice stopped her.
"Jazz?"
She didn't turn around. "Yeah?"
"Thank you. For staying."
She could have said something light. She could have deflected with a joke about the code quality needing her oversight. Instead, what came out was: "I'd rather work with you than against you."
Behind her, the silence was so complete she could hear the fluorescent bulb buzzing in the kitchen.
"Me too," Tom said at last. "I'd rather work with you than against you."
She closed her door before she could say anything else. On her desk, pages and pages of product specs sat waiting, and buried three layers deep in her notes, the old phrase stared up at her: *Do not fall for him again.*
Below it, added in a moment of honesty she couldn't remember having, was a second line. *And so are you.*
Jazz crossed it out with a vicious slash of her pen, then lay down on the bed with her clothes still on, staring at the ceiling, trying not to think about the way Tom had looked at her in that final moment.
She'd crossed out the warning, but she could still read it beneath the ink. That was the problem with truths you'd written yourself. They didn't disappear just because you wanted them to.