Opinion

Kenyataan dalam Penerapan Arsitektur Microservices di Startup

loading...

[Ilustrasi: dysturb | flickr.com]
Salah seorang teman kerja saya di sebuah startup (ya, startup), pernah berkata seperti ini:

Kalau musim rambutan, banyak orang makan rambutan, kalau musim duren, banyak orang makan duren. Intinya tergantung musimnya apa.

Dan sekarang musimnya adalah microservices.

Apa itu microservices? Seperti biasa, saya mengutip dari situs favorit saya untuk urusan jargon dalam hal programming, apalagi kalau bukan Wikipedia :

Microservices are small, independent processes that communicate with each other to form complex applications which utilize language-agnostic APIs.These services are small building blocks, highly decoupled and focused on doing a small task, facilitating a modular approach to system-building. The microservices architectural style is becoming the standard for building continuously deployed systems.

Ada beberapa faktor penting yang menjadi kelebihan dari arsitektur microservices, yaitu:

  • Language agnostic APIs: API yang tidak bergantung pada pemilihan bahasa program
  • Small building blocks: Pengembangannya dengan membangun blok-blok kecil
  • Highly decoupled: Satu sama lain tidak saling ketergantungan
  • Focused on doing small task: Fokus pada pekerjaan yang lebih spesifik
  • Modular approach: Pendekatannya modular
  • Continuosly deployed systems: Pengimplementasian sistem secara terus menerus
Baca Juga:  Dokter Ini Nekat Lakukan Operasi Transplantasi Kepala Manusia

Keenam faktor di atas ini adalah angin-angin surga yang sering menjadi (dunia) impian para engineer/ programmer, terutama di industri startup (saat ini), apalagi disertai kisah sukses startup (besar) yang telah mengadopsi arsitektur ini. Netflix contohnya.

Di tulisan ini, saya bukan bermaksud mengatakan bahwa microservices itu buruk atau jelek entah dengan bahasa yang terang-terangan, ataupun dengan sarkasme. Saya hanya ingin menceritakan bagaimana kehidupan engineer/ programmer di startup setelah berusaha mengadopsi arsitektur ini.

happy-kid
[GIF: gifbay.com]

Startup X

Alkisah, ada sebuah startup yang sedang berkembang, sebut saja namanya startup X.  Dalam hal engineering, startup ini memiliki talenta programmer yang dari sisi mobile, backend dan infrastruktur (server), cukup mumpuni.

Awalnya, startup ini dibangun dengan mengikuti konsep MVP (Minimum Viable Product) atau kalau dalam Bahasa Jawanya adalah “sek penting dadi”. Belakangan kemudian berkembang dan terus berkembang, lalu akhirnya bertemu dengan malaikat investor (baca: angel investor), mendapat pendanaan, dan melakukan promosi dengan gencar. Sayangnya, startup X ini lupa, status produk mereka saat ini masih berupa MVP, bukan produk aslinya.

Baca Juga:  5 Strategi Growth Hacking Social Media untuk Startup

Pada awalnya, sistem startup ini dibangun dengan mengadopsi arsitektur monolitk pada umumnya, yaitu menggunakan microframework dan mengikuti pattern MVC (Model View Controller). Semuanya standard.

Jangan lupa ikuti kami di Twitter untuk mendapatkan update terbaru dari @LabanaID