Anda di halaman 1dari 52

Linux, Cloud, Remote Work

Rumy Taulu
Linux
Linux
Linux mengawali ketenarannya pada dunia pusat
data sebagai alternatif dari UNIX. Pada saat itu,
sistem operasi UNIX menguasai industri dan untuk
alasan yang baik. Mereka memiliki kinerja yang
bagus, toleran terhadap kesalahan dan sangat stabil.
Namun, mereka membutuhkan biaya yang mahal dan
harus berjalan pada perangkat keras yang eksklusif.
Banyak utilitas dan aplikasi yang sudah dikenal yang
dikembangkan untuk platform UNIX tersebut
akhirnya di-porting ke Linux.
Jadi, begitu Linux menjalankan layanan seperti
Apache, tidak mengherankan jika Linux akan
merebut dan menggantikan teknologi yang sama
yang pernah menginspirasi pembuatannya. Bagian
terbaiknya adalah Linux berjalan pada perangkat
keras komoditas x86. Pada akhirnya, siapa pun dapat
menggunakan server Linux dengan biaya yang lebih
rendah untuk menyebarkan sesuatu dari Sun
Microsystems, Silicon Graphics (SGI) atau dari
distributor UNIX lainnya.
Saat ini, Linux digunakan di sebagian besar pusat data
di seluruh dunia dan mengelola beberapa aplikasi dan
layanan internet yang paling penting – bahkan
menjalankan apa yang biasa kita sebut sebagai cloud.
Sejumlah besar perusahaan mempercayai Linux untuk
mempertahankan beban kerja mereka dan
melakukannya dengan sedikit atau tanpa gangguan
atau waktu henti. Kernel bahkan telah merayap masuk
ke sistem hiburan rumah, mobil, dan perangkat seluler.
Di mana pun kamu dapat menemukan Linux.
Penggunaan Linux
Alasan Penggunaan Linux
1. Stabilitas
Seiring dengan berkembangnya proyek dalam baris
kode, begitu pula jumlah pengembang dan
pengguna yang menyentuhnya. Orang-orang yang
berdedikasi ini menghabiskan waktu berjam-jam
untuk menemukan dan segera memperbaiki bug –
bug yang mungkin menyebabkan ketidakstabilan
pada satu titik waktu atau di bawah beban kerja
yang sangat spesifik.
2. Portabilitas
Sampai saat ini, kernel Linux mendukung sebagian
besar arsitektur perangkat keras dan periferal perangkat
keras di dunia pengembangan perangkat lunak. Kamu
tidak dapat menemukan kernel yang dirancang untuk
berjalan pada beberapa versi 32- dan 64-bit x86, ARM,
MIPS, SPARC, POWER, mikroprosesor dan bahkan
mendukung beberapa perangkat keras terbaru, atau yang
paling tidak jelas atau malah sudah usang. Dan, ia
melakukannya dari satu sumber.
3. Keamanan
Untuk alasan yang sama dengan stabilitasnya,
Linux tetap menjadi kernel paling aman yang saat
ini berjalan dalam produksi. Ketika eksploit
ditemukan, eksploit tersebut segera ditambal ke
kernel stabil terbaru dan kemudian di-backport ke
semua kernel yang didukung Jangka Panjang (LTS)
yang terpengaruh.
4. Dukungan
Manfaat lain dari lisensi sumber terbuka, perusahaan yang
mendistribusikan ulang Linux dapat memfokuskan sebagian
besar upaya mereka untuk memastikan bahwa pelanggan
mereka tidak menerima apa pun kecuali dukungan kelas
satu. Tidak seperti vendor perangkat lunak sumber tertutup,
distributor Linux memiliki hak istimewa untuk
memanfaatkan bakat dari banyak pengembang dan pengguna
yang sangat cerdas di seluruh dunia untuk mengembangkan
dan menguji perangkat lunak mereka – paling sering, tanpa
biaya tambahan bagi mereka.
5. Mendapatkan Keuntungan
Meskipun Linux dan sistem operasi yang menggunakan
kernel gratis, untuk mendukung sistem operasi tersebut
biasanya mengharuskan perusahaan dan pengguna
akhir untuk membayar langganan dukungan.
Dengan cara ini, pemakai dijamin mendapatkan
teknologi perangkat lunak terbaru, dukungan perangkat
keras, dan tambalan keamanan yang terintegrasi ke
dalam lingkungan dan ke mesin fisik atau virtual.
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing adalah model komputasi teknologi
berbasis internet yang memungkinkan penggunanya
menyimpan, mengakses dan mengelola data yang
dimiliki secara virtual.
Dari sisi perusahaan, ketika menggunakan cloud
computing. Maka perusahaan tidak perlu memiliki
infrastruktur fisik seperti Hardware, CPU, Memory,
Storage, Network, Server, Database, dsb melainkan
hanya perlu menyewanya pada provider yang
menyediakan layanan tersebut.
Dengan begitu, perusahaan tidak perlu repot
memikirkan biaya pemeliharaan perangkat keras,
biaya operasional ataupun beban biaya lain, karena
itu menjadi urusan provider yang kita gunakan
layanannya sesuai dengan kebutuhan.
Contoh provider yang menyediakan layanan cloud
computing diantaranya adalah Amazon Web
Services, Google Cloud Platform, Microsoft Azure,
Alibaba Cloud, IBM Cloud, Huawei Cloud dll.
Manfaat Cloud Computing
1. Biaya
Dengan cloud pengguna tidak perlu mengeluarkan
biaya besar untuk pengadaan dan pemeliharaan
perangkat lunak, perangkat keras, server, listrik,
pendingin server serta ahli IT untuk pengelolaan
Infrastruktur.
2. Kecepatan
Layanan cloud menyediakan layanan sesuai
permintaan. Semisal kita ingin mengupgrade
kapasitas penyimpanan, hanya dengan beberapa
klik, kapasitas penyimpanan sudah terupgrade. Hal
ini lebih cepat daripada kita harus membeli
perangkat CPU, Hardisk atau RAM dsb.
3. Skala Global
Bisnis bisa berkembang dengan elastis. Kita bisa
memberi bandwith, komputasi dan sejenisnya
sesuai dengan lokasi geografis pelanggan.
Sehingga layanan bisa lebih cepat dan efektif.
4. Produktifitas
Membangun server membutuhkan sumber daya
perangkat yang besar, selain juga para tenaga IT.
Dengan Cloud Computing tenaga IT tidak lagi
mengurus perangkat-perangkat keras, melainkan
dialihkan pada pekerjaan lain yang lebih
dibutuhkan.
5. Kehandalan
Kelangsungan bisnis bisa lebih mudah dan murah
karena proses pencadangan data ataupun
pemulihan data bisa dilakukan dengan cepat.
6. Keamanan
Penyedia cloud computing tentu saja terdiri dari
para pakar IT yang tidak diragukan
kemampuannya. Cloud computing mempunyai
keamanan yang kuat yang dapat melindungi data,
aplikasi ataupun infrastruktur sistem dari ancaman
kejahatan dunia maya atau cyber crime.
Layanan Cloud Computing
Layanan Cloud Computing
Jenis layanan atau service pada cloud computing
secara umum terdiri dari 3, yakni
1. Software As a Service (SAAS)
2. Infrastruktur As a Service (IAAS)
3. Platform As a Service (PAAS)
1. Software As a Service (SaaS)
SaaS adalah salah satu layanan dari cloud computing
yang memungkinkan pengguna menggunakan aplikasi
tanpa harus menginstalnya di komputer. Contohnya
seperti Google docs, Google Spreadsheet, Canva dan
sejenisnya.
Ketika menggunakan Google Docs kita tinggal
mengunjunginya melalui website tanpa harus melakukan
instalasi. Ini berbeda dengan Microsoft word yang harus
diinstal terlebih dahulu di komputer.
2. Infrastructure As a Service (IaaS)
Ini adalah layanan dasar yang disediakan oleh
cloud computing. IaaS menyediakan layanan
infrastruktur sistem komputer seperti misalnya
Server, Mesin Virtual, Jaringan, Sistem Operasi,
Sistem Penyimpanan Data dsb.
3. Platform As a Service (PaaS)
Layanan ini memungkinkan pengguna untuk
menguji, membuat, mengembangkan ataupun
mengelola aplikasi perangkat lunak berbasis web
atau selular. Dengan layanan cloud ini pengguna
tidak perlu repot memikirkan bagaimana Server,
Jaringan, Penyimpanan, Basis Data dsb.
Kelebihan Cloud Computing
1. Fleksibilitas
Dengan cloud computing kita dapat mengakses
data yang kita butuhkan dari perangkat apapun,
dari mana saja dan kapan saja. Selain itu kita dapat
menyimpan data pada penyimpanan cloud dan
mengambilnya kembali meskipun pada perangkat
yang berbeda.
2. Hemat Biaya
Sebelum cloud hadir, perusahaan harus membeli,
membangun dan melakukan pemeliharaan sistem
(maintenance) terhadap infrastruktur teknologi
yang dibuat.
Dengan cloud kita tidak perlu lagi mengeluarkan
biaya lebih untuk hardware seperti hardisk, server,
cpu dsb.
3. Menghemat Penyimpanan Pada Perangkat
Jika sebelumnya kita harus menginstal aplikasi
untuk menggunakan suatu software. Dengan cloud
kita tidak perlu melakukannya. Contohnya adalah
terobosan Google Docs yang berfungsi sama seperti
Ms. Word.
Karena tidak perlu diinstal, ruang penyimpanan
komputer tidak penuh dengan software sehingga
membuat sistem komputer menjadi lambat.
Kekurangan Cloud Computing
1. Harus Terhubung Internet
Sebetulnya ini bukan menjadi masalah besar,
mengingat kemajuan internet dimasa sekarang ini.
Terlebih di beberapa wilayah jaringan 5G sudah
digunakan sehingga membuat kecepatan akses
lebih maksimal.
2. Keamanan Data
Tidak ada data yang aman di dunia ini, semua pasti
memiliki celah. Data keuangan dan catatan medis
menjadi informasi sensitif yang harus dijaga baik
itu dari pembobolan pihak luar ataupun dari pihak-
pihak dalam perusahaan yang kurang bertanggung
jawab.
3. Kesalahan Sistem
Dengan banyaknya pengguna yang mengakses dan
memanipulasi data pada satu portal, bukan tidak
mungkin ada kesalahan sengaja ataupun tidak
sengaja yang berimbas pada keseluruhan sistem.
Namun, Pada beberapa provider cloud besar, hal
seperti itu mungkin kecil kemungkinan terjadi,
karena sistem dan protokol kuat yang telah
dibangun oleh perusahaan penyedia Cloud.
Tools Dunia Kerja Online
Programmer Tools
1. Web Application dan Mobile Application
MEAN Stack
MongoDB, ExpressJS, AngularJS, NodeJS
Java, Kotlin, Flutter dll
2. Application Security, Code Analysis
Snyk, SonarCube
3. Version Control
Git, Github, Bitbucket
SQA Tools
1. Katalon
Katalon Studio berfungsi untuk melakukan pengujian
API, Web, seluler, dan pengujian aplikasi desktop.
2. JMeter
Digunakan untuk performance test. jMeter juga bisa
digunakan untuk melakukan load/stress testing Web
Application, FTP Application dan Database server
test.
SQA Tools
3. Postman
Postman adalah developing tools yang membantu
penggunanya untuk membangun, menguji, dan
memodifikasi API.
4. Selenium
Selenium adalah tools pengujian aplikasi yang open
source dan otomatis. Dengan Selenium, Tester dapat
menguji berbagai aplikasi web lintas browser dan
platform secara otomatis.
SQA Tools
5. Cypress
Tool untuk memudahkan proses pengujian dan debugging
aplikasi web. Cypress bisa melakukan tes seperti end-to-
end test dan component test. Cypress biasanya digunakan
untuk pengujian aplikasi web, contohnya yang dibuat
dengan React atau Angular, karena semua pengujian
dilakukan dalam lingkungan peramban web (web
browser). Cypress sebagai salah satu bagian dari ekosistem
Node.js dapat diinstall menggunakan npm atau yarn, selain
itu juga bisa diunduh langsung dari situs web resminya.
Agile Development Methode
Metode Agile
Agile adalah sekumpulan metode pengembangan software yang
dilakukan secara bertahap dan berulang (iterasi).

Agile development sering disebut sebagai framework karena di


dalamnya memang terdapat berbagai metode yang bisa digunakan
sesuai kebutuhan. Kami akan bahas lebih lanjut di bawah.

Setiap iterasi pada Agile juga berbeda-beda durasinya, tergantung


project yang Anda kerjakan dan metode yang digunakan. Namun,
umumnya iterasi berjalan antara satu sampai empat minggu.
Scrum
Scrum
Scrum adalah kerangka kerja yang digunakan oleh
tim untuk mengelola pekerjaan dan menyelesaikan
masalah secara kolaboratif dalam siklus pendek.
Scrum menerapkan prinsip-prinsip Agile sebagai
serangkaian artefak, praktik, dan peran yang
konkret.
Peran Scrum
Ada tiga peran utama di Scrum:
Pemilik produk, Master Scrum, dan Tim Scrum.
Pemilik produk
Pemilik produk bertanggung jawab atas apa yang
dibangun tim, dan alasan mengapa mereka
membangunnya. Pemilik produk bertanggung
jawab untuk menjaga backlog pekerjaan tetap
terbaru dan dalam urutan prioritas.
Master scrum
Master Scrum memastikan bahwa proses Scrum
diikuti oleh tim. Master scrum terus mencari tahu
cara pengembangan tim, sembari juga
menyelesaikan hambatan dan masalah pemblokiran
lainnya yang muncul selama sprint. Master scrum
berfungsi sebagai pelatih, anggota tim, dan
pemberi semangat.
Tim scrum
Anggota tim Scrum umumnya adalah tim
pengembang aplikasi (application developer)
mereka yang mengembangkan produk dengan
kualitas yang sesuai.
Backlog Product
Backlog produk adalah daftar pekerjaan yang
diprioritaskan yang diberikan kepada tim. Pemilik
produk bertanggung jawab untuk menambahkan,
mengubah, dan mengharuskan kembali backlog
sesuai kebutuhan. Item di bagian atas backlog
harus siap untuk dijalankan oleh tim kapan saja.
Merencanakan Sprint
Dalam perencanaan sprint, tim memilih item backlog
untuk dikerjakan dalam sprint mendatang. Tim
memilih item backlog berdasarkan prioritas dan apa
yang mereka yakini dapat mereka selesaikan dalam
sprint. Backlog sprint adalah daftar item yang
direncanakan tim untuk diberikan dalam sprint.
Seringkali, setiap item pada backlog sprint diuraikan
menjadi beberapa tugas. Setelah semua anggota
setuju backlog sprint dapat dicapai, sprint akan
dimulai.
Menjalankan Sprint
Setelah sprint dimulai, tim akan menjalankan pada
backlog sprint. Scrum tidak menentukan cara
eksekusi tim. Tim memutuskan cara mengelola
pekerjaannya sendiri.
Daily Scrum
Scrum mendefinisikan praktik yang disebut Daily
Scrum (Scrum Harian) sering disebut (Daily Standup)
Standup Harian karena dilakukan dalam waktu singkat
sambil berdiri (untuk Work From Office). Scrum
Harian adalah rapat harian yang dibatasi hingga lima
belas menit. Anggota tim sering berdiri selama rapat
untuk memastikannya tetap singkat. Setiap anggota
tim secara singkat melaporkan perkembangan mereka
sejak kemarin, rencana untuk hari ini, dan apa saja
yang menghambat perkembangan mereka.

Anda mungkin juga menyukai