Five years ago I wrote a letter to myself and then forgot it existed. It arrived on a Saturday afternoon, in my inbox, from a version of me who had no idea what was coming.
Nothing in it is dramatic. That is what makes it hard to read.
He asks four questions. Not one of them is about money, or a job title, or anything I would have predicted mattering. He asks whether I graduated. He asks whether my skills got better. He asks whether I found someone. He asks about my Instagram account.
Then he tells me not to overthink things, and that he knows I am strong.
"Have you graduated? Have you found work? Are you a programmer now?"
Yes. All three.
I graduated. I went through Bangkit Academy — the career-readiness programme led by Google, backed by GoTo, Tokopedia and Traveloka — and my team built Terrafarms — soil analysis and disease detection for farmers who have never had access to either. I founded the Google Developer Student Club at INSTIKI and led it as its first chapter lead. Today I build and maintain the web side of an entire group of companies: wedding studios, a print house, marine fuel suppliers in Singapore and Dubai.
So the honest answer to his question is yes, and it is not close.
But here is what I want to tell him, and cannot.
In 2021, getting a programming job felt like a finish line. It was a starting line. He is picturing the day someone finally says yes to him. He is not picturing the years after that day, which is where everything actually happens.
"You only knew HTML, CSS, JavaScript and a bit of PHP. Did you get better?"
He measured himself in languages. I remember doing that. You count what you know, and the list is the answer to the question am I good enough yet.
The list did get longer. But that is not the change worth reporting.
The change is that I stopped counting. Somewhere in the last five years the question quietly became can I take an idea and turn it into a thing that a stranger will actually use. That is a different question, and knowing another framework does not answer it.
The tools I am proudest of are almost embarrassingly simple underneath. Aksara Bali converts Latin text to Balinese script. That is it. The hard part was never the code. The hard part was noticing that a script carved into the temple gates I walked past every day was one I could not read, and deciding that was worth an evening.
Learning to code was the easy half. Learning what to point it at took longer.
"Do you have someone yet? Or are you still choosing to be alone?"
I laughed at this one, and then I did not.
Look at what he chose to ask about. He had four questions and he spent one of them here. Not on salary. Not on a title. On whether he would be alone.
"What happened to your Instagram? Are you posting again?"
This question looks like the throwaway one. It is not.
He is not asking about an app. He is asking whether I am still making things and putting them where people can see them. Whether I got quiet.
"Don't overthink it. Let things happen the way they're meant to."
This is the part that undid me a little.
He is twenty-something, he has no idea what is coming, he is worried about all of it — and he stops worrying long enough to reassure me. The person with more information is comforting the person with less. It should be the other way round.
Did I take his advice? Mostly not. I have overthought nearly everything since. Some of it needed the thought. Most of it did not.
What actually surprised me
Not how many of his questions I could answer. All four, more or less.
What surprised me is how small his world was. He is worried about getting hired. I am worried about whether the thing I shipped is any good, whether the farmer opened the app, whether the student found the school. Those worries feel enormous to me right now, in exactly the way his felt enormous to him.
Which means the version of me reading this in 2031 is going to find today's worries small too.
That is the whole lesson, and I only get to see it because a stranger who happened to be me wrote it down and mailed it forward.
Dear Doni from 2021,
You get the job. You can stop refreshing your email.
You will build things you cannot picture right now — a script converter, a tool that watches you pedal, a dashboard for your own rides — and none of them will come from a tutorial. They will come from paying attention to something that annoyed you.
You will rebuild the same idea four times. You will ship things nobody uses. You will be wrong in public. It is fine.
The code was never the hard part. Understanding people is the hard part, and you have not started on that yet.
Keep being curious. It will take you further than any framework.
And you were right, by the way — I am strong. Thanks for saying so before either of us knew.