3 years at Grab
20th Feb, 2017, I started my journey at Grab through a deal to acquire the team. 21st Feb, 2020, I happily left Grab to start another journey.
3 years is not too long but not short as well. I gained a lot from there so wanted to write down some key takeaways during the time, and to tribute those who played important roles in my growth.
Takeaway #1: learn the existing culture/tooling before trying to change
When first joined Grab, I was shocked by the culture here, where everything is so slow, too many processes compared to my previous company. The engineering practices were also too much different. It led to many endless debates with other colleagues, like how we should design an API, mono-repo or multi-repos, why no transaction, etc…
One of the stupidest fight of mine was about using Pivotal Tracker (PT) or Jira. We used Pivotal Tracker in the previous company. No doubts it’s a good tool and has better UX than Jira. While Grab uses Jira widely, we wanted to keep using our own tool, because I believed it would work better for us, we would show them all the advantages of PT, and finally convince the whole company to switch. Some agreed, some didn’t, including the PM, and I fought for a while, before I came to realize that’s it’s the product matters, not the tool. Not only that, everyone else from the company has to maintain 2 different accounts if they ever want to see what we are doing.
Don’t get me wrong that you should always accept the existing culture or process, even if it sucks. My point is to understand the current state and see what advantages you’re bringing to the table first.
Takeaway #2: be a product software engineer
What it means by product software engineer? It means the engineer, together with product manager, own the product, think and see the product through the lens of users. During my time developing the acquisition platform, I went to the field to understand the real business pain points, I put myself in the shoe of our users to come up with the optimal solutions. Another reason to be a product engineer is that you can give valuable feedback to PM, in term of feasibility, priority and effort. Sometime a hacking solution is better, sometime it’s worth to invest engineering effort into solving the problem properly. And you can only make those decisions if you really understand the product and the business.
However, be sure not to step on your PM colleague. A good product team has PMs and engineers look at the same direction, open minded and listen to each other, not using their own expertise or information to create power against the other.
Takeaway #3: it’s important to make people feel comfortable to work with you
I used to have the mindset that in a professional environment, I should be able to freely share my opinion without worrying about others’ feeling, as long as it’s about work, not personal. And it’s actually the source of many conflicts I had. I used to be aggressive during meetings or discussions, and it made those meetings become really intense, coming out of those meetings was really exhausted.
With feedback from my manager and reading many books about management, I realized that it’s important to maintain healthy conversations in order to reach the common goal. I learnt how to give and receive feedback constructively, what it really means by being open minded. When you’re approachable, people will likely come and talk to you, you’ll be more helpful and get more chances to be involved in more impactful works.
As an IC, being an effective communicator also creates more opportunities for you than a quiet person, because people won’t know what you’re applicable of, or they don’t think you need the opportunity more than another.
Takeaway #4: how does a good manager look like
This is the last takeaway I want to share in this post. Being a manager helped me see perspectives I couldn’t see as an IC before. I started to understand the challenges of a people manager, the decision making process, the priorities… It also helped me see clearer how a good manager different from a bad manager. In my opinion, a good manager is the one who genuinely care for people and the team under him/her. They may not be the expert in the domain but they know their weaknesses and admit that, keep learning to overcome that, instead of faking it. When there is a problem, they stay and solve it together with the team. Of course the more senior a manager, the further she/he stays hands on, but you’ll see it, and you know you can count on him/her. My last manager at Grab is the person like that.
Last words
On my last day, someone asked me how I feel. The answer was “I’m happy and satisfied”, and I really meant it. I never felt that before when leaving a company. It’s the feeling when you know you did your best to contribute to the success of the team and the company and you don’t regret anything. I wouldn’t have felt that way if I gave up and left in 2018. I’m thankful for people who fought with me, I appreciate people who supported me and mentored me. To Jon, Prem, Ditesh, Kent, and all who worked with me in the past 3 years.
Thank you and good luck.
P.S: Thanks Saba for the picture
Comments powered by Disqus.