46 Pertanyaan dan Jawaban Wawancara DevOps yang Sering Diajukan [2023]

Diterbitkan: 2023-01-12

Ingin tahu pertanyaan apa yang harus diajukan selama wawancara DevOps Anda berikutnya? Mulailah dengan panduan praktis kami.

Istilah DevOps diciptakan pada 2007-2008 tetapi sekarang telah menjadi salah satu karir paling populer di bidang rekayasa perangkat lunak. DevOps adalah perubahan budaya yang menyentuh setiap aspek pengembangan dan pengoperasian.

Kedua tim (pengembangan dan operasi) bekerja sama mulai dari perencanaan dan pembangunan hingga pemantauan dan iterasi. Ini adalah pertanyaan paling umum yang mungkin Anda temui jika Anda mencari peran insinyur DevOps.

Apa itu DevOps

Apa itu DevOps?

DevOps adalah bentuk singkat dari pengembangan dan operasi. Praktik rekayasa perangkat lunak ini menyatukan tim pengembangan dan operasi untuk mengotomatiskan setiap tahap proyek. Tim DevOps berfokus pada manajemen Sumber Daya, komunikasi, dan kerja tim.

Apa saja fase berbeda dalam metodologi DevOps

  • Pengembangan berkelanjutan. Ini adalah tahap perencanaan dan pengkodean.
  • Integrasi berkelanjutan. Ini adalah fase di mana tim pengembangan mengintegrasikan berbagai komponen dan memastikan kode tidak rusak.
  • Pengujian berkelanjutan. Ini adalah fase pengujian terjadwal dan otomatis.
  • Penyebaran berkelanjutan. Fase ini memastikan pengembangan tanpa kerumitan, yang tidak memengaruhi kinerja seluruh aplikasi.
  • Pemantauan berkelanjutan. Fase ini memastikan kemanjuran aplikasi secara keseluruhan.
  • Umpan balik terus menerus. Masalah dan kinerja, seperti yang dilaporkan oleh pengguna akhir, dianalisis.
  • Operasi berkelanjutan. Memungkinkan pengembang membuat versi produk yang lebih baik dan mendeteksi masalah dengan cepat.

Apa manfaat DevOps?

  • Pengiriman produk lebih cepat dan lebih baik
  • Skalabilitas yang lebih besar
  • Resolusi masalah cepat
  • Pemanfaatan sumber daya yang lebih baik

Sebutkan beberapa alat DevOps

  • Alat Integrasi Berkelanjutan seperti Jenkins
  • Kontrol Versi seperti Git
  • Bangun Alat seperti Maven
  • Alat Manajemen Konfigurasi seperti Chef
  • Platform Kontainer seperti Docker

Sebutkan beberapa KPI DevOps

  • Frekuensi penyebaran
  • Ubah volume
  • Waktu penerapan
  • Tingkat penerapan yang gagal
  • Deteksi waktu
  • Tingkat lolosnya cacat

Perbedaan antara DevOps dan gesit

DevOps adalah budaya yang memupuk kolaborasi di antara semua anggota tim yang terlibat dalam pengembangan dan pemeliharaan perangkat lunak.

Agile adalah metodologi pengembangan yang dirancang untuk membuat tim produktif dan mendorong rilis berdasarkan perubahan kebutuhan.

Apa Peran AWS di DevOps

AWS memiliki serangkaian layanan fleksibel yang membantu perusahaan mengembangkan aplikasi dengan andal dan cepat. Layanan AWS menyederhanakan penerapan kode, penyediaan & penyederhanaan infrastruktur, mengotomatiskan proses rilis perangkat lunak, dan memantau kinerja infrastruktur.

Apa gunanya SSH?

SSH (Secure Shell) adalah protokol yang memungkinkan koneksi aman antara komputer yang berbeda. SSH melayani tujuan yang berbeda, seperti menawarkan; otentikasi yang kuat, enkripsi yang kuat, menjaga integritas koneksi, koneksi yang kuat dan keamanan.

Apa itu integrasi berkelanjutan?

Integrasi berkelanjutan memungkinkan pengembang perangkat lunak untuk menggabungkan kode mereka ke dalam repositori pusat. Kode tersebut kemudian diambil melalui pembuatan dan pengujian otomatis.

Apa itu manajemen konfigurasi?

Ini adalah proses rekayasa sistem untuk membangun dan memelihara konsistensi kinerja sistem/produk dan atribut fungsional dan fisik sepanjang siklus hidupnya.

Apa itu pengujian berkelanjutan?

Ini adalah pengujian aplikasi terjadwal dan otomatis saat pengembangan berlangsung.

Apa itu Git?

Ini adalah alat sumber terbuka dan gratis untuk manajemen kode sumber. Alat ini dirancang untuk menangani proyek kecil dan besar.

Sebutkan beberapa perintah dasar Git

  • klon Git
 git clone <https://name-of-the-repository-link>
  • cabang Git
 git branch <branch-name>
  • Git checkout
 git checkout <name-of-your-branch>
  • Git tambahkan
 git add <file>
  • Git komit
 git commit -m "commit message"
  • Dorong Git
 git push <remote> <branch-name>
  • Git tarik
 git pull <remote>

Jelaskan perbedaan antara Git merge dan Git rebase

Perintah penggabungan Git memungkinkan pengembang untuk menggabungkan cabang Git yang berbeda sementara log komit dari masing-masing cabang tetap utuh.

Perintah Git rebase memungkinkan pengembang untuk mengintegrasikan perubahan dari satu cabang ke cabang lainnya, dan log diubah setelah proses selesai.

Jelaskan perbedaan antara Git fetch dan Git pull

Git fetch memberi tahu git untuk mengambil/memeriksa metadata terbaru dari aslinya. Namun, itu tidak melakukan transfer file apa pun tetapi hanya memeriksa.

Git pull memeriksa dan membawa perubahan dari repositori jarak jauh ke proyek lokal.

Apa itu konflik gabungan?

Konflik penggabungan terjadi saat Anda menggabungkan dua cabang dengan komit yang bersaing. Konflik penggabungan biasanya terjadi ketika pengembang yang berbeda mengubah baris kode atau file yang sama.

Apa itu kontrol versi, dan Apa saja jenisnya?

Kontrol versi (kontrol sumber) adalah proses pelacakan dan pengelolaan perubahan kode perangkat lunak.

Ini adalah berbagai jenis kontrol versi;

  • Terpusat – memiliki satu salinan kode sumber “pusat” di server dan semua perubahan dilakukan pada salinan 'pusat'. Subversion (SVN) dan Perforce adalah contoh kontrol versi terpusat.
  • Didistribusikan (DVCS) - tidak memiliki server pusat untuk menyimpan semua file proyek. Git dan Mercurial adalah contoh DVCS.

Apa manfaat menggunakan kontrol versi?

  • Membantu pengembang mempertahankan efisiensi dan ketangkasan
  • Memberikan log lengkap dari setiap perubahan pada proyek/file
  • Meningkatkan ketertelusuran
  • Membantu dalam mengelola penggabungan dan percabangan
  • Memungkinkan kolaborasi

Apa itu bercabang?

Percabangan mengacu pada pembuatan versi terpisah/baru dari repositori utama. Cabang memungkinkan Anda mengerjakan berbagai bagian proyek tanpa memengaruhi cabang utama.

Apa itu strategi Percabangan?

Strategi penggabungan adalah metodologi yang diadopsi oleh tim pengembangan perangkat lunak saat menulis, menggabungkan, dan menerapkan kode. Pendekatan semacam itu memastikan bahwa bug dan kesalahan diperbaiki pada tahap cabang sebelum digabungkan dengan proyek utama.

Apa itu pengujian otomasi, dan bagaimana cara mengotomatiskan pengujian di DevOps?

Pengujian otomasi adalah teknik meninjau dan memvalidasi kode secara otomatis. Pengujian otomasi dilakukan untuk memeriksa apakah standar kualitas untuk fungsionalitas (logika bisnis), gaya kode, dan pengalaman pengguna telah terpenuhi.

Pengujian otomasi dilakukan dengan menggunakan alat seperti Selenium dan Katalon.

Apa itu Jenkinsfile?

Jenkinsfile adalah file teks yang berisi definisi pipa Jenkins. Jenkinsfile diperiksa ke dalam repositori kontrol sumber. Beberapa kegunaannya adalah; itu memungkinkan jejak audit untuk pipa, memungkinkan tinjauan kode dan iterasi pada pipa, dan memberikan satu sumber kebenaran dalam pipa.

Jelaskan arsitektur di Jenkins

Jenkins memiliki arsitektur master-slave. Artinya ada banyak 'budak' yang bekerja untuk satu 'tuan'. Dengan demikian, Build Terdistribusi Jenkins dapat menjalankan pengujian identik pada lingkungan yang berbeda, dengan hasil yang dikumpulkan dan digabungkan pada node master untuk pemantauan.

Apa plugin Jenkins teratas?

  • Plugin Blue Ocean untuk Jenkins
  • Plugin Mailer untuk Jenkins
  • Plugin Git untuk Jenkins
  • Plugin Jira untuk Jenkins
  • Plugin Docker untuk Jenkins
  • Plugin Integrasi Maven untuk Jenkins
  • Plugin Kubernetes untuk Jenkins
  • Plugin SonarQube untuk Jenkins
  • Plugin Amazon EC2 untuk Jenkins

Apa itu Selenium IDE?

Selenium IDE adalah alat yang merekam interaksi browser untuk kasus uji. Anda dapat menyetel breakpoint dan memeriksa serta menjeda variabel saat terjadi kesalahan dengan Selenium Integrated Development Environment.

Apa perbedaan komponen Selenium?

  • Selenium IDE
  • Selenium RC
  • Pengandar Web Selenium
  • Kotak Selenium

Apa sajakah jenis pengujian di Selenium?

  • Pengujian ujung ke ujung
  • Pengujian regresi
  • Pengujian sistem
  • Pengujian kinerja
  • Pengujian kompatibilitas

Apa pengecualian berbeda di Selenium?

  • ElementNotSelectableException
  • NoAlertPresentException
  • InvalidSelectorException
  • NoSuchSessionException
  • BasiElementReferenceException
  • NoSuchWindowException
  • NoSuchFrameException
  • NoSuchElementException
  • TimeoutException
  • ElementNotVisibleException

Apa itu driver.close() dan driver.quit() di WebDriver?

Perintah driver.close() menutup jendela browser pada fokus. Jika hanya satu browser yang terbuka, itu akan menutup seluruh sesi browser.

Perintah driver.quit() menutup seluruh sesi browser dengan pop-up, tab, dan jendela browser.

Apa itu Dockerfile?

Dockerfile adalah dokumen teks dengan semua perintah yang dapat digunakan pengguna pada baris perintah untuk menyusun gambar.

Perbedaan antara docker image dan docker container

Gambar Docker adalah template hanya-baca yang dibuat dengan kode sumber, alat, pustaka, dependensi eksternal, dan file lain yang diperlukan agar aplikasi apa pun dapat berjalan dengan sukses di sistem operasi atau platform apa pun.

Kontainer buruh pelabuhan adalah kotak yang menjalankan templat gambar buruh pelabuhan.

Jelaskan arsitektur Docker

Docker mengikuti arsitektur Client-Server dan terdiri dari Docker Client, Docker Host, dan Docker Registry.

Docker Client menggunakan REST API dan perintah untuk berkomunikasi dengan Server (Docker Daemon).

Klien Docker menggunakan CLI untuk menjalankan perintah ini

 docker build docker pull docker run
  • Docker Host menyediakan lingkungan untuk mengeksekusi dan menjalankan aplikasi. Terdiri dari daemon buruh pelabuhan, penyimpanan, gambar, wadah, dan jaringan.
  • Docker Registry mengelola dan menyimpan image Docker.

Platform cloud yang mendukung buruh pelabuhan

Platform yang mendukung hosting buruh pelabuhan adalah;

  • Kamatera
  • Google Cloud Run
  • Hosting A2
  • StackPath
  • Ceroboh.io
  • ECS Amazon
  • Microsoft Azure
  • HostPresto
  • Vultr

Apa itu Nagios?

Nagios adalah alat yang memantau seluruh infrastruktur TI untuk memastikan bahwa proses bisnis, sistem, layanan, dan aplikasi berfungsi dengan baik.

Bagaimana cara kerja Nagios?

  • Pemantauan . Staf TI mengonfigurasi Nagios untuk memantau protokol jaringan, metrik sistem, aplikasi, infrastruktur jaringan, layanan, dan server.
  • Memperingatkan . Nagios mengirimkan peringatan ketika komponen penting gagal. Lansiran dapat melalui SMS, kode khusus, atau email.
  • Tanggapan . Tim TI mengakui peringatan dan tindakan.
  • Laporan . Laporan yang memberikan catatan riwayat pemberitahuan, pemadaman, respons peringatan, dan peristiwa untuk peninjauan selanjutnya akan dibuat.
  • Pemeliharaan . Waktu henti terjadwal mencegah pengiriman peringatan selama pemeliharaan.

Sebutkan beberapa Plugin di Nagios

  • Plugin resmi Nagios - dikembangkan dan dikelola oleh tim resmi
  • Plugin khusus -ditulis oleh individu/bisnis untuk memenuhi kebutuhan individu
  • Plugin komunitas -dikembangkan oleh anggota komunitas Nagios

Jelaskan virtualisasi dengan Nagios

Nagios menawarkan kemampuan untuk memantau berbagai metrik pada berbagai platform virtualisasi. Nagios dapat dijalankan dari berbagai platform virtualisasi seperti Xen, Amazon EC2, VMware, dan Microsoft Virtual PC.

Bagaimana Nagios membantu pemantauan?

Nagios menggunakan agen seperti NRPE, check_mk atau SNMP untuk mengumpulkan statistik di server Anda dan mengirimkan peringatan jika metrik berada di atas ambang batas yang telah ditentukan.

Nomor port apa yang digunakan Nagios untuk tujuan pemantauan?

SNMP, port 161 dan 162

Apa itu penganalisa jaringan Nagios?

Penganalisa jaringan Nagios adalah perangkat lunak analisis data sflow yang memungkinkan pengguna untuk secara proaktif menyelesaikan perilaku abnormal, pemadaman, dan ancaman keamanan sebelum mengganggu operasi bisnis. Alat tingkat komersial ini menawarkan wawasan yang luas tentang lalu lintas jaringan dan infrastruktur TI.

Variabel yang mempengaruhi pewarisan dan rekursi di Nagios

  • Nama - sebuah templat 'nama' yang dapat mewarisi variabel/properti objek.
  • Gunakan- tentukan nama objek templat tempat Anda ingin mewarisi variabel/properti.
  • Daftar menunjukkan apakah nama objek template harus 'terdaftar' dengan Nagios.

Apa itu Boneka?

Puppet adalah alat sumber terbuka untuk manajemen dan penerapan konfigurasi perangkat lunak.

Apa itu Manifes Boneka?

Manifes boneka adalah file yang berisi bahasa konfigurasi boneka yang menjelaskan bagaimana sumber daya harus dikonfigurasi.

Apa itu Kode Boneka?

Kode boneka adalah kode deklaratif, artinya Anda menggambarkannya menggunakan keadaan yang diinginkan sistem Anda dan bukan langkah-langkah yang diperlukan untuk sampai ke sana.

Apa itu Koki?

Chef adalah alat manajemen konfigurasi yang mengubah infrastruktur menjadi kode. Alat ini berfokus pada penulisan kode daripada proses manual.

Bagaimana cara kerja Koki?

Pekerjaan koki dimulai saat admin sistem atau pengembang menentukan tugas untuk diotomatisasi. Buku masak dan resep (program kecil yang ditulis dalam bahasa khusus domain) kemudian diambil dan diuji menggunakan berbagai alat seperti Test Kitchen, ChefSpec, dan Foodcritic.

Jika buku masak dan resep bekerja seperti yang diharapkan, mereka kemudian disebarkan ke server Koki menggunakan alat baris perintah pisau dan koki. Proses penerapan chef memiliki server Chef, workstation, dan node. Anda dapat memilih dari lebih dari 3000 templat buku masak dan menyesuaikannya dengan kebutuhan Anda. Koki kemudian akan mengurus sisa pekerjaan.

Ringkasan

Menurut Glassdoor, gaji rata-rata seorang insinyur DevOps adalah $104281 per tahun di AS. Meskipun DevOps adalah karir baru, kami sekarang dapat melihat lebih banyak perusahaan yang merekrut untuk peran ini dan menerbitkan berbagai kursus untuk membekali para profesional dengan keterampilan penting. Di atas adalah beberapa pertanyaan yang mungkin akan Anda temui dalam wawancara DevOps.

Anda juga dapat menjelajahi beberapa kursus online yang bagus untuk mempelajari DevOps.