How I Got Two Job Offers From Competitive Programming

Muhammad Hasan
HMIF ITB Tech
Published in
7 min readAug 12, 2021

Introduction

Hello everyone, my name is Muhammad Hasan, I am an Informatics Student In Institut Teknologi Bandung, I want to share you my experience on winning the IYCL (Indonesian Young Coder League) 2021 and how I got two job offers from winning the competition!

What is IYCL?

IYCL Logo

So for those of you wondering, IYCL (Indonesian Young Coder League) is a competition for young engineers to show off and prove their coding skills with others from around Indonesia. It is held by Mekari and Money Forward. From my perspective, it is similar to competitive programming competitions where you are given a problem description and you have to solve the problem by making a program that fits given the limits.

What are the rewards?

For getting top ranks on this competition there will be some rewards, the qualified finalists will get the opportunity for a full-time job and earn one of the most competitive salaries in the market, either with Mekari, or at Money Forward in Japan. Despite these rewards, to be honest, I was just curious about the problems and was not trying to aim for the rewards at that time.

IYCL Experience

Warm up Before The Competition

Before the competition, there were warm up problems usually held so that participants could be comfortable with the platform to compete. The platform that is held for this competition is called CoderByte which I was not familiar with at the beginning, it seems that it is similar to Leetcode or another platform that is used for practicing interviews. Well, fortunately, the C++ language is available and I was quite getting the hang of the platform, and also I don’t use templates in competitive programming which I think is a bonus point for me since you can’t code from your IDE and can only could from the platform. With that enough said, I was looking forward to the competition!

The IYCL Competition

The IYCL Competition begins at 07.00 PM and ends at 09.00 PM, so it is quite an unusual time for a contest to be held at that time, but I usually do contests at night in other competitive programming websites, so it wasn’t that big of an issue. When the competition began I was given 4 problems, it seems it is increasingly getting harder, so I started from the easiest one.

Note:

Given the time I write this, which is about 4–5 months after the competition, I can’t remember the exact problem description so bear with me :)

First Problem

For the first problem, it was about a bit operations, it was similar to converting numbers into binary digits. This is quite an easy problem, so I quickly wrote a solution using C++ and did it in maybe 3–5 minutes.

Second Problem

For the second problem, it was a classic dynamic programming problem which is very similar to LIS (Longest Increasing Subsequence) and I forgot to tell you there that is actually a search bar in the platform that lets us search anything on google, so I was tempted to search at that time, but fortunately I already quite remember the solution and so I just wrote the solution, it passes the test and I quickly move on the next problem.

Third Problem

For the third problem, this was the hardest problem for me, well not because it is a hard problem, but because it requires complicated implementation. I couldn’t remember the exact problem description, but as far as I remember it, I wrote a recursive solution, but because I was using C++ I was having some bugs and so I had quite an issue with time for this problem. Fortunately, I was able to solve this problem and move on the final problem.

Fourth Problem

For the fourth problem, which is the last problem, I remember this was about a graph problem and from the look of it you can use brute force to solve this problem. I quickly tried to write the solution for this problem, but I changed my language to Python because of the harsh time I was getting from the last problem using C++. And then I wrote a brute force solution, because it is more intuitive and shorter, also I think the test wasn’t that tight so I thought it was OK. After some time, about 10–15 minutes, I solved this problem, and finished this competition in about 50–55 minutes in total.

After The Competition

Other of my friends were also competing for this competition, one of them is my friend Kamal, who is my teammate for usual competitive programming competitions. He also finishes quite fast, and tells me a better solution for the last problem, which made me kinda afraid that my solution wasn’t going to pass for the hidden full test. So, I was not expecting to win at all from that point, and was just waiting for the results. Other than Kamal, I asked other of my friends, and it seems they were given different problem sets, from which I think is harder than mine, so I think I got quite lucky getting relatively easier problem sets.

Announcement

When it was time for the announcement, I wasn’t really expecting anything because I thought my performance wasn’t that good, despite that I was shocked to see me getting first in the leaderboard.

Leaderboard Top 100

This is the first time I got first place in a programming competition by myself and I was quite happy because I was always using #1 as my profile picture, and that’s because I am always tempted to be number one not because I am good, but because I just want to strive for that number one place, that is to become the best.

I asked other of my friends which got 2nd and 3rd place. It seems that they also got perfect scores, so the difference between us was just the time taken solving the problems. So, I think I got quite lucky because of using simpler and shorter solutions.

Getting The Rewards

Soon after the announcement I was contacted by Mekari and Money Forward they contacted me by Whatsapp and also by email. I was asked some questions about the competitions and also my availability for the job offer.

Money Forward Job Offer

After winning the competition, I was offered a job by Money Forward which is a company from Japan. I got an interview with one of the people, and I was asked some questions about myself. It was quite a new experience for me having an interview with a japanese company. We use english as our language to communicate, and what I remembered the most from that interview was, I asked them “why bother trying to get engineers from Indonesia, when you already have excellent people there in Japan. and they said that Money Forward was finding talented people from around the world and not only from japan, so that’s a cool answer that I wasn’t expecting, so props for them. After the interview, they told me that they will email me for the job offer and all the information needed.

Mekari Job Offer

After Money Forward, I was also offered a job by Mekari. And before I get on to the process, from what I know, Mekari is a quite hard company to get into the interview process, and so I am quite grateful that I could be asked for the job offer. I did an interview with them with one of the engineers and I was asked some problems about software engineering, mainly experiences and also some design patterns. I was also challenged to find a bug in one of their code examples. It was quite a nice experience and I learned something new from the interview. After the interview Mekari will also tell me more about the job offer via email.

My Answers to The Job Offers

Later at that time, I was given the email for the job offers, and I saw the job description and also the salary which is pretty good especially from the company in Japan. And you may already guess what my answer to those job offers are. Yes….. I declined both of them…. No, actually for real. Well, not exactly… At that time I was already accepted by another company which is Sayurbox for my summer internship, so I told the two of them to postpone my job offer next year, and they said they will try to keep my profile for next year. So, next year I will probably keep those two company in mind :D

Final Words

From the IYCL Competition, I am very grateful to Allah for giving me this experience and opportunity. And I am also thankful for the two companies that have held this competition which is Mekari and Money Forward. And also for you that have read this blog, so thank you all and I hope you learn something new from this blog :D

--

--