TipTech #2: Membangun Arsitektur Aplikasi “Scalable” ala Tim Pengembang Ovo

TipTech adalah rubrik baru DailySocial yang membahas berbagai kiat dalam pengembangan produk atau aplikasi startup. Setelah sebelumnya membahas tentang siklus pengembangan produk, kali ini kami berkesempatan untuk berbincang dengan Chief Product Officer Ovo Albert Lucius tentang arsitektur aplikasi yang scalable.

Tujuan dari pengembangan aplikasi yang scalable adalah menunjang pertumbuhan bisnis berkelanjutan. Ketika pengguna layanan semakin bertambah –kadang lonjakannya bisa sangat signifikan—harapannya produk tidak turun performa, misalnya aksesnya jadi lambat atau bahkan mati. Untuk itu diperlukan perencanaan arsitektur sistem yang matang.

Sejak debut pada tahun 2017 sebagai platform loyalty, lalu bertransformasi menjadi e-wallet, hingga sekarang punya basis pengguna mencapai lebih dari 100 juta pengguna; Ovo punya cerita menarik dari dapur pengembang. Saat ini layanan Ovo juga sudah terintegrasi ke banyak platform lain yang memiliki arus transaksi besar –sebut saja Tokopedia dan Grab.

Kepada Albert kami menanyakan tentang bagaimana arsitektur sistem yang baik untuk sebuah aplikasi mobile.

“Menurut kami, dengan cepatnya pertumbuhan secara umum, sangat penting aplikasi bersifat modular dan menggunakan sistem feature flag. Karena akan  banyak komponen aplikasi yang dibuat oleh berbagai tim. Jika sistemnya bersifat monolith, maka akan memperlambat laju pengembangan.”

Dengan pendekatan modular, di dalam sebuah aplikasi terdapat kumpulan unit fungsional (disebut: modul) yang dapat diintegrasikan untuk menjadi aplikasi yang lebih besar. Modul aplikasi tersebut dapat dianalogikan sebagai aplikasi kecil di dalam aplikasi yang dapat diambil, dipasang, atau dikonfigurasi kembali ke aplikasi lain. Modul-modul tersebut terbungkus dalam logika bisnis program yang direpresentasikan dalam antarmuka pengguna.

Sementara konsep feature flag penting diterapkan, sehingga memungkinkan pengembang membatasi/menonaktifkan beberapa fitur saat terjadi masalah, tanpa mematikan fungsi aplikasi secara keseluruhan.

Albert Lucius
Chief Product Officer Ovo Albert Lucius / Ovo

Kiat integrasi aplikasi

Selain mempertimbangkan dua hal di atas, Albert juga menyampaikan tentang konsiderasi pembagian aplikasi native dan webview untuk menjaga performa aplikasi.  Hal tersebut akan berdampak pada ukuran APK dari tiap aplikasi. Menurutnya ini jadi faktor penting, terlebih saat startup terus beranjak mencapai skala yang lebih besar.

Aplikasi native dibangun dengan bahasa pemrograman tertentu yang menyatu dengan core aplikasi. Sementara aplikasi webview memanfaatkan fungsionalitas penampil laman web di dalam aplikasi tanpa harus memaksa pengguna membuka browser terpisah.

Di lain sisi, integrasi dengan pihak ketiga juga menjadi hal yang butuh diperhitungkan secara teknis untuk aplikasi seperti Ovo. Albert menyebutkan, keamanan pengguna menjadi prioritas utama bagi perusahaan ketika melakukan integrasi. Selain proses internal dan disiplin terhadap SOP, ia selalu menyarankan untuk melakukan penetration testing (pen-testing) eksternal. Banyak sekali saat ini vendor lokal maupun luar negeri yang dapat membantu proses ini.

Pen-testing adalah kegiatan menyimulasikan serangan terhadap sistem aplikasi. Ini jadi komponen penting dalam audit keamanan, biasanya wajib dilakukan untuk aplikasi yang menampung data sensitif, agar tidak mudah dibobol atau diintervensi oleh pihak yang tidak bertanggungjawab –baik dari internal maupun eksternal.

pen-testing
Tahapan dalam pen-testing / Imperva

“Program bug bounty juga dapat membantu menyalurkan laporan bugs yang mungkin tidak terdeteksi oleh proses internal. Peningkatan kualitas layanan dan sistem keamanan (di sisi aplikasi kita) juga jadi faktor penting untuk kenyamanan pengguna,” terang Albert.

Pengelolaan sumber daya

Infrastruktur teknologi yang baik juga harus ditangani oleh SDM yang mumpuni untuk menghasilkan performa terbaik. Untuk mengelola pekerjaannya, juga diperlukan metodologi yang tepat. Namun menurut Albert, di perusahaannya tidak terpaku pada tren yang sedang menjadi sorotan, kesesuaian dengan karakteristik tim menjadi pertimbangan utama.

“Sangat penting untuk kami dalam merekrut tim yang betul-betul paham scaling infrastruktur secara baik dan benar.”

Setiap pengembang juga dituntut untuk menghasilkan baris konde yang berkualitas. Menurutnya ada tiga indikator yang dapat menggambarkan susunan pemrograman yang efisien, yakni sistem repositori yang memadai, konsep best coding practice, dan code reveiw yang solid. Best coding practice menjadi aturan informal yang harus sering diutarakan melalui sebuah standar yang diterapkan di perusahaan, dilengkapi dengan pelatihan yang memadai.

“Sistem code review juga sangat penting karena sedikit banyak SDM mudah membuat kesalahan. Oleh karena itu untuk startup yang sedang berkembang, jangan lupa untuk melakukan automated testing dan unit testing. Hal ini dikarenakan semakin membesarnya skala startup, semakin banyak developer yang bekerja di code repository kita, semakin banyak kesalahan dapat terjadi. Automated testing akan sangat membantu mengurangi human-error yang dapat terjadi,” jelas Albert.

Application Information Will Show Up Here

Evaluasi Ketika Bisnis Tidak Kunjung Tumbuh dan Berkembang

Salah satu syarat bagi bisnis startup untuk mencapai kesuksesan adalah terus bertumbuh (scaling-up). Baik dari segi fitur atau layanan, pengguna, hingga profit atau pendapatan. Pertumbuhan bisnis harus menjadi perhatian khusus karena berdampak bagi keberlangsungan bisnis. Untuk mengevaluasi pertumbuhan bisnis, berikut beberapa hal yang harus diperhatikan jika lajunya masih jalan di tempat.

Kurangnya peluang

Untuk bisa bertumbuh harus wajib memiliki ruang dan peluang. Jika bisnis menghadapi posisi stuck atau tidak mengalami pertumbuhan dalam waktu yang lama hal yang paling mungkin adalah sudah tidak ada peluang untuk tumbuh. Di sinilah seorang pemimpin harus menganalisis, mulai dari model bisnis, ekosistem, hingga target pengguna. Lakukan ekspansi jika perlu, tambah jumlah layanan jika dibutuhkan.

Kebosanan

Hal selanjutnya yang diperhatikan adalah kebosanan. Dalam menjalankan sebuah bisnis kebosanan bisa melanda banyak aspek, seperti kebosanan pada strategi marketing, kebosanan dengan inovasi yang tidak ada perubahan berarti maupun kebosanan yang melanda orang-orang di dalam tim. Di titik inilah pemimpin perlu mengambil langkah bijak, seperti mencari insight baru dari orang-orang di luar tim, atau melakukan inovasi yang cukup membuat antusiasme secara menyeluruh.

Melihat ke dalam tim

Selanjutnya, jika bisnis tidak kunjung juga mendapatkan pertumbuhan sebagai pemimpin wajib untuk melakukan evaluasi. Tidak ada salahnya mendatangkan satu-dua orang yang memiliki kompetensi lebih untuk mengubah keadaan. Atau paling tidak pemimpin bisa memberikan kebijakan untuk setidaknya mengubah suasana atau memberikan kesempatan anggota tim untuk berkreasi lebih.

Prioritas fokus

Fokus adalah hal penting lainnya yang harus diprioritaskan. Jangan sampai fokus bisnis diletakkan ke hal-hal yang tidak semestinya. Jika di tahap awal fokus bisa diletakkan untuk melakukan eksplorasi pasar dan menggali peluang, target pengguna dan pembenahan model bisnis. Hal tersebut bisa menjadi kunci. Selanjutnya bisa fokus pada bagaimana terus menumbuhkan bisnis.

Kebutuhan “Scaling-Up” Lebih Mendesak untuk Ekosistem Startup Indonesia

Bersamaan penyusunan artikel menyambut Hari Ulang Tahun Kemerdekaan Indonesia ke-72 beberapa waktu lalu, kami mewawancara beberapa pihak, termasuk dari kalangan investor startup Indonesia. Salah satu narasumber kami adalah Nicko Widjaja, CEO MDI Ventures. Dari review seputar perjalanan startup Indonesia yang dipaparkan Nicko, ada satu hal yang menjadi garis besar sekaligus sebuah penegasan: we need more scale-ups, not startups. Menarik menjadi perhatian, pasalnya banyak pihak masih menggemborkan tentang penumbuhan startup digital dari sisi kuantitas.

“Series A Crunch”, startup terpaku pada pendanaan awal

“Saya memulai bisnis venture capital sejak tahun 2010, saat itu industri startup mulai terlihat arahnya, seperti Koprol diakuisisi oleh Yahoo! pada bulan Mei 2010, Kaskus oleh Djarum di tahun berikutnya, dan beberapa akuisisi kecil berdatangan setelahnya. Dari pandangan pemodal ventura, tentunya hal ini menjadi perhatian karena terlihat jalan exit, meskipun pasar modal di Indonesia sampai saat ini belum mempersiapkan platform untuk IPO bagi startup,” terang Nicko menceritakan pengalamannya.

Terkait dengan proposisi investor, Nicko memberikan pandangan bahwa yang ada di Indonesia saat ini semakin banyak pemodal yang siap untuk bertaruh. Tidak hanya dari kalangan venture capital –kendati saat ini porsi investasi startup digital masih didominasi VC—tetapi juga pihak permodalan lain, baik private equity maupun konglomerat pun, ingin ikut ke dalam rancah startup digital di Indonesia.

“Sayangnya para pemodal tersebut tidak siap untuk bermain di pendanaan berikutnya. Selain pemodal ventura, tidak banyak yang mengerti industri startup. Industri startup bukan UKM yang hanya sekali dua tiga kali diinvestasi lalu akan menghasilkan dividen. Yang terjadi saat ini yaitu ‘Series A Crunch’ di mana startup yang laku saat pendanaan awal, tidak laku ketika menawarkan growth runway berikutnya,” ujar Nicko menerangkan fenomena pendanaan startup saat ini.

Menurut Nicko, fenomena Series A Crunch terjadi karena overvaluation. Disebabkan karena banyak pemodal ventura yang ingin menggoreng valuasi bagi keuntungan mereka. Pada akhirnya tidak banyak venture capital yang siap Seri A percaya dengan valuasi sebelumnya. Series A Crunch bukan terjadi karena tidak ada modal, tetapi tidak ada startup yang valid dengan valuasi yang diinginkan.

“Jika anda berbicara dengan top-tier investor di luar sana, mereka akan berkomentar sama, bahwa Indonesia memiliki demand (dana) yang besar tetapi tidak dipenuhi dengan supply (startup) yang mencukupi. Sekali lagi saya tekankan, bukan berarti tidak memiliki banyak startup, tetapi tidak memiliki startup yang mampu berkompetisi dan melakukan scaling-up dengan cepat,” terang Nicko.

Akses menuju “growth” mutlak dibutuhkan startup Indonesia

Pada kenyataannya dari ekosistem startup mulai terlihat signifikan –kurang lebih tahun 2010 sampai sekarang, banyak pemodal yang akhirnya menyerah dengan startup, hanya segelintir yang bertahan. MDI Ventures menjadi salah satu yang bertahan. Walau pada akhirnya pihaknya memilih bergabung dengan Telkom dalam menginkubasi dan mengakselerasi startup binaannya.

“Kami belajar banyak sebelum akhirnya bergabung dengan Telkom, dan kami percaya bahwa ekosistem startup di Indonesia hanya unik di Indonesia. Mereka yang berpikir dapat copy-paste model dari luar dibawa ke sini sudah belajar mahal, lihat saja Rocket Internet,” ujar Nicko.

Nicko lanjut memaparkan, bahwa mereka (VC) yang melakukan ‘spray model‘ akan terimbas lebih mahal lagi, karena terlihat dari spraying seperti itu hanya kurang dari setengah persen yang menjadi unicorn dan yang berbahaya lagi path to liquidity-nya belum jelas terlihat.

“Setelah sekian tahun, akhirnya model yang saya lihat adalah ‘synergy model’. Inilah yang menjadi fondasi tesis kami ‘bits by bricks’. Tanpa adanya fondasi bisnis brick-and-mortar, tidak mungkin bisnis digital (bit) ini dapat scale-up, karena model pasar di Indonesia ini hybrid, tidak seperti di Amerika Serikat, bahkan India.”

Akses terhadap growth yang penting dalam membangun sebuah ekosistem. Menurut Nicko, tanpa adanya bentuk korporasi yang mendukung, bisnis startup dan modal ventura pada akhirnya akan bubble and burst. Investor akan hilang kepercayaan kepada industri dan industri akan hilang dengan sendirinya.

Cara Tepat Memilih Program Akselerator Startup

Saat ini sudah banyak program akselerator yang menawarkan dana, mentorship hingga networking kepada startup. Dari sekian banyak pilihan program akselerator yang ada, hanya beberapa saja yang sesuai dengan kriteria dan tujuan akhir dari startup. Idealnya ketika startup sedang bersiap untuk menjalani program akselerator, jangan sebarkan “aplikasi” ke semua program akselerasi yang ada, coba pilih program akselerator yang sesuai dengan produk, visi dan misi dari startup.

Cara lain yang bisa diterapkan saat berniat untuk menjalankan program akselerator startup, jangan mengikuti program akselerator saat startup sudah mulai menunjukkan penurunan dan tidak berhasil mengalami pertumbuhan. Program akselerator tidak akan mampu untuk membantu startup saat sudah mulai collapse. Jalankan program akselerator, ketika startup mulai mengalami pertumbuhan atau bersiap untuk scale-up. Artikel berikut akan membahas dua kategori program akselerator startup yang bisa dipilih sesuai dengan kebutuhan startup.

Program akselerator privat

Biasanya program akselerator yang satu ini lebih memfokuskan kepada startup baru yang masih memerlukan validasi dan pembuktian keberhasilan konsep atau model bisnis yang dimiliki. Program akselerator privat bisa membantu pemilik startup baru untuk fokus menemukan product market fit dan membangun jaringan bisnis.

Program akselerator korporasi

Program akselerator yang satu ini memfokuskan kepada startup yang sudah mulai memasuki tahap scale-up atau startup yang sudah mampu mendatangkan profit, stabil dan memiliki potensi untuk berkembang. Program ini akan membantu startup untuk meningkatkan bisnis dengan memberikan mentorship, informasi tentang manajemen dan bisnis hingga pengetahuan teknik yang dibutuhkan.

Dengan dukungan dan fasilitas yang diberikan oleh perusahaan tersebut, memberikan kesempatan untuk startup melakukan kegiatan pemasaran, branding hingga memanfaatkan akses tidak terbatas milik perusahaan tersebut.

Lima Hal yang Wajib Diterapkan Startup Jelang Tahun Baru

Tidak terasa tahun baru sudah tinggal menghitung hari, waktunya untuk melakukan evaluasi target dan rencana yang telah dicapai sepanjang tahun 2016 dan merencanakan apa yang akan dilakukan tahun 2017 mendatang. Sebagai perusahaan rintisan, awal tahun baru bisa dimanfaatkan untuk melakukan scale up, mulai dari menambah inovasi, pindah kantor baru, merekrut lebih banyak karyawan hingga menentukan ke mana rencana bisnis perusahaan ke depannya. Artikel berikut ini akan membahas 5 cara yang baik dilakukan startup di awal tahun yang baru.

Tuliskan rencana dan tampung masukan dari rekan

Tentunya akan menjadi sia-sia jika Anda pemilik startup tidak memiliki rencana dan target yang ingin dicapai tahun 2017 mendatang. Untuk itu coba tuliskan rencana, harapan dan semua target yang ingin dicapai oleh Anda sebagai pemilik perusahaan untuk startup. Coba ceritakan rencana tersebut kepada rekan, di luar pegawai atau co-founder, dan coba tampung feedback dari pihak keluarga untuk kemudian menjadi masukan untuk Anda.

Keluar dari zona aman

Jika saat ini startup milik Anda sudah cukup memiliki profit dan menjalankan rutinitas yang ada, coba koreksi dan rubah target serta pencapaian yang ingin diraih lebih tinggi lagi. Keluar dari zona aman yang selama ini cukup nyaman Anda jalankan, demi memperoleh keuntungan dan prestasi yang lebih untuk startup.

Tumbuhkan rasa loyalitas karyawan

Sebagai pimpinan yang baik Anda harus memiliki kemampuan untuk mencermati kemampuan dan skill yang dimiliki oleh masing-masing karyawan Anda. Berikan tugas yang sesuai dengan latar belakang dan kemampuan yang dimiliki dan biakan karyawan Anda menjalankan tugasnya. Dengan menerapkan cara ini bukan hanya Anda sebagai pemimpin akan mendapatkan hasil yang diinginkan namun juga membuat karyawan Anda lebih bahagia.

Monitor rencana yang ada

Salah satu kesalahan yang kerap dilakukan oleh pemilik startup adalah, tidak melakukan pengecekan atau memonitor setiap minggu atau bulan rencana bisnis yang telah dijalankan. Apakah rencana yang telah dibuat selama 12 bulan ke depan sudah dilakukan atau terpaksa tertunda karena berbagai alasan, jangan pernah lupa untuk menuliskan laporan terkait perkembangan yang ada.

Nikmati pekerjaan yang ada

Salah satu kunci kesuksesan sebuah startup atau perusahaan teknologi ternama di dunia adalah, kecintaan serta rasa puas dan bahagia yang dimiliki oleh pimpinan hingga karyawan selama mengerjakan tugas yang diberikan. Jika karyawan Anda happy dengan tugas yang dibebankan, bisa dipastikan semua pekerjaan akan memberikan hasil yang baik dan sesuai dengan target yang ditentukan. Untuk itu upayakan selalu menikmati semua tugas dan pekerjaan yang ada, agar perusahaan bisa berjalan secara positif.