Category Archives: Blog

Fasilkom UI Agile Coaching Session

With the lecturer

A great news comes from my college (Faculty of Computer Science, Universitas Indonesia): one of their courses, software project developent (PPL), will using agile rather than old methodology (Waterfall).


It’s such a great news, since i realized, when join in industry, especially in startup ecosystem, we mostly using agile process. Why? because we usually work with uncertainty problem that sometimes easier to be handled using empirical approach rather than planned upfront approach. And agile process usually missed or didn’t get enough attention inside the courses. I remember it only contained in software engineering course, mostly theory, without any practical lesson. So, me (during that time) should learn from external resources :(. But that’s okay, as a student, there’s no boundaries to learn since there’s an internet isn’t it?.

So, a week ago, Rizky (also a founder of Agile Campus) tell me that Pak Ade Azurat (PPL lecturer) needs help to coach his students. This coaching session has a purpose to make sure all students have basic understanding of agile before they jump into the practical development. Of course it will be YES for me for the invitation!.

Then, here it is:

This coaching session basically only covered basic Scrum, included all inside Scrum guide and a little bit best practices (see some my experiment in Scrum and agile process here). Below are some best practice we share:

How to define a MVP:

How to make an estimation in agile development process using planning poker:

How to do a task planning

Thank you so much Pak Ade, Kak Maya, Pak Adin, & Rizky for the opportunity. It’s an honor to share and also learn from you guys and all Fasilkom students.

Thank you for making one of my bucket list checked: become a guest lecturer.

It’s a wrap!

Improvement Visibility

In HappyFresh tech-product team, another sprint means another experiment.

One of requirement from agile organization is improvement. Your organization should improving every hour, every day, every time. Improving means increasing positive things or removing negative things. How to be able discover that? usually some of agile organization do kinda sharing session between the employee and decide some improvement. But unfortunately the improvement sometimes comes with “top-down” approach, from top organization managerial, not comes from employees.

I’m grateful to have colleague & manager who value an improvement as a shared responsibility.

In Scrum framework there’s a session to accommodate that necessity, it’s called sprint retrospective. For those who don’t know retrospective session please read guides from here: Scrum guides. This is the example how we hold a retrospective session: Retrospective: Apresiasi dan Mesin Waktu.

Let’s jump into the problem and experiment.

Problem: Sometimes the improvement/action items from retrospective session still not “checked” by PIC (person in charge) of the action items by the end of the sprint.

Pre-condition: I usually use Confluence to documenting all action items, improvement, anything from retrospective session.


  1. Are they forgot to did the task/action items?
  2. Are they just forgot to check the items on Confluence?
  3. Are they just haven’t read the Confluence?
  4. Are they??

Hypothesis/Expected Result: If i make it more visible, it will raise the possibility of the items will be “checked” by them. “Checked” means they did the action items to avoid previous sprint mistakes.

So, what i did in previous sprint:

  1. I still used post-it in the retrospective session.
  2. But, rather than using Confluence to documented the problem and the action items, i used offline materials.
  3. I used A2 paper to put all post-it (contain with issue and problem).

    Avengers Retrospective

  4. I put that offline retrospective documentation close to team’s table, to make sure it’s visible by the team.

    Put it close to your team’s table

  5. The other advantage of this approach is, team also able to reviewed it in/after/before every daily scrum session.
  6. It’s kinda give them indirect pressure to avoid similar issue/mistake by did the action items.
  7. Additional tips: we also able to use offline retrospective documentation from previous sprint as a benchmark for the next sprint retrospective session, just to make sure the mistakes isn’t repeated.

And here’s the Result:

It’s all CHECKED.

Seems like make it visible will increase the awareness of the issue that lead to improvement. It’s not about something that should be pushed, it’s all about shared responsibility. Showing a commitment to improve shouldn’t because of reward and punishment from the organization.

What i want to also highlight: result isn’t the most important one from this approach, instead of learning process itself. So, i think it’s okay to not got all the action items checked by the end of the sprint as long the team has realized that they shouldn’t repeat any mistake in the future. Not repeating 1 or 2 mistake from 5 mistake is still improvement isn’t it?.

So, let’s help them to improve!


Saya, Lulusan Sekolah Islam, yang Gagal

14 tahun mengenyam pendidikan sekolah islam (dari TK sampai SMA) masih belum bisa membuat saya..

.. sadar betul bahwa bagaimanapun kondisinya, saya harus mengutamakan islam, dan umatnya, umat muslim. Gak usah pedulikan kaum minoritas, mereka beda agama. Mereka nanti bakal masuk neraka, buat apa dipikirkan? ya kan?. Sebisa mungkin tetap harus islam yang utama, muslim yang utama.

.. memahami bahwa itu semua bukan tindakan SARA. Mengutamakan islam itu merupakan ajaran agama. Tidak ada alasan untuk tidak mengikuti. Titik. (mau masuk surga apa neraka?)

.. benar-benar pintar dalam mencari teman. Saya harusnya mencari teman ya dari kalangan muslim saja. Kenapa? supaya aqidah saya tidak bercampur-campur. Supaya saya tidak menjadi orang munafiq. Harusnya cari teman dekat dari kalangan muslim. Jangan lah berteman dengan orang non-muslim. Kafir itu. Berbahaya.

.. tutup mata dalam menjalankan ajaran agama. Karena sudah jadi perintah. Ikuti. Sami’na wa atho’na. Tidak perlu banyak mempertanyakan, atau mempertaruhkan dengan logika. Walaupun itu hanya menguntungkan umat muslim, bukan manusia secara general. Walaupun tidak baik buat kita, ikutin. (mau masuk surga apa neraka?)

.. walaupun kualitasnya jelek, eh maaf mungkin lebih tepatnya kurang bagus (history, program, dll-nya), ya harus tetap pilih pemimpin yang islam. Pokoknya islam. Utamanya islam. Titik. Jangan banyak cincong. Jangan biarkan musuh islam menjadi pemimpin. (caelah, cari pemimpin apa cari musuh bray?)

Ya itulah pokoknya. Saya masih banyak sekali yang gagal.

Dan semoga Anda tidak gagal paham dalam membaca tulisan saya.


All HF Definition

Just did a little experiment again.

Goal: To make team more aware with all of our definition
Preferrable outcome: More quality, less bug, less missed, and easier communication and coordination

We used to put all of our definition on Confluence. But it turns probably less people who remember all of this things, even less people read the page. I believe some of them have made all of this definition as their standard but as part of coaching, you need to make sure all of them have at least similar standard. Because agile development goal is high quality product, so we don’t have any excuses to reduce that due to time, scope, and any other parameters.

Do you think it will increase the awareness? maybe.
Do you think it will increase our product quality? probably.

At least we try, and learn from it later.

Tips on how to create definition (of done, etc):
1. Use clear parameter
2. Every items should be easy to define whether it’s passed or not
3. Make sure every member of scrum teams is involved during the definition process
4. Okay to put high standard, but also okay to build it iteratively
5. Let it rolling!

Will share the result on the next article (later)

Scrum User Group Jakarta Meetup – January 2017

Today (Wednesday, January 11th, 2017), HappyFresh will host Scrum User Group Jakarta meetup.

Please come if you’re interested, or if you’re curious on how our tech-product process going. See the details here:

For those who cannot join the offline meetup, you’re still able to join via online (streaming):

Topic: Scrum User Group Jakarta Meetup at HappyFresh
Time: Jan 11, 2017 6:45 AM (GMT+7:00) Jakarta Join from PC, Mac, Linux, iOS or Android:

See you tomorrow!

NB: I’ll share the meetup documentation in the next article (later)