Hello everyone !

Welcome back after my internship period is over. I know thats kinda late to write this article but I would like to share my experience during my internship period in BukaMagang by Bukalapak.

After I finished my collage, I just thinking to exploring internship opportunities in the software engineering especially back-end engineering. I need an environment where I could learn more about software engineering and get a real life experience also I could experience what it felt to work in a tech company.

I find out about the opportunities and I found mas Pandu post (HR Bukalapak) in a linkedIn that BukaMagang opened and they are looking a back-end engineer to get intern so I apply with quickly. The application process consisted of cv scanning, online coding test and user interview. I getting to online coding test that means I pass the cv scanning. Yeay. For coding test through codility platform. And few days mas Pandu reached me that I passed coding test and asked to me to set up an interview session. There we had a discussion about design system, databases and little bit about main programming language that I usually use.

And one week later, I received an email from mas Pandu that I was selected!

image

Oh ya, all internship activities fully remote from home.

Onboarding

One days before joining the internship, I received an email that share several things like onboarding schedule, email company .etc to facilitate me during the internship activities. And yea, the days came, that’s second onboarding session with mas Pandu with other intern. Previously we are joining onboarding session with more big and people because include for fulltime employee that opened by CEO, Mr. Rachmat Kaimuddin.

image

So, what’s makes my intern at Bukalapak so memorable?

Despite the short internship, I have learned many valuable lessons and I would like to share. Maybe not really about technical stuff but things I have learned about software development life cycle in a tech company.

After onboarding with mas Pandu, first member of the squad that I met is Mas Adhya. He contact me to join the meeting, or people usually said with daily stand up squad. Oh ya, squad here mean team so if I write squad that mean a team. There, I introduce my self as an intern and everyone warmly to introduced themselves. After all, mas Adhya guide me to set VPN and added me in Google Calendar squad, but he said that he is not my mentor, he just help me to join meeting because my mentor on leave at the time. I still remembered when he asked me to say “Hi” in the one of channel slack, I just thinking “it just channel squad, not a biggest channel” and not long ago I just realize that I typing out in one of biggest channel in slack and than you can imagine who has reply the message, he is Head of Engineering squad, I was like “Wow, he is notice me, omg”.

I was part of the Subsidies squad that basically handles voucher, discount, cashback and than finally meet my mentor, Mba Nabilla or on people in the squad usually called Mba Nabe. Actually she on leave but she taking time to onboarding me even though she is on vacation in Bali. Thanks mba. There is something unique in the squad, mba Nabe said that we have nickname to call or mention back-end engineers, we all back-end engineers called b3b3k (BE BE Kesayangan) that means my beloved back-end engineers in Indonesian and you have to write exactly same because if you mention without write exactly same, we all back-end engineers wouldn’t respond hahaha just kidding she said. And than she’s guide me like what is the document that I should read, what is the repositories squad until set up the services that squad maintain including how to contributing on the repositories.

And in the afternoon, mba Vita as a product squad was contact me to joining sprint planning squad. Actually, I wasn’t familiar with scrum method, I just onboarding product squad and still little bit confusing, and now I joining sprint planning. To be honest, that is first time I saw and implement scrum method, previously I just learn about the method in a collage but haven’t implement in real life even in my previous intern, overwhelming but exciting at the same time.

That was how I started the first day of my internship activities.

First week

For first week of my internship was full of onboarding session, read documentation of the product squad, talking with other back-end engineers about tech stack that squad use. They are definitely help me to starting feeling more comfortable with the codebases especially for tech stack of the services.

In that first week, first time me one on one with my Engineering Manager, mas Jhovie. He explain to me how Bukalapak develop product from the product come into divided in several task that we as an engineers develop. He also advice me to don’t be scared, no problem make a mistake as long as you know what you do, it was also for me to learn, team work and will be supported by an incredible team of engineers. It is make me as an intern like it was an amazing beginning.

One day, I got a section to be a presenter in daily stand up squad for the first time. You can imagine, me as intern got to talk and asked to everyone in squad that notabene full time employee like how a progress that they are work today, there is a block or not. I feared that was how my first time presenter in daily stand up would go. But fortunately, that couldn’t be a further from what actually happened. They were heard and sometimes guide me with patiently and taken seriously even though I was just an intern and started feeling like I was just a member of the squad. There was not one point in time where I felt like I was just an intern.

Daily life work from home as an intern

Well, I usually started at 8 am and every morning at 10.30 am we goes daily stand up to working update. Everyone in the squad involved without exception to discuss the task in kanban board that we have accomplish and goals of the sprint.

3 pm every Thursday we are all meeting that called grooming. Basically we discuss task that we will bring into next sprint. Oh ya our sprint only in one week, the decision to take one week sprint it all depends on every squad actually. And for sprint planning, we all do in every Monday as I have explained above. After sprint planning is over, we all back-end engineers talk about the tasks and distribute it.

In Friday afternoon every 2 weeks, we all engineers goes to attend restrospective session, restrospective make a relationship between engineers warm actually. Because here all talk about task we went well, ask question if you have a questions and we usually doing all in four boards, that namely liked, learned, lacked and appreciations. And the result of the restrospective called actions items and put it on sprint goals in the next sprint.

When a product come and one of requirement needed design system to develop the product, we always take a time to gelud. Another unique in the squad, gelud is Javanese language that’s means war, war here means that we discuss and argue about the design system what we’re would develop. Not only once, but almost two or three time in a week until all member already accepted the decision that we take and a reason behind it. It was an amazing environment where I felt that I have grown also respected in every opinion.

Learned

One of my focus main was assisting squad to develop API for new feature such as implementing in a detailed a voucher. The feature primarily focused giving admin to added a selected seller in a voucher, from create an endpoint, documented it, writing unit test also write an API test.

Initially I was terrible cause coding in a framework that I had never ever touch. Ruby on Rails. Moreover, I have to write unit test. Previously I have learned but haven’t implement it in a real project. There, I learn how the entire architecture of the system works and consider the interactions between the services. But, they are not just to leave me alone, I was routinely do pairing when I got stuck and they give me advice what is the best practice, big thanks and really appreciate to mas Billy and mas Raziq. With their help and advanced knowledge, they taught me a lot.

During my internship too I got change to for the firstime touched the most popular programming language at this time, golang. And for the firstime too, I pushed the product to production and release it after previously passed QA. Kinda scared but exciting in the same time tho. I got my first taste of what it meant to work on a real software development team.

But, at the end of year, Mas Adhya, first person that I met in a squad resign. So sad.

image

That’s mas Adhya farewell. All member of squad attend to say congratz and good luck for new place to mas Adhya.

Conclusing

By the end 3-months of my internship at Bukalapak, my knowledge about software engineering has grown significantly over this internship. I really lucky that I was given this opportunity to being an intern that was enrich my experience as professionally and personally.

Thanks Bukalapak!