mployee logo

Profesi Devops

DevOps adalah serangkaian praktik yang mengotomatisasi proses antara pengembangan aplikasi dan tim pengembang

profesi devops

Deskripsi Profesi Devops

DevOps adalah serangkaian praktik yang mengotomatisasi proses antara pengembangan aplikasi dan tim pengembang.

DevOps merupakan singkatan dari dua kata yaitu Development dan Operation. Di mana kedua kata tersebut bermakna “operasional pengembang”.

Seperti yang disebutkan sebelumnya, DevOps adalah sebuah prinsip developer untuk mengkoordinasikan antar tim yaitu tim development dengan tim operations dengan efektif dan efisien.

Secara garis besar, DevOps Engineer adalah bagaimana caranya membangun sistem infrastruktur yang terotomatisasi, terintegrasi dan fleksibel agar Developer dapat meluncurkan coding mereka secepat dan seefisien mungkin.

Tujuan adanya DevOps adalah agar memungkinkan komunikasi dan kolaborasi sehingga menghasilkan kinerja tim yang efisien antara pengembang dan operator.

DevOps sangat penting di perusahaan IT. Mengapa? Pasalnya, salah satu praktik terbaik dalam DevOps yaitu melakukan update produk yang kecil dan cepat. Dalam industri IT, ini bisa disebut dengan minor atau patch update.

Dengan melakukan update produk yang kecil, organisasi atau perusahaan dapat melakukan inovasi lebih cepat bagi produknya.

Selain itu, mereka juga dapat melakukan rollback dengan mudah jika ditemukan bug yang tidak tersentuh oleh automated testing maupun tim QA (Quality Assurance).

Dengan praktik ini, perusahaan dapat memonitor produk dan mendapatkan data yang paling berharga yaitu data pengguna.

Berikut adalah beberapa manfaat jika sebuah perusahaan besar, maupun startup memiliki posisi ini di perusahaan.

1. Mempercepat proses develop aplikasi serta mengurangi risiko kegagalan

Ketika tim Developer sudah diberikan keleluasaan dalam melakukan deploy kode, dan rollback kodenya sendiri, developer mampu menulis kode secara lokal di laptop serta mengunggah kode ke server test. 

Setelah itu, QA (Quality Assurance)/Tester melakukan pengecekan selanjutnya developer mengunggah kode ke Server Production. 

Langkah ini lebih cepat, efisien, serta mengurangi risiko kegagalan dibandingan jika tim Developer dan tim Operation dipisah.

2. Tim yang lebih produktif

Dengan digabungkannya tim Developer dengan tim Operation, tentunya membuat mereka akan jauh lebih memungkinkan untuk berkolaborasi dan berkomunikasi secara lebih efektif.

Hal ini membuat kedua tim akan memiliki satu tujuan bersama, yaitu mampu meluncurkan fitur atau bug secepat mungkin ke pengguna.

Tujuannya adalah untuk memunculkan rasa saling memiliki dan meningkatkan produktivitas tim.

3. Angka human error yang lebih rendah

Dengan bantuan beberapa tools yang digunakan seperti server yang berada di Cloud (AWS, GCP, Azure, dll), Jenkins, Ansible, hingga Python, profesi ini dapat membuat sebuah sistem di mana Developer bisa tinggal mengetikkan 1 perintah untuk secara otomatis mengunggah kode mereka ke server, dan begitu pula dengan rollback.

Semua dapat dilakukan tanpa mengganggu Developer lain, server lain, maupun tanpa campur tangan manual tim Operation. Dengan begini semua sudah serba otomatis sehingga risiko terjadi Human Error menjadi lebih sedikit.

Jobdesk Devops

1. Menjembatani antara Developer dan Tim Operasional

Devops Enginers memiliki kapasitas diantara para Developer dan juga Tim Operasional. Dapat dikatakan ia memiliki peran sebagai penyambung lidah agar tidak terjadi miss komunikasi diantara keduannya. Sehingga mempermudah kerja diantara dua divisi tersebut.

2. Mengawasi Sistem Yang Telah Terbangun

Seorang Devops Enginer harus dapat memastikan suatu produk dapat diselesaikan dalam proses yang cepat. Sistem teknis yang terbentuk seperti proses testing, deplyoment, dan staging. Jika suatu produk atau aplikasi dapat diselesaikan dengan cepat maka produk terebut dapat segera diluncurkan dan bersaing dipasaran.

3. Memonitoring Produk

Selain mengawasi produk yang akan segera diluncurkan, Devops Engineer juga memonitor produk yang telah berjalan. Hal ini dilakukan agar Devops Engineer mengetahui kode – kode yang tidak sesuai kemudian dapat langsung disampaikan ke staff IT sehingga dapat segera diperbaiki dan tidak menganggu sistem yang sedang berjalan.

DevOps memiliki tugas yang lebih detail:

  • Mengembangkan solusi skala besar dalam sebuah software dengan menggunakan salah satu bahasa pemrograman seperti Python, .NET, Java, dan JavaScript
  • Menangani masalah dan berpengalaman dalam Cassandra, Elasticsearch, and MySQL
  • memiliki pengalaman dengan server administrasi berbasis Linux atau memiliki pengetahuan yang dalam dengan Linux atau Unix
  • Menangani secara langsung permasalahan IT dengan menggunakan Puppet atau Chef atau tools konfigurasi manajemen lainnya
  • Membuat prototipe, mengembangkan, dan mengaplikasikan intergrasi software berdasarkan feedback dari para user
  • Mengimplementasikan tools otomatis dan frameworks (CI/CD pipelines)
  • Menganalisis kode dan mengomunikasikan review secara detail untuk perkembangan tim
  • Mengimplementasikan cloud (AWS, Azure, GCP)  untuk melakukan upgrade dan memperbaiki bug
  • Melakukan pendekatan seperti manajemen risiko, clustering, load balancing, dan failover
  • Melakukan percobaan untuk keamanan, performa, dan ketersediaan
  • Memiliki skill interpersonal dan komunikasi yang baik
  • Memonitor software/website serta peralatan dan prosedur yang dipakai dalam departemen agar sesuai dengan standar yang ada
  • Memastikan seluruh sistem berjalan lancar, selalu terpantau, dan menanggapi isu-isu yang muncul
  • Melakukan otomatisasi terhadap proses-proses yang ada untuk mempercepat pekerjaan
  • Memecahkan masalah yang ada pada software/website secepat dan seefektif mungkin
  • Merancang dan mengembangkan automated scripts serta mengujinya untuk mempercepat proses
  • Berkolaborasi dengan beberapa departmen teknologi lainnya untuk berdiskusi dan menciptakan solusi mengenai software/aplikasi/website yang ada

Keahlian Yang Harus Dimiliki Devops

1. Kolaborasi dan komunikasi

Seperti pada penjelasan definisinya, DevOps menghadirkan pendekatan kolaboratif untuk proses pengembangan, pengujian, dan produksi perangkat lunak.

Hal ini berarti adanya tujuan bersama dalam sebuah tim dilakukan secara efisien dan komunikatif.

Kolaborasi dan komunikasi antar persona dalam urusan teknis hingga manajemen internal amat diperlukan dalam DevOps karena kepentingan efektivitas pengembangan.

2. Pemahaman alat

Seorang insinyur DevOps juga diwajibkan mengetahui dan memahami cara menggunakan beberapa alat dalam pengembangan hingga pengiriman perangkat lunak seperti version control, continuous integration servers, configuration management, deployment automation, containers, infrastructure orchestration, monitoring and analytics, Testing and Cloud Quality tools, dan Network protocols.

3. Keterampilan pemrograman khusus dan coding

Hampir semua pendekatan pengembangan memerlukan keterampilan pemrograman.

Begitu pula bagi DevOps yang diwajibkan menguasai hal ini untuk mempertahankan serangkaian tanggung jawab pengodean unik pada tiap perangkat lunak atau aplikasi yang dikembangkan.

Keterampilan ini meliputi Java, JavaScript, Ruby, Python, PHP, Bash, dan lain sebagainya.

4. Sinkronisasi dengan tim Quality Assurance (QA)

Insinyur DevOps harus melakukan sinkronisasi dengan tim QA. Semau aktivitas pengujian, termasuk otomatis dan manual harus diketahui dan terlihat oleh teknisi DevOps untuk memastikan organisasi memenuhi tujuan dan tanggal rilis hingga hasil.

Insinyur DevOps harus memahami kegiatan pengujian, mengetahui riwayat pengujian dalam siklus CI/CD (Continuous integration/Continuous delivery), dan memahami kerangka kerja yang dipimpin oleh Tim QA.

5. Ketangkasan Jari

Kemampuan membuat koordinasi gerakan jari dari satu atau kedua tangan dengan tepat, yang akan digunakan untuk menggenggam, menggerakkan, atau memasang objek yang sangat kecil.

6. Kelancaran Ide

Kemampuan menghasilkan banyak ide untuk satu topik (total ide adalah yang terpenting, bukan kualitas, kebenaran, maupun kreativitas).

7. Penyusunan Informasi

Kemampuan untuk mengatur berbagai hal maupun tindakan dalam urutan atau pola tertentu sesuai dengan aturan yang ditetapkan (contoh: pola angka, huruf, kata, gambar, operasi matematika).

8. Security Skills

Seperti halnya banyak bidang keahlian lainnya, keamanan merupakan hal terpenting, terutama dalam dunia coding.

Cara mudah bagi peretas untuk masuk ke sistem dengan merusak sistem yang ada untuk sampai ke data. DevOps menghadirkan siklus pengembangan dan penyebaran kode yang lebih cepat, yang berarti bahwa kerentanan berisiko lebih tinggi, untuk diperkenalkan ke kode yang jauh lebih cepat dari sebelumnya.

Oleh karena itu, seorang developer operations harus memiliki keterampilan untuk menulis security code untuk melindungi aplikasi dari para hacker, selain memastikan sistem memiliki mekanisme pertahanan terhadap kerentanan siber.

Seorang DevOps kamu harus memiliki security skills karena sangat penting untuk membangun perangkat lunak yang aman sejak awal.

Jika keamanan tidak ada sejak awal maka akan lebih banyak peluang bagi para peretas untuk menulis kode yang merusak jaringan. Maka dari itu, pastikan developer operations mengutamakan keamanan pada aplikasi yang dikembangkan.

9. Scripting Skills

Seorang DevOps harus memiliki keterampilan berkualitas tinggi dalam kode skrip, seperti JavaScript, Python, Perl, atau Ruby.

DevOps yang andal harus dapat menulis kode. Mulai dari menulis kode manual hingga mengganti proses manual seperti menetapkan alamat IP atau kode DNS, harus ada seseorang dengan kemampuan untuk menuliskannya.

10. Flexibility

Coding adalah proses yang sedang berlangsung, selalu berubah dan perlu diperbarui. Untuk menjadi DevOps yang andal dan sukses, Anda harus memiliki kemampuan untuk terus mengembangkan dan mengintegrasikan sistem serta operasi baru ke dalam kode.

Anda harus memiliki keterampilan kerja yang fleksibel dan beradaptasi dengan kode yang berubah dan teknologi yang terus berkembang.

Anda harus bisa bergerak dari satu bidang konstruksi perangkat lunak ke bidang lain, baik itu integrasi, pengujian, rilis atau penyebaran.

Membutuhkan keterampilan teknis untuk mengelola perubahan dengan cepat dan efisien, serta mampu bekerja secara kolaboratif dalam tim untuk menjamin semua bekerja menuju tujuan yang sama.

Cara Menjadi Devops

1. Kuliah Jurusan IT

Untuk menjadi seorang devOps, sekarang sudah banyak juga jurusan-jurusan berbasis IT yang diselenggarakan di berbagai perguruan tinggi.

Untuk Anda yang ingin menggeluti profesi ini, berikut beberapa jurusan yang berhubungan dengan komputer atau IT yang bisa Anda tekuni:

  1. Teknik Informatika
  2. Rekayasa Perangkat Lunak (RPL)
  3. Ilmu Komputer
  4. Manajemen Informatika

2. Ikuti Training / Pelatihan

Dengan menggunakan teori dan praktik langsung, Anda akan dapat mengetahui, mengeksplorasi, dan memahami tentang mengembangkan sistem otomatisasi dan server.

Jenjang Karir Devops

1. Devops Engineer Junior

Merupakan karir pembuka,beberapa peran yang ditawarkan dalam jenjang karier junior ini adalah Devops Architect, Automation Engineer dan Software Tester.

2. Devops Engineer Senior

Memiliki tanggung jawab yang lebih spesifik dan menangani banyak hal beresiko sehingga di tempatkan pada Security Engineer, Integration Specialist, dan Release Manager.

Yang Harus Kalian Ketahui Devops

Sebelum menjadi devOps, Anda perlu mengetahui beberapa hal di bawah ini:

  • Walaupun memiliki tanggung jawab cukup banyak, Anda tidak harus menunggu hingga punya karier di level manajemen tingkat atas untuk bekerja di posisi DevOps.

  • Dikarenakan profesi ini terbilang baru, ada beragam kesempatan yang bisa muncul saat menempuh karier di bidang DevOps.

  • Dilansir dari Republika, Devops memungkinkan organisasi TI untuk memberikan nilai bisnis yang lebih besar dengan meningkatkan kemampuan merancang, mengembangkan, menyebarkan, dan mengoperasikan perangkat lunak dan layanan yang andal dengan lebih cepat.

Profesi Lainnya

system analyst

System Analyst

System analyst merupakan profesi di bidang teknologi informasi yang fokus pada aktivitas penelitian, perencanaan, pengkoordinasian, juga pemilihan perangkat lunak dan sistem untuk mengakomodasi kebutuhan institusi.  Posisi

Read More »
konsultan it

Konsultan IT

Pada umumnya, orang-orang mengetahui pekerjaan sebagai konsultan IT tidak jauh dari yang namanya komputer, software maupun jaringan. Keberadaan seorang konsultan IT di Indonesia juga tidak

Read More »
profesi jaksa

Jaksa

Profesi Jaksa berdasarkan Undang-Undang Republik Indonesia Nomor 16 Tahun 2004 tentang Kejaksaan Republik Indonesia adalah Pejabat Fungsional yang diberi wewenang oleh undang undang untuk bertindak

Read More »
profesi seo specialist

SEO Specialist

SEO specialist menganalisa dan memahami struktur sebuah situs, dan berbagai kata kunci (keywords) terkait dan melakukan optimisasi dengan teknik-teknik khusus agar situs bagaimana mendapatkan posisi

Read More »
profesi wartawan

Wartawan

Wartawan itu bahasa Indonesia, dari kara warta (berita) dan wan (orang), sebagaimana istilah hartawan, dermawan, fisikawan, atau relawan. Berdasarkan UU No. 40 Tahun 1999: Wartawan adalah orang yang teratur

Read More »
jobdesk general affair

General Affair

General Affair (GA) merupakan posisi dalam suatu perusahaan yang umumnya berada di bawah pimpinan kepala operasional, terkadang pada beberapa perusahaan GA berada dibawah Departemen Personalia (HR).

Read More »