Mengintip Dapur Teknologi Bukalapak

Bukalapak sebagai perusahaan teknologi yang bergerak di sektor e-commerce sangat bergantung pada tenaga developer-nya. Pasalnya, di tangan merekalah aplikasi dan situs Bukalapak bisa terus diakses hingga kini lewat berbagai perangkat. Menciptakan aplikasi berkualitas baik, tentunya bukan pekerjaan mudah karena perlu kerja sama tim yang solid.

Saat ini Bukalapak memiliki kurang lebih 800 karyawan, 200 orang di antaranya adalah developer. Posisi developer di Bukalapak juga dibedakan, setidaknya ada tujuh jenis. Ada yang bergerak di back end, front end, system engineer, mobile developer, site reliability engineer (SRE), Quality Assurance (QA) engineer, dan data engineer.

Seluruh posisi ini memiliki tupoksi pekerjaan yang saling berkesinambungan satu sama lain. Misalnya, system engineer bertugas menjaga infrastruktur di Bukalapak, QA engineer bertugas menulis code skrip untuk keperluan otomatisasi. Lalu, data engineer bertugas pengembangan produk Artificial Intelligence (AI) dengan menggunakan data yang dihimpun.

Dari seluruh posisi developer di Bukalapak, mobile developer menempati posisi terbanyak dengan total sekitar 40 orang. Tugas tim ini adalah memastikan seluruh aktivitas dan pengalaman pelanggan lewat perangkat mobile dapat selancar saat mengakses Bukalapak lewat desktop.

Banyaknya orang dalam tim ini, lantaran dari total kunjungan bulanan Bukalapak sekitar 70%-80% dikontribusikan oleh aplikasi. Masukan dari pengguna pun setiap harinya, baik positif maupun negatif, juga dikontribusikan dari aplikasi. Diklaim rating aplikasi Bukalapak di Android maupun iOS tertinggi dibanding semua layanan sejenis.

Bukalapak melihat ke depannya tren penggunaan smartphone bakal lebih sering dipakai daripada desktop. Beberapa alasan inilah yang makin niat mengembangkan produk aplikasinya dengan tetap mengedepankan unsur kualitas dari setiap pembaruan versi yang diluncurkan.

Data terakhir menyebut total pengunduh untuk aplikasi versi Android mencapai 13 juta kali dengan 2 juta orang pengguna aktif harian. Untuk iOS mencapai 700 ribu kali diunduh dengan 300 ribu pengguna aktif harian. Sementara, total pengguna Bukalapak telah menghimpun lebih dari 13 juta orang. Untuk menjaga loyalitas dan kepuasan jutaan pengguna Bukalapak, bagaimana siklus pemeliharaan aplikasinya?

Dalam bincang-bincang yang diadakan Bukalapak bersama sejumlah media, VP Engineering Bukalapak Ibrahim Arief dan Mobile Apps Product Manager Bukalapak Bayu Surya banyak berbicara mengenai isi dapur bagaimana tim developer bekerja, tantangan yang dihadapi, kriteria developer seperti apa yang dicari, fitur apa yang siap hadir di aplikasi, dan lainnya.

Cara tim mobile developer Bukalapak bekerja

Cara kerja tim mobile developer terbagi menjadi bagian-bagian kecil yang bertugas mencari ide baru, bekerja paralel sembari melakukan coding untuk digabungkan ke aplikasi secara utuh. Ini disebut dengan release train.

Bila tingkat kompleksitas fitur memang butuh banyak waktu pengecekan, bisa dipastikan waktu rilisnya akan semakin lama dan tidak terpatok pada tenggat waktu. Akan tetapi untuk fitur yang bisa dikerjakan dengan cepat dan sudah diperiksa terlebih dahulu lewat pengecekan dapat rilis lebih dulu.

“Bila diibaratkan, aplikasi berbentuk kereta utuh yang berjalan terus yang terus bertambah gerbongnya. Anggap gerbong itu adalah penambahan ide baru. Bila gerbong sudah siap ditambahkan, tinggal digabungkan saja ke keretanya. Tidak ada fitur yang belum siap langsung dipaksakan untuk merge, sebab kami mengutamakan kualitas aplikasi,” kata Ibrahim.

Ibrahim melanjutkan sebelum Bukalapak merilis pembaharuan aplikasi harus dipastikan fitur tersebut sudah lulus tiga tahap pengecekan. Dimulai dari level developer, pengecekan secara manual oleh tim QA engineer, setelah itu pengecekan secara otomatis dengan ratusan skenario.

Meski sudah lolos, aplikasi versi terbaru tidak langsung disebarkan ke seluruh pengguna Bukalapak, melainkan sebagian kecilnya terlebih dahulu. Hal ini dimaksudkan agar tim dapat memantau bagaimana output-nya, apakah masih ditemukan bugs atau tidak.

Bila masih ada bugs, tim dapat segera memperbaikinya sebelum dampak negatifnya tidak meluas. Ketika sudah dipastikan lolos pengecekan, barulah aplikasi didistribusikan secara bertahap dan terjadwal hingga 100%.

“Keuntungannya saat versi terbaru di roll out ke sebagian kecil pengguna, apabila ditemukan bugs bisa langsung segera diselesaikan. Ini cara terbaik yang lumrah dilakukan para developer di luar negeri saat menjaga kualitas aplikasinya.”

Untuk kasus tertentu cara kerja diubah, misalnya saat kegiatan temporer seperti Harbolnas berlangsung. Untuk dukung kegiatan tersebut, fitur-fitur tambahan pun harus disiapkan dan memiliki tenggat waktu.

Demi meminimalisir kesalahan, selama Harbolnas berlangsung tim melakukan freeze deploy yang berarti menghentikan secara sementara proses pengembangan dan mengalihkan fokusnya memperbaiki bugs demi menjaga kestabilan sistem dalam aplikasi.

“Untuk event tertentu, ada waktunya tim untuk lebih fokus menjaga bugs saja agar aplikasi lebih stabil saat traffic tinggi. Sebab pada saat itu saja bug fix dalam seharinya bisa sampai 20 kali.”

Tantangan tim

Bayu melanjutkan salah satu tantangan tim saat mengembangkan fitur aplikasi adalah bagaimana membawa pengalaman pengguna di smartphone sama baiknya saat berseluncur di situs desktop. Untuk mengatasi tantangan tersebut, tim-nya bekerja sama dengan orang-orang UX yang sebelumnya melakukan riset.

Sejak tahun lalu, transisi perubahan Bukalapak dilakukan secara bertahap dan perlahan-lahan. Kini, sambungnya, dari segi tampilan homepage, listing produk di aplikasi banyak mengalami perubahan. Strategi ini dipilih sesuai dengan hasil riset yang dilakukan tim UX terhadap pengguna Bukalapak.

Tantangan juga kerap dihadapi tim saat hendak mengembangkan fitur bernuansa fintech dalam aplikasi. Hingga kini, layanan fintech yang diresmikan Bukalapak untuk sementara baru bisa diakses lewat situs desktop saja.

“Untuk BukaReksa dan BukaEmas sampai saat ini memang belum ada karena butuh hal teknis yang lebih dalam. Terlebih banyak grafis yang dibutuhkan agar pengalaman pengguna tetap sama saat buka lewat desktop,” terang Bayu.

Fitur yang segera hadir

Pengguna kini bisa pesan tiket kereta api via Bukalapak / Bukalapak

Bayu memastikan fitur yang akan segera hadir di aplikasi dalam dua minggu mendatang adalah pembelian tiket kereta api. Pihaknya mengaku saat ini prosesnya sudah dalam tahap akhir dan siap didistribusikan ke seluruh pengguna.

Sekadar informasi, Bukalapak meluncurkan layanan pembelian tiket kereta api pada pertengahan Maret 2017, bekerja sama dengan PT KAI.

Kandidat developer idaman Bukalapak

Ibrahim menerangkan dalam mencari developer sesuai idaman, kriterianya tidak hanya harus memenuhi sejumlah persyaratan teknis saja. Tetapi mereka haruslah pribadi yang senang belajar dan gemar berbagi ilmu ke rekannya.

Untuk mendapatkan talenta terbaik, Bukalapak membuka lowongan pekerjaan untuk engineer pada tahun lalu. Dari 10 ribu yang mengajukan, akhirnya hanya diterima 30 orang saja. Selain itu, pihaknya juga mengadakan kompetisi engineer untuk publik. Pemenangnya berkesempatan untuk bekerja di Bukalapak.

“Kami bangun budaya antar developer untuk saling berbagi ilmu apa yang mereka punya ke rekannya. Mereka juga bisa langsung berdiskusi dengan level senior. Secara rutin kami juga share ilmu ke rekan komunitas, dengan saling berbagi ilmu bakal terasa dampak positifnya.”.

Setiap developer juga diwajibkan untuk menerapkan standar coding sesuai aturan di Bukalapak. Bahasa coding harus diseragamkan dan dibuat berurutan. Tujuannya agar proses adaptasi enjiner baru dapat lebih cepat dan bisa menyamai dengan rekan lainnya.

“Bila engineer melakukan kesalahan, meskipun itu fatal, kami anggap itu sebagai kesempatan untuk belajar, bukan jadi ajang untuk saling menyalahkan orang lain,” pungkas Ibrahim.

Application Information Will Show Up Here