Software Engineering Academy Camp 3: Time to Bring the Trophy Home!

Chalika Vanya
COMPFEST
Published in
9 min readSep 12, 2021

COMPFEST 13, Jakarta — Camp 3 Software Engineering Academy took place for two days, from Saturday, August 21, 2021, to Sunday, August 22, 2021, and was held online via Zoom. The selected participants who attended were the best 20 individuals from a total of 780 participants. Curious as to what you could learn at camp 3 SEA? Let’s dive further into this article to discover new insights!

DAY 1 — Get to Know More About Open-Source Contribution

The first day of the third Software Engineering Academy camp was initiated with the presentation of Introduction to Open-Source Contribution by Ariya Hidayat as the Partner at Hyperjump and Chief Architect at Metabase.

The speaker initially compared the acquisition price of the open-source company Red Hat by IBM with the assets owned by an Indonesian food company, specifically instant noodles. It turned out that the cost could purchase not just one but five assets of the instant noodle company. The speaker conveyed this to show how powerful the open-source commercial business can be, so we need to participate in the open-source world.

Discussing in detail related to open-source, the speaker mentioned several levels of views of a person or company regarding open-source itself, namely Anti Open-Source, Open-Source Users, Open-Source Supporters, and Open-Source Pioneers. The speaker also mentioned that open-source is similar to a modern version of community work, so we need to contribute to the open-source world.

Regarding the benefits of contributing to open source, the speaker mentioned a free trial feature offered in most products. The speaker mentioned one of the reasons why open-source business has gone worldwide was because it allowed us to try it before paying. Apart from that, open-source contributions also benefit in terms of recruitment. The speaker explained that this would help the prospective engineers to choose a company whose requirements match their skills and interests. The last thing discussed by the speaker was in terms of quality. The speaker explained that open source projects could implicitly improve a company’s quality. For example, when a company whose software is made open-source, the company must be cautious in putting their source code to avoid the risk of damaging their reputation.

Before proceeding to the question and answer session, the speaker left a message for all the participants. “We must continue to build the world of technology in Indonesia because one day the so-called extraordinary hero will not only eradicate crime or corruption but also actively contribute to the world of open source so that we could be free from technological colonialism.

The next activity was a hands-on open source contribution brought by Adityo Pratomo as the Product Manager at Tetrate. The presenter opened the presentation by asking some questions to the participants regarding whether the participants had ever contributed to open source. Before getting into hands-on, the speaker delivered a little material about Getting to Know Git and GitHub.

Leaning further into open-source, the speaker recalled what his friend said that he considered as an open-source mantra, “In open-source, you don’t wait. You contribute.” The speaker explained that open-source is related to cooperating or contributing together to get a solution.

Next, the speaker explained the three ways to contribute to an open-source project, as a creator, maintainer, or contributor, then proceeded to continue with the steps in contributing to an open-source project. The speaker also mentioned that open-source projects are massive. At the end of the presentation, the speaker provided a link for a hands-on activity that lasted for approximately 30 minutes and ended with a question and answer session.

The third material was brought by Ridwan Budiman as the Principal Software Development Engineer at GDP Labs followed by Adli Daffa and Ahmad Fauzan as the Software Development Engineer at GDP Labs. The speaker started the material by introducing GDP Labs itself and the activities that occurred in GDP Labs. In addition, the speaker also mentioned that this material refers to a book by McDowell entitled Cracking the Coding Interview.

Talking about interviews, the speaker explained that the interview was indeed challenging and tricky. Nonetheless, the speaker advised that if there are questions that we don’t know the answers to, keep trying and don’t be discouraged. Furthermore, the speaker also suggested in doing the coding interview questions, “It’s better to understand the algorithm of a problem and train our thinking speed compared to memorizing how to solve the said problem.”

The outline of the discussion of this third material is about The Interview Process, Before the Interview, The Offer and Beyond, Technical Questions, and Interview Questions.

1. The Interview Process

The speaker explained that the highlight during the coding interview process was how the interviewee could answer the questions given, such as how the interviewee conveyed the answers and how they built the algorithm. In addition, things like analytical and coding skills, technical knowledge, experience, and culture fit/communication skills are commonly used as assessment points.

2. Before the Interview

The speaker revealed some things that could help ace the interview, such as having enough experience and making a preparation map.

3. The Offer and Beyond

The speaker also explained what we can do after we are accepted or when we want to refuse the offer.

4. Technical Questions

Next, the speaker explained some frequently asked technical questions during interviews, such as Big O, Big Theta, and Big Omega. The speaker also explained that good coding is when the code is correct, efficient, simple, readable and understandable, and maintainable.

5. Interview Questions

Finally, the speaker mentioned several coding interview questions topics, as shown in the image below.

Before proceeding to the question and answer session, the speaker mentioned that GDP Labs is currently offering an internship program.

After the third presentation, the day ended with a group mentoring session with respective mentors. The division of the mentoring group is the Kami Bisa team with Yogie Anugrah Ramadhan as the FullStack Developer at Immobi, the RTX team with Adhitya Firmansyah Putra as the Mobile Engineer at LangitPay Digital Indonesia, the NINJA team with Giovanni Dejan as the Software Engineer I at Ninja Van, the NAGA team with Erwin as the Senior Backend Engineer at Amartha, and the Penta team with Peter Tanugraha as Co-Founder of Kotakode.

DAY 2 — Final Project Presentation and Awarding

The last day of Camp 3 Software Engineering began with the presentation of the final project from the first team, the NINJA team. The judges for today’s activity are Zamil Majdy as the Software Engineer at Databricks and Matthew Tanudjadja as the Product & Engineering Lead at Line Indonesia. The presentation of this final project lasted for 1 hour, where the presentation session lasted for 40 minutes and was followed by a question and answer session with the jury for 20 minutes.

The presentation began with Muhammad Hilman Al Ayubi, who gave a demonstration of their project. Soon, Nicholas Biantoro revealed the backend code to the judges, followed by Maryanto with the frontend code explanation.

The presentation of the final project continued with the Penta team, which was started by Matthew Christopher Albert, followed by an explanation of the MVC Design Pattern by Daniel Christian. Hanson Jonathan, one of the members, gave a demonstration of their website, followed by the backend code breakdown by Daniel Christian, Hanson Jonathan, and Bhimantoro Suryo Admodjo. Finally, the presentation ended with the frontend code breakdown by Matthew Christopher Albert.

Next, it’s the RTX team’s turn to demonstrate their project. Dimas Shidqi Parikesit, alongside Novandi Kevin Pratama, explained the backend code while Teofanus Gary Setiawan and Abdullah Ammar explained the frontend code. The presentation ended with a demonstration by Abdullah Ammar.

The fourth team to present was the KamiBisa team. After the opening by Robert Wijaya, Stanley Claudius began to explain the website structure then continued by the explanation of the development and testing by Abdul Rahman and Kevin Wibamanto, respectively. Next, Abdul Rahman demonstrated their project and later explained the frontend code, and the presentation ended with the explanation of the backend code by Stanley Claudius.

At last, the final project presentation came to an end with the NAGA team as the final presenter for this session. After Novel Bafagih introduced the team, Arsa Izdihar Islam proceeded to explain the tech stack of their project and soon followed by the demonstration of the website by Novel Bafagih. Before the presentation ended, Galih Indra Firmansyah revealed the backend code while Ahmadhi Prananta Hastiputra explained the frontend code.

After the final project presentation session ended, finally came the session that the participants had been waiting for, which is the Awarding session. The MCs first announced the Favorite Team Award. Without further ado, the MCs announced Team NAGA as the winner of this category.

The MCs then announced Novel Bafagih from the NAGA team as the winner of the Best Participant Award.

Finally, the most anticipated award has arrived. The MCs finally announced the Penta team as the winner of the Best Team Award. The members of the Penta team expressed their happiness and also conveyed their impressions during this SEA camp.

Interview session with one of the judges and the best participant of COMPFEST 13’s SEA!

Before the day ended, we were given the opportunity to have a one-on-one session with Zamil Majdy, one of the final project presentation judges. Zamil told us why he chose to be a software engineer. He also gave some tips for beginners who just started learning software engineering. “Don’t forget the basics, stick to the fundamentals,” Zamil warned not to forget the fundamentals just because of technological developments because technology will continue to evolve, which is why we have to invest quite a lot in the fundamentals.

He advised all participants to continue all the knowledge that they had received from this camp, to keep improving, to never stop learning, and not to forget to have fun.

We were also given the opportunity to interview one of the SEA’s participants, Novel Bafagih, from the NAGA team. Novel said that his impression during the whole camp was quite exciting, and Novel was also grateful to meet his group of friends and mentors. Because this is Novel’s first experience participating in COMPFEST, Novel hoped that while attending this camp, he would be able to work well in a team and felt more confident in his coding skills.

There’s still more fun in the next series of events at COMPFEST! So stay tuned for information about COMPFEST through our Twitter social media account @COMPFEST, our Instagram @COMPFEST, and our site compfest.id (Editorial Marketing/Vany)

--

--