Chapter 7 Telephone Interviews
Chapter 7 Telephone Interviews
「您尾号8873的帐户于07月15日15:42入帐人民币2,700.00元,余额8,483.71元。」
It seems that Lao Wu was really scared of me. He not only gave me the full salary, but also forced me to accept the promises he had made earlier.
Lin Shen looked at the text message that popped up on his phone and couldn't help but bring up the system interface in the lower right corner of his vision.
None of these three skills are useless!
only……
[Moyu Coin Balance: 2.6]
Current Status: Unemployed
[Note: The function of earning "Slacking Off Coins" is temporarily locked because no formal employment relationship has been established with a valid employer.]
So be it, I'm unemployed.
As Lin Shen gazed at the neon lights gradually illuminating in the distance, the vague unease in his heart was quickly replaced by a stronger sense of vigor.
People should always have some self-confidence.
What's more, he was carrying the future for the entire next fifteen years.
-----------------
The next morning at 9:55, at the rented room.
The room was excessively tidy, almost unlike the room of a 22-year-old single man. The floor was sparkling clean, the desk was neatly arranged, and even the half-dead potted plant on the windowsill had its leaves carefully wiped.
Lin Shen believes that plants also have the right to enjoy a clean working environment.
The laptop on the table was already open, and on the screen was a document of key interview points that Lin Shen had spent the whole night compiling, organized into a knowledge tree according to four levels: "basics-projects-systems-cognition".
The open copy of "Programming Pearls" next to me was turned to the chapter on "Algorithm Design Techniques," with the margins filled with meticulous annotations and interspersed with some strange doodles: a crooked rocket with "Launch!" written next to it; a stick figure slumped in a chair, labeled "Slacking off"; and a line of small print: "If the interviewer asks why you chose Tencent, say 'Because the cafeteria is good'—no, that won't work."
The phone was at 100% battery and had a strong signal. A pair of slightly worn in-ear headphones were properly connected, and the microphone test sounded clear. Lin Shen had practiced his "Hello, I'm Lin Shen" tone in front of the mirror three times—the first time was too formal, like a customer service representative; the second time was too casual, like asking someone out for dinner; the third time, he deliberately lowered his voice and burst out laughing: it sounded like a villain introducing himself.
At this moment, he sat in a chair with his hands flat on his knees, his eyes closed, adjusting his breathing.
Are you nervous?
He was too relaxed this time.
"Alright," he said to himself, "I've had my fill of madness, now it's time to get serious."
At 9:58, the phone screen lit up precisely on time.
"Hello, I am Lin Shen."
"Hello Lin Shen, I am Zhou Botao, the interviewer from Tencent."
The moment that name reached his ears, Lin Shen's heart clenched.
Zhou Botao.
It wasn't just "a little unexpected," it was a chilling shock.
In his previous life, he worked on the WeChat team for seven years and met Zhou Botao three times. Once was at the annual technology conference, where Zhou Botao was on stage talking about the architectural evolution of the WeChat messaging system. The audience was packed with people, and Lin Shen was sitting in the last row, craning his neck to see the small print on the slides.
One time, they bumped into each other in an elevator. Zhou Botao was carrying a stack of documents when he and a few others walked in, discussing things like "user reach rate" and "funnel model." He held his breath until the elevator arrived before daring to exhale. The last time was an all-staff email announcing Zhou Botao's promotion to vice president of the business group. He stared at that name for a long time, thinking: People of this caliber are too far removed from my reach.
And now, this person who is "too far away" is on the other end of the phone, waiting to interview him.
Is it a variable brought about by rebirth? Or... did I "coincidentally" choose the direction of "mobile social networking and communication" and attract his attention?
Not important anymore.
The important thing is that someone like Zhou Botao has seen far too many geniuses and freaks. Superficial, formulaic, and thoughtless answers will instantly appear pale and inadequate in his presence.
But on the other hand, this also means that as long as your answer contains genuine information, he will definitely understand it.
Let's take a gamble.
I'm betting on my decade-long accumulation of knowledge, on my vague memories of future technological trends, and on my ability to grasp the delicate boundary of "excellent but reasonable."
"Yes, Teacher Zhou." Lin Shen's voice was as steady as ever, but his posture unconsciously straightened up a bit—this was not flattery, but the instinctive seriousness of his body when facing a true master.
"Okay, let's begin." Zhou Botao's voice came through the headset, clear and steady, with that incisive quality unique to tech professionals. "First, please give a brief self-introduction, focusing on why you are interested in mobile development and your past project experience."
A classic opening.
But Lin Shen knew that with Zhou Botao, self-introduction was never just a formality.
He spent two minutes introducing the background at a more concise pace than usual, but deliberately planted hooks in two places: first, in the "troubleshooting" section of Feixun, he emphasized the systematic troubleshooting approach of "locating low-level errors in configuration items from massive log noise"; second, in the personal weather application, he mentioned "trying to dynamically adjust the data refresh strategy according to the network status to balance experience and power consumption".
It's not about showing "what I did," but rather implying "how I would think about the problem."
Zhou Botao listened quietly without interrupting. Then he posed the first technical question: "Let's talk about the basics. What's the difference between TCP and UDP? In a mobile instant messaging scenario, how would you choose?"
It's a basic question, but with a clear scenario orientation, which is very "Zhou Botao". He never likes abstract theories and always focuses on "why to use it" and "what will happen if you use it".
Lin Shen didn't answer immediately. He paused for a perfect two seconds, as if organizing his thoughts, but actually quickly assessing: to what extent should he proceed?
"TCP is reliable, ordered, and has congestion control, but its latency is relatively high and it requires a three-way handshake to establish a connection; UDP is unreliable and unordered, but its latency is low and it does not require a connection." He spoke the basics at a steady pace, then turned to the scenario, "In the mobile IM scenario, I think the choice cannot be generalized, but should be layered according to the semantics and tolerance of the messages."
He deliberately used the word "semantics," which became a crucial concept in the later design of IM systems.
"Text messages, read receipts, and critical status synchronization must be reliably delivered and ordered using TCP. However, RTP packets for audio and video calls and coordinate streams for real-time location sharing are extremely sensitive to latency and can use UDP, with lightweight packet loss retransmission or forward error correction at the application layer."
He paused, then added a seemingly casual but actually carefully crafted remark: "Ideally, we could dynamically select the protocol based on real-time network quality. For example, we could use UDP more aggressively under Wi-Fi and switch back to TCP as a backup under weak network conditions—but this requires stronger state coordination between the client and the server."
I could hear soft tapping on a keyboard on the other end of the phone; the rhythm seemed a little slower than before.
"Hmm." Zhou Botao's voice remained steady. "If you were to implement a TCP long-lived connection heartbeat keep-alive on the client side, how would you design the heartbeat interval? What factors would you consider?"
As the questions delved deeper, Lin Shen realized that this was an assessment of the project's ability to weigh trade-offs.
"First, we need to consider the operator's policies and system limitations, which are hard constraints. Different operators have different NAT port retention times, ranging from 30 seconds to several minutes, and we need to use the shortest one as the baseline."
He began to answer in layers, "Secondly, there's the battery level. Frequent heartbeats are unsustainable on mobile devices. I would design an adaptive heartbeat algorithm: the initial interval would be conservative, such as 45 seconds; if multiple consecutive heartbeat cycles are successful and the RTT is stable, the interval would be gradually lengthened, possibly up to 2-3 minutes; once a network switch, heartbeat failure, or latency jitter is detected, the interval would be immediately reset to a short interval."
He elaborated a bit here: "Actually, the purpose of heartbeats is not only to keep the network alive, but also to serve as a network quality probe. We can carry a tiny timestamp or sequence number in the heartbeat packet, and infer the current network condition through round-trip delay and packet loss rate, which can be used for upper-layer business decisions—such as deciding whether to preload images or compress text."
The idea of using heartbeats as probes was rarely proposed in 2010.
The keyboard clicks on the other end of the phone stopped for a moment.
"Okay." Zhou Botao's response was still brief. "You mentioned in your resume that you made an Android weather app. Could you talk about the major technical challenges you encountered and how you solved them?"
The challenging problem in the project. Lin Shen chose a problem he had actually encountered, which happened to demonstrate "mobile-specific thinking"—the interaction between gestures and list scrolling.
He spoke in great detail, but when describing the "switching to GestureDetector", he emphasized: "During my research, I found that Android's native touch event handling is rather primitive, while GestureDetector actually encapsulates gesture state machines and speed tracking. This made me realize that in mobile interaction design, recognizing user intent is more important than handling primitive events."
He used the word "intention" for the second time.
Zhou Botao pressed further, "You mentioned GestureDetector. Could you briefly explain how it works? For example, how does it distinguish between a click and a swipe?"
Lin Shen's answer this time went a bit deeper: "It's essentially a state machine based on a time-displacement threshold. Internally, it maintains a sequence of touch events, calculating the distance between the initial press point and subsequent movement points, the movement speed, and the time difference. For example, it distinguishes between a single click and a swipe: if the time from ACTION_DOWN to ACTION_UP is very short, such as less than 200ms, and the displacement is less than a certain threshold, it's determined to be a single click; if the displacement exceeds the threshold, or if the time is short but the movement speed is very fast, it may be determined to be a quick swipe (fling)."
He added, "This actually raises an interesting question: what threshold should be set? This needs to be calibrated by combining real user data and device DPI. Under different screen sizes and different usage habits, the same physical displacement may represent different user intentions."
There was a two-second silence on the other end of the phone.
"Hmm." For the first time, a very subtle change in Zhou Botao's voice appeared, as if he were interested. "Then let's change our approach. Suppose we were designing a mobile image browsing component that supports two-finger zoom and swipe switching, how would you approach the architecture?"
A system design problem. Lin Shen's spirits lifted—this was the area where he could best demonstrate his "forward-looking vision."
He took a deep breath and decided to take another step forward.
"I would break it down into three layers, but the core idea is decoupling." He deliberately used the later popular architectural term "decoupling." "The bottom layer is the data and caching layer, which is responsible for image acquisition, decoding, and caching strategies. Here, memory sensitivity needs to be considered—large images cannot be fully decoded into memory; regional decoding or thumbnail-based decoding is required."
"The middle layer is the gesture and animation engine. The key here is the arbitration logic for gesture conflicts. For example, when zooming with two fingers, we need to prevent accidental triggering of horizontal swipe switching. My idea is to introduce a lightweight gesture state machine, which marks 'currently in zoom mode' at the beginning of the zooming process, and dynamically adjusts the event interception threshold of the parent container."
He spoke faster and faster, his thoughts becoming increasingly clear: "The upper layer is the UI components themselves. But here I want to mention an idea that might be a bit ahead of its time: on mobile devices, image browsing is not just about 'displaying images,' but also involves the loading experience. We can preload the thumbnail of the next image when the user scrolls to an adjacent page; in a Wi-Fi environment, we can even silently pre-cachate several original images before and after. This requires the components to be able to sense the network status and user behavior patterns."
"Furthermore," he added at the end, "considering Android fragmentation, the implementation of gestures and animations may need to be adapted for different versions. My personal principle is to isolate system differences in the architecture, encapsulate version-related code into independent adapter modules, and keep the core logic pure."
In this passage, he included several keywords such as "decoupling," "state machine," "loading experience," "perceptual network," and "architectural isolation," each of which are common concepts in mobile architecture design later on, but in 2010, few people had expressed them so systematically.
The keyboard clicks stopped completely on the other end of the phone.
A long silence followed. So long that Lin Shen could almost hear his own heartbeat amplified in his headphones.
He suddenly remembered a joke he had seen in his past life: the scariest thing about an interview is not when the interviewer interrupts you, but when he says "continue" and you actually continue until you realize that you have gone off-topic and gone to outer space.
Is he in outer space right now?
Then Zhou Botao's voice rang out, his "interest" finally no longer concealed: "You mentioned compatibility between different versions. What are your thoughts on Android version fragmentation? How should developers deal with it?"
Industry knowledge questions. This is where the biggest difference lies.
Lin Shen knew that his words had already attracted attention. Now, he needed to give a profound answer that didn't seem out of place.
"Fragmentation is an inherent problem of the Android ecosystem, but it is also where its vitality lies." He first set a tone, "I think we can deal with fragmentation on three levels: the technical level, the process level, and the ideological level."
"From a technical perspective, this involves the architectural isolation mentioned earlier, using support libraries, and clearly defining the minimum version baseline. From a process perspective, it's necessary to establish an automated test matrix that covers mainstream devices and critical system versions, rather than relying on random manual testing. And from a conceptual perspective..."
He paused, and then said the most crucial sentence.
"I believe developers should shift from 'passive compatibility' to 'proactive adaptation.' Instead of waiting for problems to arise before fixing them, they should consider from the initial design stage: How can this feature be downgraded on lower versions? How can it be enhanced on higher versions? What are the bottom line and upper limit of the experience under different hardware capabilities?" he said slowly. "Fragmentation should not only be a limitation, but also a driving force for us to design more robust and flexible system architectures."
After saying that, he himself was a little dazed, because what he said sounded too much like the summaries he made at those technical sharing sessions later on.
On the other end of the phone, Zhou Botao chuckled softly but clearly.
It wasn't mockery, but the kind of laugh that's "interesting".
"A long-term perspective," he said.
This time, Lin Shen sensed certainty in his voice.
"Okay, one last question." Zhou Botao's tone became more formal. "Why do you want to join Tencent? In particular, if you had to choose, which product or business area are you most interested in?"
The ultimate question. Lin Shen knew that his answer would directly determine the success or failure of this "gamble".
He remained silent for a few seconds, not out of hesitation, but to make the silence seem solemn enough.
"I want to join Tencent," he said, his voice steady and clear, "not because Tencent is a big platform, nor because of the high salary and good career development, but because here I have the opportunity to participate in shaping the product experience for hundreds of millions of users, and to be exposed to the most cutting-edge technical challenges and business scenarios. This kind of challenge is hard to find elsewhere."
Lin Shen spoke with arrogance, but he believed he was worthy of his previous answer.
He slowed his speech slightly: "As for business direction... I'm personally most interested in mobile social networking and communication. Not because it's so hot right now, but because I believe that the first thing mobile internet will disrupt is the way people connect. And communication is the underlying protocol for that connection."
He used the word "protocol," a metaphor that tech people would understand.
There was a long silence on the other end of the phone.
Lin Shen could feel his palms sweating slightly. A faint static hum came through the headphones, along with indistinct ambient sounds from Zhou Botao's end—perhaps the sound of fingers lightly tapping on the table, or the slight turning of the swivel chair.
He suddenly remembered the absurd thought he had before the interview: "If the interviewer asks why I chose Tencent, I'll say 'because the cafeteria is good.'"
Now he wants to say to himself a minute ago: Luckily you didn't say it.
"Okay." Zhou Botao finally spoke, his voice regaining its initial calm. "I've finished asking my questions. Is there anything else you'd like to ask me?"
A classic rhetorical question. Lin Shen had already prepared two questions, but he changed the second one at the last minute.
"My first question is, if I'm fortunate enough to join, will the team value a newcomer's contributions to business implementation or their in-depth technical exploration more? My second question," he paused slightly, "is, in your opinion, besides learning ability, what cognitive pitfalls should a technologist be most wary of if they want to go further in the mobile internet wave?"
The first question demonstrated his thinking about practical work. The second question—which he changed to "cognitive traps"—was more incisive and insightful than "the most important quality."
On the other end of the phone, Zhou Botao seemed to be stunned for a moment, and then he really thought about it for a few seconds.
"The first question: At Tencent, especially in the early teams, what we value most is the ability to solve real-world problems with technology. Business implementation and technical depth shouldn't be separate; depth should serve implementation." He answered very frankly. "The second question... cognitive traps."
He paused for two seconds before slowly saying, "I think what we need to be most wary of is using past experience to linearly extrapolate to the future. The mobile internet is not a simple extension of the PC internet; it has its own interaction logic, network characteristics, and user habits. Many best practices that work on PCs may be wrong on mobile. Maintaining skepticism and an open mind is more important than how much existing technology you master."
This answer seems to carry a hint of a reminder.
Kid, take it easy!
"I understand, thank you, Teacher Zhou," Lin Shen said sincerely.
"Okay, that concludes today's interview. HR will contact you with the results later." Zhou Botao's voice seemed to have gained a touch of warmth. "Thank you for your time, goodbye."
Goodbye, thank you.
The phone hangs up.
"beep--"
vstars