Dingsheng's digital recommendation system went fully live.
It was three in the afternoon when Han Luyi saw it trending on Weibo. #DingshengRecommendationSystemGlitching# ranked seventeenth.
When he clicked in, the tone was remarkably consistent.
"It recommended baby strollers to me. I'm twenty-three, single, and I have a dog."
"My fitness account is showing me nothing but health supplements and hearing aids."
"I watched food videos all morning, and my homepage recommended a funeral service discount. Dingsheng probably thinks I eat too much and is arranging my funeral in advance."
The comments were filled with cheerful laughter.
Someone summed it up: "Dingsheng's 'You May Like' should be renamed 'Guess Who You Are.' It hasn't even figured out who I am before it started guessing."
Han Luyi did not laugh.
The static rule engine itself should not have been this absurd. Inaccurate recommendations were normal, but recommendations this wildly off-target meant there was a problem with the data pipeline. After the feature extraction module he had written line by line was cut, no one had adapted the old user profile format to the new engine. The input was a mess. Garbage in, garbage out.
Recommending baby strollers was nothing. Once the data pipeline buffer filled up, what came next would not be funny.
The next morning, the complaints on Weibo took a darker turn, and the topic surged to third on the trending list.
The top-liked comment read: "I opened the Dingsheng Grocery app, and it recommended a whole screen of sex toys. My mom was standing right beside me. How am I supposed to explain this to her now?"
Someone posted: "I'm in Shenzhen, and 'You May Like' recommended me an entire page of local Harbin hot pot restaurants. I asked a buddy in Harbin, and his page was full of Shenzhen milk tea shops. Did we switch accounts?"
Someone else added: "It's not just you. My coworker and I have identical recommendation pages. Even the order is the same."
The tech forums exploded too.
A veteran developer with the ID "Architecture Old Dog" posted a long thread:
"To put it bluntly, the overhaul path of this recommendation system looks very familiar. Feature extraction regressed from dynamic weights to static rules, the multimodal fusion module was cut down until only the text dimension remained, and in NullPointer's article Seven Classic Pitfalls last month, Dingsheng hit every one of the third, fifth, and seventh pitfalls. I suggest writing a sequel: <A Practical Guide to Seven Pitfalls, Proudly Performed by a Certain Major Corporation>."
It received over a hundred and thirty likes in two hours.
Han Luyi checked the views on his own blog post. Eighteen thousand.
The sky outside the window was gray like an uncalibrated monitor. The rain had yet to fall, and the air was sticky with humidity.
No one had realized how serious the real problem was yet.
By eleven thirty that night.
Before going to bed, Han Luyi checked Weibo again.
The topic that had been hanging around for two days, #DingshengRecommendationSystemCrashed#, had already fallen in popularity.
A new topic, #DingshengCrashed#, had shot to number one on the trending list.
He clicked in. Twenty minutes earlier, three core Dingsheng apps had crashed at once. Users opened them only to see white screens.
The recommendation system's collapse had not triggered a circuit breaker. Like an infectious disease, the broken module crawled upward along the call chain, dragging down the content distribution, search, and homepage loading that depended on it. In the end, the entire chain died.
Dingsheng issued an emergency announcement at eleven fifteen. At eleven forty, the apps gradually came back online after they manually shut off the entire recommendation system.
Someone posted screenshots of the restored apps on Weibo. The homepage was clean and bare—no "You May Like," no personalized recommendations, no tailored feeds. Just an empty shelf.
"Is this an app from 2015?"
"Where did Dingsheng's recommendation system go?"
"They cut it. If they didn't, the entire app would be unusable. Which would you choose?"
Han Luyi opened Sight.
[Incident classification: System-level failure (no circuit breaker → full-chain avalanche)] [Root cause: incompatible profile formats → accumulating parsing exceptions → memory leak triggered OOM → data pipeline rupture → 23% of user profiles corrupted → recommendation module crashed without circuit breaker → cascading breach across the entire chain] [Scope of impact: all users during the outage (peak of approximately 12 million online), currently operating in degraded mode] [Current status: recommendation module manually disconnected; apps operating in degraded mode] [Predicted recovery period: rollback to the original architecture, approximately 14 days]
It was exactly the same as his judgment.
When he had looked over that outsourcing request in mid-March, its D rating and one hundred forty bugs had pointed to this outcome. Back then, what he saw was seventy-two hours.
From the full rollout on Monday morning to the complete collapse on Tuesday night, it had taken less than forty-eight hours.
A full day faster than originally estimated.
After daybreak, events unfolded like dominoes.
Someone dug up Han Luyi's article from a month ago, <Seven Classic Pitfalls in Recommendation System Architecture Overhauls>, and made a post—
"Guys! NullPointer is a prophet! A month ago, he accurately described Dingsheng's crash path today. They stepped into all seven pitfalls!"
"What prophet? He's a reborn time traveler!"
"Not all of them. I counted—at least five."
"You counted wrong. The second and sixth hit too; the symptoms just haven't fully surfaced yet."
"So they hit all seven?"
"Seven kills."
The thread was pinned by a moderator. The blog's view count began soaring. Twenty-nine thousand at noon. Forty-two thousand in the afternoon. Over sixty thousand by night. Tech media outlets cited it, screenshots spread through major company group chats, and even several leading tech public accounts reposted it.
The Dorm 404 Group was discussing it too.
Ma Xiaofei dropped a link into the chat. "Did you guys see this NullPointer? He wrote an article a month ago, and Dingsheng hit all seven pitfalls. This guy is insane."
Zhang Haoran: "The whole tech circle is reposting it."
Ma Xiaofei: "Do you think this guy might be from inside Dingsheng? Otherwise, how could he have written it so accurately?"
No one replied.
After a few seconds, Han Luyi typed: "I wrote it."
Ma Xiaofei: "???"
Zhang Haoran: "NullPointer is you?"
"Yeah. Don't tell anyone."
Ma Xiaofei sent a voice message. Han Luyi did not even need to play it to know what he was shouting.
Zhang Haoran: "Got it."
That afternoon, the discussion escalated from "Dingsheng's system crashed" to "whose fault was it?" A self-media account compiled the timeline: Dingsheng laid off staff at the beginning of the year, replaced the core algorithm team, had the new team completely overhaul the system architecture, rolled it out two months later, and watched it crash two days after that. It added one sentence: "A textbook management disaster."
Someone in the comments asked, "What was the name of that laid-off core developer again?"
No one answered. The post's views continued to climb.
Su Niannian forwarded it to him on WeChat. "Didn't you work on recommendation systems before? Was this your team?"
Han Luyi replied with a "Yeah."
He closed the forum and switched back to the code editor. Feedback from the internal testing group had piled up. The most common issue was the false positive rate. Version 0.2 had brought it down to 7.8%, while Su Niannian's target was below 5%. Four out of twenty-three internal testers had raised the same complaint: too many false positives, disrupting their workflow.
He got back to work.
Dinner was frozen dumplings from the fridge. He boiled ten, ate eight, and threw away the other two after they fell apart.
After washing the dishes, he sat back down in front of the computer. It was nine thirty.
A WeChat message popped up. Zhao Qiming.
"Brother Han, are you asleep?"
Han Luyi replied, "No. What is it, Xiaoming?"
"I just got back from working overtime. I need to tell you something.
"We had a review meeting this afternoon, and Chen Bowen spent the whole time passing the buck.
"He said the root cause of the system crash was 'architectural flaws left behind by the former core developer.'
"Your name appeared four times in the PPT. Stuff like, 'An overly coupled dynamic weight design caused system fragility,' and 'Insufficient documentation handover.' Out of twenty-three slides, four were about you.
"That's bullshit. You wrote that dynamic weight system, and it ran for over three years without any issues. He came in and changed everything, then crashed it.
"You wrote documentation too. He didn't even read it."
Han Luyi stared at those lines without moving.
A few seconds later, Zhao Qiming sent another message.
"I almost called him out right there in the meeting. Held back, though. I haven't even sent out my resume yet."
"With the job market like this, treat it like daily wages for now. Get your own affairs in order first."
"I know. It's just fucking disgusting. Thought I should tell you."
"Yeah, got it. Thanks. [Fist salute]"
Zhao Qiming sent a sighing sticker.
"All right, Brother Han. Get some sleep early. I can't hold on either."
Han Luyi put down his phone. The screen went dark for a few seconds, then lit up again. It was Gu Siyue.
"You saw what happened with Dingsheng, right? Be careful not to get dragged into it. If anything comes up, come to me anytime."
Before you continue
Explore the wiki