From Charts to Code

The story of a business analyst who switched roles to become a product engineer, and the lessons he learned on the way.

From Charts to Code

By Carlos Arcenas

Picture this: you’re several months into a position at one of the world’s fastest growing and innovative companies. You know that the work you do helps impact the lives of thousands of people across Southeast Asia. You’re good at what you do — but you’re unsatisfied. On a personal level, the work doesn’t excite you anymore.

You’re looking to hit the restart button on your career.

That’s how I felt after a stint as a business analyst. The work and the people were great, but I wasn’t fully satisfied with what I was doing, and wanted to support the company in a different capacity. Luckily, thanks to Gojek’s internal transfer programs, the entire organisation was open to me. From roles in product management in Business Intelligence (they’re hiring!) to product and performance analysis in GoFood, I was definitely spoiled for choice.

However, thanks to the stream of articles coming from this very blog, I found myself yearning to enter Gojek’s vast Engineering and Product Development (EPD) group. Having that kind of impact across Southeast Asia and getting to work with extremely talented engineers really appealed to me, and I felt I could make a good contribution.

But before I could make my move, I had to make sure I knew what I was getting into. Was my desire to move rising out of discontent, or something that could be easily resolved? If I could even get into EPD, what would I be working on?

Would I even enjoy my new position, or find myself pining for something new again? Would all my efforts have been for naught?

This post is for anyone in a similar situation, and lists things to consider before taking the leap:

Discern your motivation

Take time to introspect, and pick apart your motivations. What’s driving your decision to move? Are you unsatisfied with your current job? Do you have issues with your role, your team, your boss? Are you looking for a new adventure in a brand new area? Are you ready to put in time outside of work to train yourself for the new position?

Asking yourself these pointed questions can help define what you really yearn for, and outline how to get there. Which brings us to the next point.

Find your niche

Check your company’s job listings online to understand what they’re looking for. Read them thoroughly to understand the skills you need before applying. Are there positions available for entry-level engineers? If so, prioritise these positions, as they require less programming experience, and provide a springboard for you to supercharge your growth as an engineer.

Talk to engineers

The biggest advantage of moving internally is you already have access to many of your (potentially) future peers. Have a casual conversation with your company’s developers to understand the expectations of the job. Use this as an opportunity to go beyond the job description — to really understand what it’s like working in your desired position. What technologies do they use on a day-to-day basis? Do they have to work odd hours? What’s the career path like? We don’t bite! (We do love bytes, though!) ?

By this stage, I had become confident in my choice to jump to the Engineering division. I decided I wanted a new adventure to head on, established a niche I could aim for, and did the groundwork. But the big challenge lay ahead:

How would I accomplish the jump? I knew Gojek had (and still has) high expectations for anyone who wants to join the division.

The comforting factor was that Gojek is incredibly open to anybody who can prove themselves. Many successful engineers in Gojek made jumps like the one I wanted to make, and some of them had no formal training in computer science or software development! If anything, that was proof that anybody who strove and acted had a shot at success.

Now that you’ve made your choice: here are some tips to help propel you forward in tech as a beginner:

Upgrade your skills:

Now that you know what skills your desired position requires on a daily basis, it’s time to put in the hours training up. There are countless guides on the Internet for every technology under the Sun, so pick one and follow it through! Don’t forget to do the exercises included, and work on pet projects to really hone in on what you’ve just learned. Remember: practice makes perfect!

Join company training programs:

Aside from taking up personal projects, look around to see if your company has set up training and development programs. These would be directly aligned with what your company is looking for in engineers, and offer a framework for you to grow with. In Gojek, we’re lucky to have two major programs:

  • The Gojek Tech Bootcamp. Designed for fresh grads taking on an entry-level position in EPD across all divisions, the Bootcamp helps accelerate the growth of would-be engineers through full immersion — the philosophy, the practices, the works.
  • The GoAcademy program. Intended for anyone in the company looking for a structured way to grow in areas from data analysis and visualisation to personal wellness, GoAcademy sets up tutorials led by experienced engineers, fully contextualised to meet the needs of GoTroops from different teams and fields.

Contribute to open-source:

If you don’t have enough experience to meet the requirements of your desired position, fret not! Look into contributing to open-source projects to level up. Contributing to open source works very much like contributing to a product team. You’ll be working on real bugs reported by users, or even proposing your own features to implement. The biggest open-source projects have vibrant communities that are very welcoming of newcomers — some even have bugs specifically marked for solving by new developers!

The benefits of working on open-source only increases if you can find and contribute to projects launched by your own company. (You can find a list of what Gojek has contributed so far over here.) You’ll get to showcase your collaboration and problem-solving skills to your future fellow engineers — all before sending in an application!

Bonus point: should you contribute using GitHub, GitLab, or any public tool, you’ll have a portfolio ready to link to and show around!

Talk to tech leads and product managers:

Much like talking to engineers, speaking with tech leads and product managers will give you a sense of what the job would be like, but on a higher level. Use this opportunity to ask about the current state of the team, the obstacles they’re facing, and future of the product. Position yourself in their eyes as someone who is ready to learn and contribute — you’ll be making your mark before you even have a formal interview!

As for me, I’m now a Product Engineer, part of Gojek’s Operations Platform, working on our internal service product and helping maintain our customer support platform. It’s been almost a year since I made the decision to switch roles, and I’m glad to say that, even though it took several months to find a role that met my desires and the needs of the company, I’ve found a place where I can grow and contribute to Gojek.

While my new world is far removed from the spreadsheets and queries of my old one, the skills I honed back then remain incredibly relevant and essential to my new duties. The eye for numbers and detail I developed has been crucial for spotting points of improvement in development. The communication skills I gained from presenting to higher-ups has helped me describe my ideas clearly. My time as a business analyst was not a waste in the least bit — in fact, it helped me towards faster growth and success in my new role.

If you’re in a similar position and contemplating changing roles, I hope this article has helped in the decision process. ?

Want our updates to appear in your inbox? Sign up for our newsletter!