Neel
Top ten percent in every training test. Closes his first client escalation in forty-one minutes with a copied answer. Then a job that should take one hour starts taking eighteen.
The Fast Coder, the Curious Coder, and the Fundamentals AI Can't Replace
18 hours 15 minutes.
A book for freshers and early-career engineers who want to grow into software architects. Two friends from the same small town graduate in 2019. One does exactly what is asked, quickly. The other keeps asking how things work inside. Follow them through outages, mentors, lockdowns and AI agents, and learn to think like an architect before anyone gives you the title.
Free. No sign-up needed. About 15 minutes per chapter.
Top ten percent in every training test. Closes his first client escalation in forty-one minutes with a copied answer. Then a job that should take one hour starts taking eighteen.
Rejected by thirty-two companies for one number on an old mark sheet. Hired because of a ₹1,600 website nobody asked him to build. Opens the source code of things everyone else only uses.
Neither is the villain. Speed is a strength. The book is about what turns it into judgement.
You can pass a test and write a program. You want to know why a real system behaves, and how to show proof of that in a room full of toppers.
You close work quickly. Some of those fixes come back. You want the habit that makes the next fix last when the data, the names, or the traffic change.
Nobody has given you the title. You still want the questions an architect asks, while the code is yours to write and the mistakes are still small enough to learn from.
Thinking like a software architect means judging the system around a task before you change the code. A fresher is often rewarded for closing the ticket. The useful question is different: what was actually needed, which layer the time is spent in, and what breaks when the data grows. Architect in Progress is a free, story-led book for freshers and early-career engineers who want that judgement before anyone gives them the title.
The story follows two friends who graduate from the same small town in 2019. Neel is fast. He finds an answer that already exists and ships it. Kabir is curious. He asks how the thing works inside. Neither is the villain. Speed is a strength. The book is about what turns speed into judgement, across outages, mentors, lockdowns, and AI agents. Three chapters are open. Each takes about fifteen minutes, needs no sign-up, and ends with a notebook you can try on a project of your own.
The comparison below is the habit the open chapters keep returning to. The table of contents shows which of those chapters you can read today, and the questions further down answer the practical ones: time, price, and what this book refuses to be.
| Situation | Fast coder | Architect's habit |
|---|---|---|
| A ticket | Close what was asked | Name what was needed |
| A slow page | Rewrite the code you can see | Measure which layer spent the time |
| An AI answer | Ship the polished fix | Ask which inputs would break it |
Nobody checks your marks on the thing you built for fun.
Every magic trick is just a design you haven't read yet.
Every line you add is a line someone has to carry.
The database did exactly what you asked. That was the problem.
The fastest code is the work you never had to do.
Let AI write the code. Never let it make your decisions.
A graduate rejected for one old mark-sheet number is hired because of a small website he deployed himself. The notebook asks you to trace a single request and notice that a faster copy of a page can also be a wrong one.
A fast export fix closes the ticket. It will not survive real names, line breaks, or a file that grows every month. The notebook separates the asked version of a task from the needed one, and points at the standard for CSV instead of a cleverer pattern.
A page feels slow, and the server is not the reason. The time is in the conversation: address lookup, connection, security, then the request, repeated for every file. The notebook is the stack under one click, and a reminder to measure before you rewrite.
Preview chapters as they are finished, a vote on the cover, and one email when the book launches on Amazon. About one email a month. Unsubscribe any time.
It is for freshers and early-career software engineers who can already write code and want to grow into software architects. That includes campus placements, the first year on a job, and engineers a few years in who close tickets quickly and want better judgement. It is not a certification cram and not a staff-level interview script.
A fresher can start the habit immediately. The title usually comes later, after you have shipped systems and earned trust. In this book, architecture is something you practice on ordinary work: trace one request, ask what else could fail, and keep proof of something you built. You do not wait for a promotion to begin.
Level up by separating what the ticket asked from what the business needed, and by measuring which layer is actually slow before you rewrite anything. The early chapters show a copied fix that closes a client escalation in forty-one minutes, and a slow page whose server was already fast. The growth is judgement, practiced on the work you already have.
A fast coder finds a working answer and moves on. An architect asks what happens when the input changes, the file grows, or a different layer is wasting the time. Neel and Kabir, the two graduates in the book, show both habits. Speed is useful. It becomes architecture when you can explain what will fail next.
No. It is a story about engineers at the start of their careers, with a short notebook at the end of each chapter. You will meet DNS, caching, CSV, and the layers under a page load, but as problems inside a job, not as a checklist of interview diagrams. If you want judgement you can use on Monday’s ticket, start here.
Let AI write a draft. Do not let it make the decision. A polished paragraph about passion sounds like everyone else on the bench, because it is everyone else. Proof you can explain, a measurement of where the time went, and a list of inputs that would break the fix are still yours to produce. The book’s line for a later chapter is: let AI write the code, never let it make your decisions.
The open chapters are free to read on this page. No account is required. Each one takes about fifteen minutes. Fifteen further chapters are still being written. You can leave an email if you want those when they are ready, about one email a month, and you can unsubscribe from any message.
Abhishek Narayan wrote it. He has spent more than fourteen years on banking, lending, and billing systems, has worked as a solutions architect, is TOGAF certified, earlier founded the technology startup Busyar, and now builds generative-AI platforms for a leading NBFC in India. The characters are fiction. Many of the failures are problems he lived through, including an eighteen-hour job and a tool nobody asked for.
I came across this book and find it interesting for anyone who wants to build mindset as an architect.
Facebook, LinkedIn, and WhatsApp show the cover with this line. On a phone, Instagram can attach the cover too.
Kochi, 2019
Draft · early-reader previewThirty-two companies had rejected Kabir without ever meeting him.
Not because of his code. Not because of his interview. Because of one number on a mark sheet from four years ago: fifty-eight percent in twelfth. Every company wanted sixty. The system filtered him out before a human could even see his name.
Today was company number thirty-three. The last one.
His father used to wake him every morning at half past five. A hand on the shoulder. The smell of boiling milk and cardamom from the kitchen. One soft sentence. "Utho. The day has already started without you."
There was no father in the hostel in Kochi. But at five-thirty that morning, Kabir's eyes opened anyway.
He ironed his only formal shirt on a towel spread across the study table. Pale blue. Frayed collar. Lucky, he hoped.
"Read it again," he said.
Neel sighed and turned his laptop around. Neel had a job offer already. A big services company, the kind with a logo every parent in their town knew from newspaper ads. He had cleared every round quickly and correctly, the way he did everything: find the best answer someone else had already written, and use it. He had copied his joining email from a senior's. Twice, because the first time he forgot to change the name.
"Eligibility," Neel read. "Seventy-five percent in B.Tech. Nothing about twelfth."
Kabir had seventy-eight.
"So you can sit," Neel said. "Now you just have to beat fifty toppers. Easy."
Kabir did not laugh. He had sat through the company's presentation the evening before, in the back row of the seminar hall. The slides had been bold. Very high quality standards. We hire few, and we grow them. A world map full of glowing dots, one for every engineer now working abroad. Singapore. Frankfurt. London. New York. Dallas. Dubai. Brussels. Paris. And many more, so many that the dots blurred into one bright smear across Europe.
Fifty toppers in pressed shirts had nodded along in the front rows. Kabir had looked at the dots and done the maths.
Zero. His chances were zero.
The written test was in the computer lab on the second floor, the one with the broken air conditioner and the windows painted shut.
Neel had guessed fifty. There were sixty-two students and sixty-two chairs. Neel was usually wrong about numbers he didn't need. One clock above the door that ran four minutes fast, which everyone knew and nobody had ever fixed.
Kabir sat in the last row, next to a pillar. From there he could see the backs of sixty-one heads. He knew most of them. The girl who topped every semester. The boy whose father was a professor. The three friends who had already done internships in Bengaluru and talked about "sprints" in the canteen.
The first section was aptitude. Trains leaving stations. Pipes filling tanks. A man who walked four kilometres north and three kilometres east and wanted to know how far he was from home. Kabir had solved these problems since he was fourteen, on the back of old calendars, by the light of a kerosene lamp when the power went out. He finished early and checked every answer twice.
The second section was a single coding problem. Find the most frequent word in a paragraph of text.
Around him, keyboards started clattering. Fast. Confident.
Kabir read the problem three times. Then he did something he did with every problem, a habit nobody had taught him. He asked himself a question first.
What could go wrong?
Capital letters. "The" and "the" should be the same word. Commas stuck to the ends of words. Two words tied for first place. An empty paragraph.
He wrote all five on the rough sheet before he typed a single line of code. It cost him eight minutes. The boy in front of him was already leaning back in his chair, done.
Kabir wrote his solution slowly. Then he tested it against each of the five things on his list. Two of them broke it. He fixed both.
When the invigilator called time, he was still checking the last one.
They put the shortlist on the notice board at two o'clock, outside the placement office, under a tube light that buzzed like a trapped bee.
A crowd had formed before the paper was even pinned. Kabir stayed at the back. He could see over most heads, but he did not want to look. Looking meant knowing.
"Eighteen names," someone said.
Eighteen. Out of sixty-two.
The crowd moved like water around a stone. Some faces lit up. Some went quiet and drifted away towards the canteen. The girl who topped every semester was on it. The professor's son was not. Someone said the coding problem had hidden test cases. Capital letters. Punctuation. Ties.
Kabir stepped forward when the crowd thinned.
Eighteen names, typed in a column, in alphabetical order.
His was the eleventh.
He read it again. Then he read the whole list again, in case the eleventh name belonged to a different Kabir. It did not. There was no different Kabir. There was only him, and his roll number, and a time: 3:40 p.m., Room 7.
He did not tell anyone. He walked back to the hostel, sat on his bed, and stared at the ceiling fan going round and round, as if it might explain something.
At 3:25 he was sitting on a wooden bench outside Room 7, his file of certificates flat on his knees.
Seven. His mother said seven was lucky. Seven notes in music, seven days in a week, seven rounds around the fire at a wedding. But his grandmother had never started a journey without first checking the Rahu Kaal in the calendar on the kitchen wall, and Kabir could not remember what the inauspicious hours were on a Tuesday. Was it afternoon? Was it exactly now?
He took out his phone to check. Then he put it back. If it was Rahu Kaal, he did not want to know.
Lucky seven, he decided. Rahu could wait outside.
The door opened. "Kabir?"
The interview room was an old classroom. Chalk dust on the blackboard. A steel desk. Behind it, a tired man from a Trivandrum product company with a cold cup of coffee and a pile of résumés that all looked the same.
He did not look up.
"Electrical engineering," he said. "Why do you want a software job?"
Kabir had practised an answer about passion. So had everyone waiting on the bench. He could already hear how empty it would sound.
So he said something else.
"I have a website."
Now the man looked up.
"It's live," Kabir said. "I built it in Drupal. It runs a coaching centre in my town. Six hundred rupees for the domain, one thousand for hosting." He paused. "That was almost my whole month's mess money. I ate a lot of Maggi that month."
The man turned his laptop around. "Show me."
Kabir typed the address. The page loaded slowly, the way small-town internet had taught him to wait. Then it appeared. A green timetable. A fees page. Photos of smiling students holding certificates. A contact form he had fixed for three nights because every message went to spam.
The man clicked around in silence. Then he stopped.
"Why do you have two caching modules?"
Kabir's stomach dropped. He knew the answer. He did not like it.
"The first one broke the photo gallery," he said. "So I added a second one. I never removed the first."
"Why not?"
"I was scared something else needed it."
The man leaned back and looked at him for a long moment.
"That," he said, "is the most honest answer I've heard all day."
He pulled the laptop closer and kept clicking. "Tell me something. A parent in Delhi types this address on her phone. What happens before she sees the timetable?"
Kabir felt his English slow down, the way it always did when the question mattered. He translated each sentence in his head before he said it.
"Her phone does not know where my website is," he said. "It only knows the name. So it asks. Like asking for directions at a tea stall. The name is changed into an address. A number. Then her phone goes to that address, to my hosting company's computer. That computer runs Drupal. Drupal asks the database for the timetable. Then it builds the page and sends it back."
"And the caching module?"
"So Drupal does not build the same page again and again. It keeps a ready copy. Like a shopkeeper who keeps the most popular sweets at the front, instead of going to the back room every time."
The man almost smiled again. "And the module you never removed. What would you do with it now?"
Kabir thought about it. Really thought, the way he had thought about the five things that could go wrong in the coding problem.
"First I would copy the whole site. A backup. Then I would switch the old module off, not delete it. Then I would open every page and check. If nothing breaks for one week, I delete it."
"Why one week?"
"Some pages are only used on Mondays. The fee page. Parents pay on Mondays."
The man wrote something on the résumé. Kabir could not read it upside down. It was short. Two or three words.
"Thank you," the man said. "We'll let the placement office know by evening."
Kabir stood up, pushed the chair back in, and walked out. In the corridor, the next candidate was whispering her passion answer to herself, eyes closed.
The email came at 6:36 p.m.
Kabir was sitting on the hostel steps when his phone buzzed. He did not open it at first. He held the phone face down against his knee and watched a crow on the water tank opposite try to open a biscuit packet.
The crow got the packet open on the fourth try.
Kabir turned the phone over.
We are pleased to offer you the position of Associate Software Engineer. Location: Trivandrum.
Three offers out of eighteen interviews, the placement office would announce the next morning. He was one of the three.
He read it once. He read it again. He read the salary line, which was more money than his father earned in a year, and then he had to put the phone down on the step because his hands were not steady.
He called home.
His father answered on the second ring. He always answered on the second ring, as if the first ring was for deciding.
"Papa. I got it. The last company. Trivandrum."
There was a silence on the line. Kabir could hear the evening sounds of his town behind it. A pressure cooker whistle. A scooter horn. Someone selling vegetables from a cart.
Then his father cleared his throat.
"Good," he said. That was all. Just good.
And then, after a pause: "Kal se aur jaldi uthna. Bade log jaldi uthte hain." From tomorrow, wake up even earlier. Big people wake up early.
Kabir laughed so hard that a boy walking past with a bucket stopped and stared.
That evening, Neel found him on the same steps, reading the same email for the eleventh time while the sky over the backwaters turned orange.
"Product company?" Neel said. "They'll make you think every day. Sounds exhausting."
"And you'll get paid to do what you're told."
"Exactly." Neel grinned. "Google and Stack Overflow do my thinking. Now I just need something to do my working."
They both laughed.
Neel sat down beside him. For a while neither of them said anything. Below them, the hostel cook was arguing with the milk supplier about yesterday's bill, and the argument had the comfortable rhythm of a fight they had every single day.
"Seriously," Neel said. "What did you say to them? Three out of eighteen. And all those toppers."
Kabir thought about it.
"I didn't say anything," he said. "I showed them something."
"The coaching website? That thing you made in second year?"
"Third year."
"You spent your mess money on that. I remember. You borrowed my Maggi for two weeks."
"Three weeks."
Neel shook his head slowly. "Sixteen hundred rupees," he said. "For a website nobody asked you to make."
"Nobody asked," Kabir agreed.
Neel looked at him, and for a moment the joke went out of his face. Then it came back.
"Fine," he said, standing up and dusting off his jeans. "When you're rich and famous in Trivandrum, you're buying me Maggi for three weeks. With interest."
"Compound interest."
"Now you sound like a product company."
They walked back inside together, arguing about whether Maggi interest should be calculated daily or monthly.
Neither of them knew that sixteen hundred rupees had just changed Kabir's life. Or that, one year later, Neel's easy job would hand him a problem no Google search or Stack Overflow answer could solve. A problem that would take eighteen hours to run.
Every single day.
The toppers had better marks. Kabir had proof.
Learning that looks useless today, a website nobody asked for or a problem you solve just because you are curious, does not disappear. It waits. And one day, in a room you never expected to enter, it speaks for you.
The idea in plain words
Kabir did not think of himself as someone who understood "architecture." But his small coaching website already had almost every part that the largest systems in the world have. He just did not have the names for them yet.
When the interviewer asked what happens before the parent in Delhi sees the timetable, Kabir described a full system, piece by piece:
Every one of these parts has its own careers, its own books and its own famous failures. Kabir met them all for sixteen hundred rupees.
Worked example: trace one request
Pick any small project you have built, or any website you use every day. On a single page, write down what happens, step by step, from the moment someone types the address to the moment they see the page. Use Kabir's seven parts as a checklist.
For each step, ask three questions:
For Kabir's site, the answers might look like this:
That last one is worth sitting with. Making something faster can quietly make it wrong. You will see that trade-off again and again in this book.
AI suggested / Thinking found
AI suggested: Today, ask an AI assistant, "How should I answer 'Why do you want to join a software company?'" and you will get a polished, sensible paragraph about passion, growth and learning. It will sound exactly like everyone else on the bench, because in a sense it is everyone else on the bench.
Thinking found: The interviewer had heard the passion answer all day. What he had not seen was evidence. Kabir's real advantage was not a better sentence. It was a live website, a mistake he could explain honestly, and a careful plan to fix it. AI can polish your words. It cannot build your proof for you.
Go deeper
Chennai, 2019
Draft · early-reader previewNeel closed his first real ticket in forty-one minutes.
His manager praised him on a call with the client. The client sent a thank-you email. Neel's mother forwarded a screenshot of that email to every relative she had, including two aunts who did not own smartphones.
It would be a long time before anyone understood what that code actually did. Including Neel.
Before the ticket, there was training.
Ninety days on a campus so big it had its own bus routes. Glass buildings. Lawns so green they looked painted. Fountains at every turning, as if the company had decided that water shooting into the air was a sign of good engineering.
Neel loved it.
He loved the food court with eleven counters. He loved the gym nobody used after the first week. Most of all, he loved the tests. Every Friday there was an assessment, and every Friday Neel scored in the top ten percent of his batch of four hundred.
His method was simple. Find out what will be asked. Learn exactly that. Nothing more.
"Why waste memory?" he told his roommate, a quiet boy from Nagpur who read the Java documentation at night like it was a novel. "The brain is like a phone. Limited storage. You don't download apps you won't use."
The trainer, a cheerful man with a moustache like a paintbrush, ended every session with the same line. "Remember, freshers. The client is god. The deadline is dharma."
Neel wrote it on the first page of his notebook and underlined it twice.
After training, he was posted to Chennai.
The office was on the eleventh floor of a tower on the IT corridor, the long road where every building looked like a giant glass refrigerator. His project was called LoyaltyPlus. It ran the rewards programme for a large telecom company in the Gulf. Every time a customer recharged, paid a bill or bought a new phone, LoyaltyPlus gave them points. Points became free data, free minutes, sometimes a discount on a new handset.
Four million customers. One team of fourteen people. Most of them had joined in the last two years.
His team lead was called Venkatesh, but nobody called him that. Everyone called him Venky Sir. He was thin, fast and always slightly out of breath, as if he had just run up the eleven floors. He did not speak in sentences. He spoke in ticket numbers.
"Neel. Welcome. Sit there. Get access. 4417 and 4418 are yours once your laptop works. 4402 is urgent but Prakash has it. Lunch is at one. Questions?"
Neel had about forty questions. He asked none of them.
Prakash sat at the next desk. He had been on the project for three years, which made him the oldest person on the team, at twenty-six. He had dark circles under his eyes and a coffee mug that said WORLD'S OKAYEST EMPLOYEE.
On Neel's second day, Prakash leaned over and lowered his voice, as if he were about to share a family secret.
"Let me give you the most important thing you will learn here."
Neel leaned in.
Prakash opened a folder on the shared drive. It was called working_code_DO_NOT_TOUCH.
Inside were hundreds of files. Java classes. SQL scripts. Shell scripts with names like fix_final.sh, fix_final_2.sh and fix_final_REAL.sh.
"Whenever something works," Prakash said, "you copy it here. Whenever you need something, you look here first. Don't ask why it works. Nobody knows why it works. It just works."
"Who wrote all this?"
Prakash shrugged. "People. Some left. Some are in onsite now, in Dubai. Doesn't matter. Code doesn't care who wrote it."
Neel looked at the folder with something close to love. Here was the whole idea of training, made into a folder. Find what will be asked. Find the answer. Use it.
Ticket 4417 arrived on a Tuesday afternoon.
Monthly points report export broken for some customers. CSV file shows data in wrong columns. Client escalation. Please fix ASAP.
Below it, Venky Sir had added one line: Neel, pls take. Client call at 6.
It was 4:52.
Neel opened the report. Every month, LoyaltyPlus produced a CSV file with one line for each customer: ID, name, city, points earned, points used, balance. The client's finance team opened it in Excel.
He scrolled until he found a broken line. It took him four minutes.
The customer's name was written as Al Mansouri, Ahmed. Surname first, then a comma, then the first name.
And the code that read the file split each line at every comma. So Al Mansouri went into the name column, Ahmed went into the city column, the city went into the points column, and everything after that slid one place to the right, like a row of dominoes.
Neel felt a small, bright spark of pride. He had found the problem in four minutes. Now he only needed the fix.
He opened Google and typed: java split csv comma inside quotes.
The first result was Stack Overflow. The question had been asked nine years ago and viewed more than a million times. The top answer had over two thousand upvotes and a green tick. It was one line of code. A regular expression, a long string of brackets, quotes and symbols that looked like a cartoon character swearing.
The answer said: Use this. It splits on commas only when they are outside quotes.
Neel did not understand the regular expression. He did not try to. Two thousand people had upvoted it. A green tick meant it was correct. That was what the green tick was for.
He copied it. He pasted it into the export reader. He ran the report again.
Al Mansouri, Ahmed sat neatly in the name column. Every column lined up. The dominoes stood straight.
He checked the time. 5:33.
Forty-one minutes.
The client call was on speakerphone in a small meeting room with a glass wall and a whiteboard nobody had cleaned in months. Venky Sir dialled in. Three people from the Gulf joined, their voices slightly delayed, like a dubbed film.
"Regarding 4417," Venky Sir said, "the fix is done. My new team member Neel found the root cause in under one hour."
There was a pause on the line. Then a woman's voice. "Under one hour? That's excellent. That report was blocking our month-end close. Thank you, Neel."
Neel had never been thanked by a client before. He had never been thanked by anyone in a different country before. He felt it in his chest, warm, like a cup of tea on a cold morning.
At 7:15, the email arrived. Subject: Excellent turnaround on 4417. Venky Sir forwarded it to the whole team with one word on top: Super.
Neel took a screenshot and sent it to the family WhatsApp group.
His mother replied with eleven heart emojis and a voice note that started with "Beta" and lasted two minutes and forty seconds. By nine o'clock, his uncle in Pune had forwarded it to a group called Mishra Parivaar Worldwide, which had two hundred and six members.
At ten that night, Neel called Kabir.
Kabir picked up on the first ring. He was still at the office in Trivandrum. Neel could hear the hum of an air conditioner and someone typing very fast in the background.
"You're still at work?" Neel said. "It's ten o'clock. Are they paying you overtime?"
"No. I'm stuck on something."
"Since when?"
"Monday."
Neel laughed. "Three days? On one thing? I closed a client escalation today in forty-one minutes. My manager said it on a client call. My mother has forwarded it to two hundred people."
"Congratulations," Kabir said, and he meant it. Neel could hear that he meant it. "What was the problem?"
Neel explained. The names with commas. The dominoes. The Stack Overflow answer with the green tick.
"What does the regex do?" Kabir asked.
"It splits on commas outside quotes."
"I know what it does. I mean, how does it do it?"
Neel opened his mouth, then closed it. "Does it matter? It works. Two thousand upvotes."
There was a short silence on the line. Neel could almost hear Kabir thinking. It was an irritating sound, even through a phone.
"How long are the lines in that file?" Kabir asked.
"What?"
"The lines. In the CSV. How many characters?"
"I don't know. Normal length. Why?"
"No reason," Kabir said. "Just, some patterns get slow when lines get long. I read something about it once."
"You read too much," Neel said. "That's why you're at the office at ten o'clock and I'm lying on my bed eating chips."
Kabir laughed. "Fair."
"What are you stuck on, anyway?"
"A page that loads in two seconds. It should load in half a second."
"Two seconds?" Neel said. "Bro. Nobody is going to notice two seconds."
"I noticed."
"That's your problem," Neel said. "You notice too much."
Before he slept, Neel opened the Stack Overflow page again. He wanted to bookmark it for the folder. Prakash would be proud.
This time, for no reason at all, he scrolled down past the answer.
Below the green tick, in small grey text, there were comments. Most of them said Thanks! or Saved my life or Works perfectly. But one comment, with fourteen upvotes, said something different.
Careful: this pattern looks ahead to the end of the line for every comma, so it gets slower and slower as lines get longer. Also, it reads one line at a time, so it will break if a quoted field contains a line break. For real CSV files, use a proper CSV library.
Neel read it twice.
Then he thought about the folder. The fountains. Venky Sir saying his name on the client call. Two hundred and six relatives. The woman's voice from the Gulf: That's excellent.
The file was working. The client was happy. The ticket was closed.
He bookmarked the page, closed the laptop, and turned off the light.
It worked. That was enough.
For now.
Somewhere in a data centre in Dubai, the monthly report was a little longer than it had been last month. It would be a little longer again next month. And the month after that.
Neel was asked to fix the export. He did. But what was needed was an export that would keep working when the data changed, when names had commas, when addresses had line breaks, when the file grew from thousands of lines to millions.
A ticket tells you what someone noticed. It does not tell you everything that is broken. Closing the ticket is the start of understanding the problem, not the end.
The idea in plain words
Every task has two versions.
The asked version is what is written in the ticket: Fix the export.
The needed version is what the business actually depends on: Finance must be able to trust this file every month, whatever the customers' names look like and however large the file becomes.
Most freshers solve the asked version. Engineers who grow fast learn to find the needed version, usually by asking one simple question: What else could make this break?
Worked example: why "split at commas" is the wrong idea
CSV stands for comma-separated values. It sounds simple. It is not. The commonly used rules for CSV files, written down in a short public document called RFC 4180, allow all of these:
Chennai"Al Mansouri, Ahmed""Ahmed ""The Rocket"" Khan"Now look at Neel's fix with those four cases in mind.
A proper CSV library already handles all four cases and has been tested by thousands of projects. The real fix was not a cleverer regular expression. It was recognising that CSV is a format with rules, and using a tool built for that format.
AI suggested / Thinking found
AI suggested: Today, if you paste "fix CSV split when names contain commas" into an AI assistant, it will very likely give you a quick regular expression too, or a small hand-written parser. It will look clean and confident, and it will pass the example you gave it.
Thinking found: Ask a second question: What inputs would break this? Is there a standard for this format? Is there a well-tested library? Those three questions turn a forty-one-minute fix into a fix that survives for years. Notice that Neel had the warning right in front of him, in a comment with fourteen upvotes. The answer was there. He only had to scroll.
Go deeper
Trivandrum, 2019
Draft · early-reader previewOn his third day at work, a seventy-one-year-old man tore a love letter into eleven pieces and asked Kabir to help deliver it across the room.
It was the most important lesson of his first year. He did not know that yet. At the time, he only knew that his piece of the letter had landed in a wastepaper basket.
The company was called Kayal Technologies. Kayal means backwater in Malayalam, and the founders liked to say that good software should be like the backwaters: calm on the surface, with a lot going on underneath.
The office sat inside a technology park on the edge of the city, among coconut palms and glass buildings that reflected the clouds. The canteen served appam and stew every Thursday. A peacock lived somewhere on the campus and screamed at random times, usually during important meetings.
Kayal made one product: a platform for relationship-based pricing and billing, built on a single rule engine. When a bank in Singapore or Frankfurt needed to decide what fee to charge a customer for a transfer, or what discount a family with five accounts should get, Kayal's engine decided. When a telecom company needed to bill a customer for a bundle of calls, data and a new phone, the same engine did that too. In this small corner of the software world, Kayal was number one, and leading banks and telecom companies on four continents ran on it. Hundreds of rules. Millions of transactions. Every one of them had to be correct, because every one of them was somebody's money.
There were eleven new joiners in Kabir's batch. Three from his own campus drive. The rest from colleges whose names Kabir had only seen on rankings lists. On the first day, during introductions, they said things like I interned at a fintech in Bengaluru and My final-year project was on distributed systems.
Kabir said, "I am Kabir. Electrical. I made a website for a coaching centre."
Someone in the back row giggled. Kabir looked at the floor and counted the tiles until the next person started talking.
Induction was two weeks long. Most of it was what Kabir expected. Company history. HR policies. How to book a meeting room. How not to reply-all.
Then, on the third day, the training manager said, "This afternoon's session is special. Professor Varghese has come from Kollam."
Professor Thomas Varghese was seventy-one. He wore a white shirt, a white mundu and black-framed glasses held together at one hinge with a small piece of tape. He had taught computer networks at an engineering college for thirty-eight years. The founders of Kayal had been his students. Every year, they invited him to talk to the new batch, and every year he came by bus, refused the taxi they sent, and brought his own chalk.
He did not use the projector.
"Slides," he said, putting the remote control gently aside, as if it were a small animal that might bite, "are where ideas go to sleep."
He looked around the room. Eleven new joiners. Eleven laptops. Eleven phones lying face up on the table.
"All of you use the internet every day. More than you use your legs." A few people laughed. "So. Tell me. How does a message travel from this room to a computer in Germany?"
Silence.
The boy who had interned in Bengaluru said, "Through cables. Under the sea."
"Yes. And how does the cable know where Germany is?"
Silence again.
"Good," the professor said, looking pleased. "Silence is honest. Let us earn the answer."
He gave each of them a sheet of paper and asked them to stand in a loose web across the room. Some near the window. Some near the door. Kabir ended up beside a pillar, as he usually did.
"You are all routers," the professor said. "You are the computers that sit between your home and Germany. You do not know where Germany is. You only know who your neighbours are. That is all a router knows. Its neighbours."
Then he wrote a message on the board. Meet me at the backwaters at six. Bring mangoes.
"A love letter," he said. "Very important. It must reach Germany." He pointed at the girl standing by the window. "You are Germany."
He tore the message into eleven small chits, one or two words each, and numbered every chit. Then he handed them all to the boy standing by the door.
"You are my laptop. Send them."
The boy looked at the bundle of chits, confused. "To whom?"
"To any neighbour who is closer to Germany than you. Each router, do the same. Pass the chit to whichever neighbour seems closer to Germany. If your neighbour is busy, choose another one."
It was chaos. Wonderful chaos. Chits went left and right. Two people tried to pass to the same person at once. One chit took a long route around the back of the room. One went straight through the middle. Kabir received a chit with the word mangoes on it, hesitated, threw it towards a girl two places away, missed, and watched it land in the wastepaper basket.
"Packet lost!" the professor said happily, clapping his hands. "Excellent. Continue."
When the movement stopped, the girl by the window had nine chits.
"Germany," the professor said. "Read your love letter."
She arranged the chits by number. "Meet me at the... six. Bring..."
"Missing pieces," the professor said. "What do you do?"
She thought. "Ask the sender to send them again?"
"Yes! Which numbers?"
"Four and eleven."
"Laptop, send four and eleven again."
The boy at the door wrote two new chits and sent them through the web. This time the mangoes chit reached Germany through a different path, around the far side of the room, nowhere near the wastepaper basket.
Germany read the full message aloud. Everyone clapped. Somebody whistled. The peacock outside screamed, as if it had been waiting for the moment.
They sat down, breathing a little faster, smiling like schoolchildren after a game.
"What you just did," the professor said, writing on the board, "is called packet switching. The big message was broken into small packets. Each packet had a number. Each router only knew its neighbours. Nobody controlled the whole path. Some packets were lost. The two ends, the sender and Germany, noticed and fixed it."
He drew a simple stack of boxes, one on top of another.
"There are layers. At the bottom, the cables and the signals. Above that, the routers moving packets towards an address. That is IP, the internet protocol. Above that, the layer that numbers the packets, checks what arrived and asks for what is missing. That is TCP. And on top, your application. Your browser. Your email. Your love letter."
He tapped the top box. "The love letter does not know anything about cables. The cables do not know anything about love letters. Each layer does one job and trusts the layer below it to do its job. That is why it works. That is why it has kept working for fifty years while everything on top of it changed a hundred times."
Kabir felt something open in his chest. It was the same feeling he had had at fourteen, when he took apart a broken table fan and understood, for the first time, why the blades turned.
He wanted to ask a question. His English slowed down in his head, word by word, the way it always did. Don't ask. They will laugh again. The Bengaluru intern will laugh.
He raised his hand anyway.
"Sir. If no router knows the whole path, who decides the route?"
The professor looked at him for a long moment over his taped glasses.
"Nobody," he said. "And everybody. Each router makes a small, local decision. Pass it to the neighbour that seems closest. From millions of small decisions, a path appears. No king. No central office. If one router dies, the others simply choose a different neighbour, like your mangoes did."
He put the chalk down.
"This is the most beautiful idea in our field. The people who designed it did not try to control everything. They designed simple pieces with clear jobs, and they let those pieces work together. Small, honest parts. Big, strong systems."
Then he said the sentence Kabir would write on the first page of every notebook he owned for the next ten years.
"Never be satisfied that something works. Ask how it works inside. Every magic trick is just a design you haven't read yet."
When the session ended, the others rushed to the canteen for tea and banana fritters.
Kabir stayed back. The professor was slowly wiping the board with a duster.
"Sir. Which book should I read? For networks."
The professor looked surprised, then delighted, the way a fisherman looks when a fish jumps into the boat by itself.
He told Kabir the name of a textbook. Then he said, "But the book is not the best teacher. The best teacher is your own laptop. It speaks this language every second. Learn to listen to it."
"How?"
"Open your browser. Press F12. Find the tab called Network. Load any page and watch. Every line you see is a conversation. Count them. Ask what each one is for. Then open a terminal and type tracert, followed by the name of any website. You will see the path your packets take, router by router, like our chits across the room."
Kabir wrote it down on the back of his hand, because his notebook was in his bag and he did not want to waste a second.
Three months later, Kabir was stuck.
It was the page he had told Neel about on the phone. The account summary page in Kayal's product. A bank in Singapore had complained that it felt slow. Kabir measured it on his laptop. Two seconds, every time. His team lead said, "It's fine. Two seconds is normal." But Kabir had a stopwatch in his head that would not stop ticking.
He had spent three days reading the Java code behind the page. The database queries were fast. The calculations were fast. Everything on the server finished in less than a quarter of a second. So where did the other one and three-quarter seconds go?
At ten o'clock that night, after hanging up on Neel, Kabir sat alone in the quiet office. The peacock had gone to sleep. He looked at the page in his browser and remembered a white shirt, a piece of chalk and taped glasses.
Press F12. Find the tab called Network.
He pressed F12.
He loaded the page and watched the lines appear in the Network tab, one after another, like chits passed across a room.
He counted them.
Thirty-eight.
The page was not one conversation. It was thirty-eight separate conversations. Small files of script. Small files of style. Icons. Fonts. Some of them came from the company's own server. Some came from four other places on the internet, each one needing its own address lookup, its own handshake, its own little round trip to Singapore and back. Several of them waited for others to finish before they could even begin.
The server was fast. The conversation was slow.
Kabir sat back in his chair and laughed out loud in the empty office.
It took him two more days to fix. He combined the small script files into one. He stopped loading two fonts that nobody could see the difference between. He asked the server to tell the browser, keep this icon for a week, don't ask me again. He moved one library that loaded from the other side of the world onto the company's own server.
Thirty-eight conversations became nine.
Two seconds became half a second.
His team lead looked at the numbers on Monday morning and raised his eyebrows. "How did you find this?"
Kabir thought about the honest answer. A seventy-one-year-old man made me throw a love letter into a dustbin.
"I counted," he said.
Kabir did not fix the slow page by reading more code. He fixed it by understanding the system the code lived inside.
The internet works because it is made of simple layers, each doing one job and trusting the others. Once you see those layers, problems that looked mysterious become something you can count, measure and fix. And once you get into the habit of asking how does this work inside?, you never quite stop.
The idea in plain words
The internet is organised in layers. Each layer has one job and a clear contract with the layers above and below it. A simple way to remember them, from the bottom up:
The beauty is in the separation. Your browser does not care whether you are on Wi-Fi or a mobile network. The cable does not care whether you are loading a cricket score or a bank statement. That separation is why the internet has survived fifty years of change.
Worked example: what happens when you open one page
When the bank user in Singapore opened Kabir's slow page, this is roughly what happened, for each of the thirty-eight files:
Each of these steps takes at least one round trip across the network. If the server is far away, every round trip costs real time, even when the server itself is very fast. Browsers can reuse connections and fetch several files in parallel, but they still have limits, and some files had to wait for others before they could start.
That is why Kabir's fixes worked:
Notice that none of these fixes touched the Java code. The problem lived in a different layer.
AI suggested / Thinking found
AI suggested: Ask an AI assistant, "Why is my web page slow?" and you will get a sensible checklist: optimise database queries, add caching, compress images, use a CDN. All reasonable. All generic.
Thinking found: Kabir's team lead had already assumed it was a server problem. The real answer came from measuring which layer the time was spent in. The server took a quarter of a second; the conversation took the rest. AI can give you a list of possible causes. Measuring tells you which one is actually yours.
Go deeper
tracert on Windows or traceroute on Mac or Linux, followed by any website's name. Each line is a router passing your packet along, just like the chits.nslookup with a website's name and see which IP address DNS returns.