~/blog/the-first-orbit -- 12 min read

The First Orbit: 8 Hours Present, 4 Hours Purpose

Career
Apr 1, 2025
A whole year of learning to swim while dreaming of flying
A photo of me looking downwards in front of the Rakuten logo

I started my full-time job at Rakuten on April 1, 2024. I came to this realization a few days ago that it was going to be a whole year since then. It’s been a rollercoaster of a year, and a lot of it involved my transition from a student to a full-time working professional for the first time in my life. Tough time, but an enjoyable time.

I didn’t feel like writing this from the perspective of a typical LinkedIn hyperbole. Instead, I want to take a look back at my 1 year period at Rakuten in a manner truest & most honest to myself. No shameless exaggeration. While I consider myself very privileged, I’ve been through some dog breakfasts.


Background: Creating My Luck

The way my journey started at Rakuten was a bit of a funny one. My current job title is that of a Software Engineer, but that was not what I had applied to at the start!

I had first applied for the Data Scientist position (since the Machine Learning Engineer position was not available at the time and this was the closest I could find) and had been rejected. But Rakuten, despite rejecting me for 2 positions (I was also rejected for the Product Manager position), reached out to me after a few months and urged me to apply to some available positions. I applied to the Software Engineer position, and actually got accepted. Of course, there is a long story within this process itself, but just redundant to talk about it here.

One could say I got very lucky, and while that isn’t entirely untrue, I believe I had created a wide enough net to catch the opportunity when it arrived.


The Start: Imposter

You must have pretty much guessed by now that I had zero software engineering knowledge or background when I started my software developer job. Pretty crazy stuff. I was just a bloke who built a couple of toy machine learning projects and somehow got thrown into the realm of web development.

The first month of my job went by easily, as it was pretty much just the “new graduate” phase where the onboarding team focused mainly on familiarizing us newcomers with the ways of the company. Made tons of friends, and had lots of fun — the reality was still not here yet. And all was well.

The second month of my job was when I finally got assigned to my current team: a team focusing primarily on the front-end side. The tech stack was some usual stuff such as React and TypeScript. There was only a small issue: I had absolutely no clue what these were.

In other words, I had to pretty much start fixing bugs and solving tickets using programming tools & languages that I had not even begun to learn yet. My mentor just came to me, told me to study TypeScript & React for a week, and boom: I just immediately started working using these from the following week.

Now that I think about it, I remember trying to edit the so-called React code in my browser’s devtools because I found no JavaScript code in our codebase. Little did I know that there were no JavaScript files. There was no index.html, no script.js, no styles.css like the plain vanilla web development stuff that I had loosely familiarized myself with. It was just tsx, ts, and all that React stuff. If you’re not familiar with all this yapping I’ve thrown in here so far, then you are feeling exactly like I felt at that time. Just utterly clueless.

Having an imposter syndrome is one thing, but not even knowing what you don’t know is a whole different degree of uneasiness.

I don’t want to sensationalize this and state that the environment only gave me options to either swim like Phelps or drown; my team was very supportive of me. These people helped me tremendously.

But still, having zero knowledge of a whole domain that was going to be my line of work was scary.


We Can Learn Anything, But Difficult Things are Difficult

I’m sure you’ve come across many quotes that go something like “You can learn anything, just do it!”, which is not false, but it’s anything but linear. Especially when the thing you’re trying to get better at is not easy.

To be honest, people who know React and TypeScript will tell you that they’re not exactly difficult. And well, they’re not rocket science. I knew some Python before I started my work here because well, machine learning is dominated by Python. Therefore, it was not too difficult for me to pick up on JavaScript, and consequently, React.

React is a JavaScript framework for building UI. Basically a frontend framework. In a high level, we can think of it as an environment that we create to build UI components (such as buttons, forms, ↑ this dropdown you just used to open this React explanation, etc.) and reuse them across our application. It has its own way of syntax which is not exactly the same as JavaScript, but under the hood, the code we write in React is still getting translated into JavaScript. Meaning we don’t directly write JavaScript, but the code we write in React is getting converted into JavaScript by the compiler (think of compiler as a program that translates code from one language to another) and then executed by the browser (since JavaScript is all about running in the browser).

But if the languages were something like C++ or Rust, I think I’d have a hard time because these languages are quite difficult to learn. But maybe I’d have more fun. There’s this strange sense of motivation you get in doing hard things; the majority of us give up at one point, but you find fun in doing things that are hard & hope that you’ll reap the benefits. If it were as easy as just creating a nice learning roadmap, everyone would be doing it.

Okay, so the languages and tools for my job are not that hard… so where’s the “Difficult things are Difficult” coming in?

Well, it wasn’t just about the language and tools.


The So-Called Struggle & Cupidity of Wanting More

I worked hard at work, although most of what I did at the start wasn’t something where a lot of importance was placed, so I had all the luxury to just not worry too much about mistakes. In other words, when I was starting out, work was granted to me for the sole purpose of learning.

I was always very honest about my level with my team leader and my manager, so they knew what they were working with, and they were kind enough to have the amount of patience they had with me.

Okay, but this all sounds like warm sunshine with some tea and biscuits. I have never had any issues with my team, my work, or my environment. In fact, I regard myself as lucky to have people around me who were extremely understanding and had lots of patience with me & my path to becoming a good engineer. I do believe the main struggle of mine, at least during the first few months, was being overly self-aware and critical about my lack of knowledge of the subject matters in my job.

You, just like me, have probably been told countless times that it’s totally okay to not know things and the more important thing is to be able to ask questions and ensure you learn what you don’t know. That was never my issue. In fact, my issue was that I was asking too many questions, and my self-conscience was telling me that I was a burden to my team since I was indeed asking too much. Of course, this was never due to their reactions or anything, but the self-awareness of mine was pretty toxic. For instance, almost like a whisper in my head pointing out that I was asking too many obvious questions without doing proper research first (I was doing enough research, too much actually), and that I wasn’t able to use the tools provided to me effectively.

I had understood that the majority of my first year was going to be strenuous and mentally challenging since I pretty much had to learn everything from scratch without having neither much programming experience or a CS degree. But understanding that wouldn’t help a lot of times. I felt like at times, I was a bit too hard on myself in that I still subconsciously punished myself for not knowing things, even though I knew I came from pretty much a blank slate and that I was doing my best to learn.

I knew all of this, but who cares about what background or environment I had before I joined the company? Do I really think that I will be given enough leeway just because I’m a non-CS graduate? Just because I don’t have any knowledge of the domain? It’s a freaking corporate setting; if I’m not good enough, someone else who’s good enough will replace me. Well, these were the thoughts that I had in my head. Not false, but a bit toxic. My team and my manager, despite my own harsh self-antagonism, were very understanding of me and my situation. I think I would be the same if I were in their position. But when the situation is about yourself, you don’t have the same perspective.

Another issue, or rather my mental restlessness, was that although I couldn’t ask for more with my job even if I wanted to, I was getting better at a hard skill that I wasn’t thinking of pursuing for my career and the future I had in mind.

I’ve been interested in machine learning for a long time, and I’ve always wanted to use its applications to contribute to new breakthroughs in AI research and contribute to the world around me: especially my country. This is painstakingly vague, but I’ve always been confident that I would ultimately figure something out during my journey of self-learning.

My field of interest (machine learning, AI research) has little to no relation to my job as a front-end developer. While I did learn a lot of good software engineering practices, and of course, you might tell me that machine learning, especially the engineering side of it, is a part of software engineering, what I’ve been doing for the past year is pretty much just front-end stuff. Anything but machine learning-related.

For the past year, I’ve been waking up very early each day, dedicating a few hours of self-studying to my passion for machine learning, followed by work, and followed by more self-learning after work. In other words, I’ve been dedicating a solid 3-4 hours per day to consistently self-studying machine learning stuff, but these 3-4 hours have not been enough to satiate my cupidity. This extreme discipline and tenacity is cool, but it has also led to me being severely frustrated at times at the realization that I am indeed getting better at the hard skills required for my job FASTER than the actual thing that I want to get better at. This has solely been due to the fact that I have 8 hours for my job while I barely manage half of that on a good day learning the thing I am interested in. This all may seem a bit too extreme to some readers, and I may be taking it a bit too vigorously since being able to craft 3 to 4 hours per day for learning & self-growth is actually good!

If being good is good enough, that is.

This has always led me to the same disheartening question: “What if I could use those 8 hours for what I actually want to pursue in my life?”

Well, it’s not like I’m not enjoying my job. I am. I’ve made some good friends, and I’ve learned a lot of things. I’ve also been able to contribute to some considerable part of my team’s big project that I’m proud of.

So, this blog is, for the most part, just me venting out my frustrations. If I’m being honest, I never stopped learning things I wanted to learn, and I’m still learning, so that means I’m still on the right track; opportunities will be here.

I’m a sucker for podcasts. There’s this saying that got stuck in my head during one of them: “You don’t win a lottery if you don’t buy a ticket”. I think it’s a bit incorrect. You most likely won’t win a lottery even if you buy one ticket. In fact, you probably won’t win a lottery if you don’t buy a lot of tickets. What if you could buy them all?


Looking Forward

A minimalistic photo with some purple architecture and a person's shoe
Photo by Lena Polishko

My head is filled with ideas I want to pursue. It gets a bit overwhelming at times because I can pretty much never turn this state of mind off. I don’t hate it, though.

I’m not sure what the future holds for me. But I know it’s going to be the most exciting time of my life. I can’t wait to reap the fruits of my labor.

I will keep learning. I will keep my head down and work hard. This is it.

This 1 year has been amazing. More to come.

fin.