jShamsul.com
This was first posted on
Code & Codex Newsletter.
Subscribe →
2025-03-16

Riding a Unicorn (Part 2) - Jaya One

> Recollecting My Days at Grab

Peace be upon you, fellow digital traveller.

Riding a Unicorn part 2

This is the second part of a multipart series — Riding a Unicorn, my retelling of the time I was at MyTeksi / Grab as a Software Engineer. If you missed Part 1, you can find it in the Code & Codex archive.

I want to reiterate that this isn’t the definitive history of Grab—just my version of events. My story is no more important or accurate than anyone else’s. I wouldn’t dare claim this is exactly how things happened, but I can confidently say this is how I remember them.

Again, don’t expect a technical write-up about architectures and system scaling—you can read those on the Grab Engineering blog. I’m here to write about the shenanigans we got ourselves into back in those days.

If you haven’t subscribed to Code & Codex, you might want to. A new dispatch lands in your inbox every Sunday.

(Continuing where we left off in Part 1)

Our desk space was starting to feel a little cramped. You could literally bump elbows with the person sitting next to you. In fact, I wasn’t even sitting at a proper desk—two engineers scooted a bit to each side, leaving just enough space between them for me to squeeze in and work.

Grab had grown quite a bit. More engineers, more designers, more of everyone doing all sorts of things. The engineering team, the marketing team, the business team—we were all crammed into the same space. We had officially outgrown this little office on the upper floor of a Renault showroom.

To make a dent in the universe and take the e-hailing industry to the next level, the engineering team needed isolation — or to use a more current term, we needed to stay ‘locked in’. So they moved us to a new office. Not too far from the old one, but far enough to escape the chaos of our tiny workspace.

It was a busy time. We had competitors to crush. But at this point, our biggest competitor wasn’t other e-hailing services like TaxiMongger or EasyTaxi. It wasn’t even Uber, which was still only offering premium black car services.

Our biggest competitor was ‘the hand’.

Flagging down a taxi was still the default way of getting a ride. People would stand at the side of the road and wait. As soon as they spotted a taxi in the distance, they’d raise their hand and wave it up and down, signalling for it to stop.

If you were lucky, the taxi would pull over, roll down the window, and ask where you were headed. If luck was still on your side, the driver would agree to take you there. Some drivers wouldn’t pick you up if they weren’t keen on your destination.

Now, if you were extremely lucky, you’d get a driver who agreed to use the meter—and one that hadn’t been tampered with. At the time, Malaysia’s taxis were notorious for either refusing to use the meter (so they could charge an exorbitant fare) or modifying the meter to speed up the fare increase.

This was our real competition — what we called ‘the hand’. Taxis weren’t the enemy. In fact, we wanted to partner with them and onboard them to this new way of hailing rides so they could get more passengers. What we were competing against was the method of hailing a taxi.

And so, with that mission in mind, we moved to our new office at Jaya One.

Jaya One

Jaya One consists of several blocks of buildings where the lower levels are commercial shop lots, while the upper floors house office units. Our new office was in one of those office units. The area felt more upscale, with fancy restaurants, a Starbucks, and a handful of bespoke coffee shops nearby.

There was also a decent-sized mall with a high-end grocer. The vibe was completely different from our previous office. Since Jaya One was home to multiple office spaces, the place felt constantly alive—bustling with activity.

When I first stepped into the new office, I remember how grey-ish and beige-ish everything looked. Gone were the familiar MyTeksi black and green decorations—only the chairs remained green. There was a cozy area with two large couches and a pantry with a generously sized fridge, always stocked with cold, sweet drinks. The open workspace had about five or six rows of tables, each row seating eight people comfortably—four on each side.

One side of the office wall was covered with a whiteboard surface, still pristine, waiting for the inevitable strokes of marker pens to decorate it with drawings of squares, clouds, and arrows pointing in multiple directions—the kind of cave drawings you’d find in any tech office.

The office itself wasn’t that much bigger than the previous one, but this time, we weren’t sharing it with anyone else. It was just us—the engineering team of software engineers, UI/UX designers, QAs (we eventually hired some), and product managers. The tech team.

We had our own little ‘tech island’.

MyTeksi Engineering Team at Jaya One

Happy Hour

The top-right corner of my computer screen shows the time—it’s 5 p.m. Folks in the office start getting up from their seats, making their way to the couch and pantry area. Chatter picks up as small groups form around different snacks. But not me.

“I just need to finish this RSpec test for this controller,” I say to myself. It’s almost done.

I feel a slight tap on my shoulder, followed by a question. “What are you doing?”

It’s the new CTO—our first-ever CTO hire.

I fail to see the rhetorical nature of the question. Enthusiastically, I start explaining the feature I’m working on and what updates need to be done on this particular controller.

“You can do that later. It’s Happy Hour,” he says.

Right. It was ‘Happy Hour’ — one of our earliest traditions, and the start of many more. Every Friday at 5 p.m., we were supposed to stop working—unless, of course, production was on fire. In that case, do what’s needed.

There were snacks, and every other week, food from a catering service. During this hour, you were supposed to grab a can of soda, pick up some food and snacks, chat with colleagues, mingle around, and just have a good time.

This was the time that we celebrated our small wins for the week. You just finished that feature? Congrats. You just solved that annoying bug? Good job. We crossed 500k total completed bookings? Well done, team!

It was one of the first traditions we established, and it stayed with the company for quite some time. You’ll see in a future part of this series how other offices in different locations adopted their own versions of Happy Hour, sometimes adding fun activities beyond just food, snacks, and drinks.

Every MyTeksi / GrabTaxi office had its own thing, but there was one shenanigan that, I think, was uniquely Jaya One.

Nerf Gun Battles

While working on that code for that a user story you were assigned to, you’d sometimes hear the clicking sound of a spring being pulled back, readying a Nerf bullet. You know it’s coming — but from where?

Will it come from the direction of the mobile dev area? Probably not. The mobile devs are always ‘locked in’ mode.

There’s a high chance it’ll come from the driver dispatcher team. These Node.js folks have a track record of instigating these sorts of things. They also have the geographic advantage — seated right between the Ruby on Rails team and the mobile team, both well within Nerf gun range.

However, every now and then, the first shot does come from the Ruby on Rails area. It’s rare, but it happens.

There are only two possible outcomes when a shot is fired. One — a brush of non-sincerer laughter, the universal sign of I’m busy, not now. Two — a retaliation shot, which leads to more shots, and before you know it, a mini Nerf battle has broken out, with more people jumping in.

There was no real animosity between teams — especially between the Ruby on Rails team (which worked on a service known as Gamma) and the Node.js team (which handled a set of services called Dispatcher). In fact, we even had a Slack (or was it HipChat?) channel called gamma-love-dispatcher — or something along those lines.

It was all fun and games, breaking up what could have been just another monotonous day in the office.

Here is a behind the scene outtakes from an Astro Awani interview, you can see CEO Anthony Tan trying to explain to a concerned Awani journalist of why there are Nerf guns around the office. For the record, Anthony Tan himself was never involved in any Nerf battles, all battles took place when he was not around.

Hosting Ruby Girls

We didn’t just fool around all the time — sometimes, we hosted serious events and meetups at our Jaya One office. One that I remember well was for Ruby Girls KL — a Code Equality initiative that promotes computer science education to the local community. We ran a mini workshop for kids who wanted an introduction to app programming.

I was one of the instructors that day, teaching kids 13 and below how to code in Ruby on Rails. One girl wanted to build a contacts app where she could store the phone numbers of her friends and family.

I remember having an argument with a 12-year-old girl about storing phone numbers as strings. She insisted they were numbers—so why were we storing them as strings? She was adamant that numbers are integers and should be stored as such.

She’s probably a Product Manager by now.

Bootcamp and Level 10 Chilli Chicken Wings Challenge

By this time, MyTeksi / GrabTaxi had already expanded its services to other countries in the region. We had also grown our engineering team in a neighbouring country. New hires from Singapore were required to attend an onboarding bootcamp with the engineering team in Malaysia. They would come to the Jaya One office and work with us for a couple of weeks as part of their onboarding.

This created camaraderie and strong bonds between engineers, making onboarding smoother. It also meant they would join us for Happy Hour—and we had a new tradition to add to it.

One of the restaurants near Jaya One was Chilli Rush, famous for its Chilli Chicken Wings, which came in 10 levels of spiciness. It became a tradition to order a pack for our Friday Happy Hour sessions and challenge each other to try it. I do recall they had a vegetarian version—so no excuses.

Of course, we made our colleagues from Singapore, who were here for onboarding, take on the Level 10 Chili Chicken Wing challenge. It was a rite of passage for them.

It takes two days to recover from a Level 10 Chilli Chicken Wing. I know. I tried it once.

Relocation

A new Slack (or HipChat) notification pops up, “Hey Jibone, you have a minute?”

It’s not every day you get a DM from the CTO. He asked me to meet him on the balcony overlooking the stretch of shops around Jaya One — the designated smoking area where engineers took their breaks.

That’s where he told me the news. MyTeksi / GrabTaxi’s main engineering and R&D HQ was moving to Singapore. It would become the primary engineering hub and company HQ moving forward. He asked if I would consider relocating. If I agreed, there would be relocation assistance, including relocation payouts and other necessary support.

I got the sense that he wanted to have this conversation with each of us individually — to understand our thoughts, concerns, and decisions. This was a big decision for everyone.

At the time, I didn’t realise how significant this shift was. This was the moment Malaysia lost its unicorn to Singapore. I won’t claim to know the full reason for the move. Maybe it was Temasek’s investment. Perhaps it was to attract more international talent. Or possibly, it was something else entirely.

Years later, Grab would go on to re-open its engineering R&D center in Kuala Lumpur and open up other centers in multiple cities — Jakarta, Ho Chi Minh City, Beijing, Bangalore, and Seattle. But none of us saw that coming back then.

After thinking it over for a few days, I decided to relocate to Singapore. I still wanted to be part of this journey.

Funny how the tables turned. We had been the ones hosting our Singapore colleagues, onboarding them, and challenging them to the Level 10 Chili Rush Chicken Wing. Now, they would be the ones welcoming us to their office.

Their office was at Cecil Court, right in the middle of Singapore’s CBD.

New office, means new adventures.

Stay glitched, stay human.

Jibone.

Subscribe to have Code & Codex delivered to your inbox.