Lewati ke konten utama

29 Pertanyaan Wawancara Data Scientist Teratas untuk Semua Tingkat

Jelajahi pertanyaan wawancara data science teratas beserta jawabannya untuk mahasiswa tingkat akhir dan profesional yang mencari pekerjaan.
Diperbarui 28 Sep 2026  · 15 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Header Wawancara Data Science.png

Dalam panduan ini, saya merangkum pertanyaan wawancara data scientist yang paling sering ditanyakan, mencakup statistika, machine learning, coding (Python, SQL), dan product sense. Berlatih pertanyaan-pertanyaan ini akan membantu Anda lolos semua tahap wawancara teknis—baik Anda mahasiswa yang mencari magang maupun profesional yang membidik peran berikutnya.

TL;DR

  • Wawancara data scientist menguji lima area: statistika & probabilitas, machine learning, coding (Python/SQL), perilaku, dan product sense.
  • Topik teknis kunci: asumsi regresi linear, pencegahan overfitting, metode pemilihan fitur (filter, wrapper, embedded), reduksi dimensi, dan A/B testing.
  • Untuk sesi coding, latih Python (pandas, regex, manipulasi list) dan SQL (agregasi, penyaringan tanggal, window functions).
  • Siapkan jawaban metode STAR untuk pertanyaan perilaku tentang komunikasi, penyelesaian konflik, dan menangani ambiguitas.
  • Perusahaan Big Tech (Meta, Google, Amazon) menguji analisis metrik, product sense, dan statistika terapan selain keterampilan teknis inti.
  • Gunakan panduan Persiapan Wawancara Data Science kami untuk menyusun rencana belajar di semua tahap.

Pertanyaan Wawancara Data Science Non-Teknis

Kita mulai dengan melihat beberapa pertanyaan kompetensi umum yang mungkin Anda hadapi dalam wawancara. Ini menguji soft skill yang Anda butuhkan sebagai data scientist:

Ceritakan saat Anda harus menjelaskan konsep data yang kompleks kepada seseorang tanpa latar belakang teknis. Bagaimana Anda memastikan mereka memahami?

Pertanyaan ini menilai kemampuan komunikasi dan penyederhanaan topik kompleks. Berikut contoh jawaban:

Di peran sebelumnya, saya harus menjelaskan konsep machine learning kepada tim marketing. Saya menggunakan analogi mengajari anak mengenali berbagai jenis buah. Seperti menunjukkan banyak contoh kepada anak agar belajar, model machine learning dilatih dengan data. Analogi ini membantu membuat konsep kompleks menjadi lebih mudah terkait dan dipahami.

Deskripsikan proyek ketika Anda harus bekerja dengan rekan tim yang sulit. Bagaimana Anda menangani situasinya?

Ini mengeksplorasi kemampuan kolaborasi tim dan penyelesaian konflik. Anda bisa menjawab seperti:

Pada satu proyek, saya bekerja dengan kolega yang gaya kerjanya sangat berbeda. Untuk menyelesaikan perbedaan, saya menjadwalkan pertemuan untuk memahami perspektifnya. Kami menemukan titik temu pada tujuan proyek dan menyepakati pendekatan bersama. Pengalaman ini mengajarkan nilai komunikasi terbuka dan empati dalam kerja tim.

Bisakah Anda berbagi contoh saat Anda harus bekerja dengan tenggat waktu yang ketat? Bagaimana Anda mengelola tugas dan tetap tepat waktu?

Pertanyaan ini tentang manajemen waktu dan prioritas. Berikut contoh jawaban:

Pernah, saya harus menyerahkan analisis dengan tenggat yang sangat ketat. Saya memprioritaskan bagian paling krusial, mengomunikasikan rencana kepada tim, dan fokus pada eksekusi efisien. Dengan memecah tugas dan menetapkan tenggat kecil, saya menyelesaikan proyek tepat waktu tanpa mengorbankan kualitas.

Pernahkah Anda membuat kesalahan signifikan dalam analisis? Bagaimana Anda menanganinya dan apa pelajaran yang didapat?

Di sini, pewawancara melihat kemampuan Anda mengakui kesalahan dan belajar darinya. Anda bisa menjawab:

Pernah, saya salah menafsirkan hasil model data. Saat menyadari kesalahan, saya segera memberi tahu tim dan menganalisis ulang data. Pengalaman ini mengajarkan pentingnya memeriksa ulang hasil dan nilai transparansi di tempat kerja.

Bagaimana Anda tetap mengikuti tren dan kemajuan terbaru di data science?

Ini menunjukkan komitmen Anda pada pembelajaran berkelanjutan dan relevansi di bidang Anda. Contoh jawaban:

Saya mengikuti pembaruan dengan membaca jurnal industri, menghadiri webinar, dan berpartisipasi di forum online. Saya juga menyisihkan waktu mingguan untuk bereksperimen dengan alat dan teknik baru. Ini tidak hanya membantu saya tetap up-to-date tetapi juga terus meningkatkan keterampilan.

Ceritakan saat Anda harus mengerjakan proyek dengan kebutuhan yang tidak jelas atau sering berubah. Bagaimana Anda beradaptasi?

Pertanyaan ini menilai adaptabilitas dan kemampuan pemecahan masalah. Sebagai contoh, Anda bisa berkata:

Di proyek sebelumnya, kebutuhan sering berubah. Saya beradaptasi dengan menjaga komunikasi terbuka dengan para pemangku kepentingan untuk memahami kebutuhan mereka. Saya juga menggunakan metodologi agile agar lebih fleksibel, yang membantu mengakomodasi perubahan secara efektif.

Deskripsikan situasi ketika Anda harus menyeimbangkan pengambilan keputusan berbasis data dengan pertimbangan lain (seperti etika, kebutuhan bisnis, dll.).

Ini mengevaluasi kemampuan Anda mempertimbangkan aspek di luar data semata. Contoh jawaban:

Di peran terakhir, saya harus menyeimbangkan kebutuhan keputusan berbasis data dengan pertimbangan etika. Saya memastikan semua penggunaan data mematuhi standar etika dan hukum privasi, serta menyajikan alternatif bila perlu. Pendekatan ini membantu mengambil keputusan yang terinformasi sambil menghormati batas etika.

Pertanyaan Wawancara Data Science Umum

Apa asumsi yang diperlukan untuk Regresi Linear?

Empat asumsi dalam regresi linear adalah:

  1. Hubungan Linear: harus ada hubungan linear antara variabel independen x dan variabel dependen y.
  2. Independensi: tidak ada korelasi antara residual berurutan. Ini paling sering terjadi pada data runtun waktu.
  3. Homoskedastisitas: pada setiap level x, varians harus konstan.
  4. Normalitas: residual berdistribusi normal.

Regresi Linear.png

Gambar dari Statology

Anda dapat mempelajari konsep dan penerapan model linear dengan mengikuti kursus Introduction to Linear Modeling in Python.

Bagaimana Anda menangani dataset yang kehilangan banyak nilai?

Ada berbagai cara menangani data hilang. Anda bisa:

  1. Menghapus baris dengan nilai hilang.
  2. Menghapus kolom dengan banyak nilai hilang.
  3. Mengisi nilai hilang dengan string atau konstanta numerik.
  4. Mengganti nilai hilang dengan nilai rata-rata atau median kolom.
  5. Menggunakan analisis regresi berganda untuk mengestimasi nilai hilang.
  6. Menggunakan beberapa kolom untuk mengganti nilai hilang dengan nilai rata-rata tersimulasi dan galat acak.

Pelajari cara mendiagnosis, memvisualisasikan, dan menangani data hilang dengan menyelesaikan kursus Handling Missing Data with Imputations in R.

Bagaimana Anda menjelaskan aspek teknis hasil Anda kepada pemangku kepentingan yang tidak memiliki latar belakang teknis?

Pertama, Anda perlu mempelajari latar belakang pemangku kepentingan dan gunakan informasi ini untuk menyesuaikan bahasa Anda. Jika ia berlatar belakang keuangan, pelajari istilah umum di keuangan dan gunakan untuk menjelaskan metodologi kompleks.

Kedua, gunakan banyak visual dan grafik. Orang belajar secara visual, karena mereka belajar jauh lebih baik dengan alat komunikasi kreatif.

jelaskan aspek teknis.png

Gambar oleh Penulis

Ketiga, bicaralah dalam kerangka hasil. Jangan mencoba menjelaskan metodologi atau statistiknya. Fokuslah pada bagaimana mereka dapat menggunakan informasi dari analisis untuk meningkatkan bisnis atau alur kerja.

Terakhir, dorong mereka untuk bertanya. Orang sering takut atau malu bertanya tentang topik yang tidak mereka kenal. Ciptakan saluran komunikasi dua arah dengan melibatkan mereka dalam diskusi.

Pelajari cara membangun laporan dan dasbor SQL Anda sendiri dengan mengikuti kursus Reporting in SQL.

Apa itu p-value, dan bagaimana Anda menafsirkannya?

P-value mengukur probabilitas mengamati hasil setidaknya se-ekstrem data yang dikumpulkan, dengan asumsi hipotesis nol benar.

P-value di bawah tingkat signifikansi Anda (biasanya 0,05) memberi bukti untuk menolak hipotesis nol. Misalnya, dalam A/B test dengan p-value 0,03, hanya ada peluang 3% melihat hasil ini di bawah hipotesis nol, yang menyiratkan varian memiliki efek nyata.

Salah kaprah umum: p-value tidak mengukur probabilitas bahwa hipotesis nol itu benar, melainkan seberapa kompatibel data dengan hipotesis tersebut.

Apa perbedaan antara galat Tipe I dan Tipe II?

Ini adalah dua jenis kesalahan dalam pengujian hipotesis:

  • Galat Tipe I (false positive): Menolak hipotesis nol padahal sebenarnya benar. Dikendalikan oleh tingkat signifikansi (α). Contoh: menyimpulkan model baru lebih baik padahal tidak.
  • Galat Tipe II (false negative): Gagal menolak hipotesis nol padahal salah. Dikendalikan oleh power statistik (1 − β). Contoh: menyimpulkan tidak ada peningkatan model padahal ada.

Menurunkan α mengurangi galat Tipe I namun meningkatkan galat Tipe II. Pertukaran yang tepat bergantung pada biaya tiap kesalahan dalam kasus penggunaan spesifik Anda—kritis dalam deteksi penipuan, diagnosis medis, atau keputusan A/B testing.

Pelajari lebih lanjut di tutorial Hypothesis Testing Made Easy kami.

Pertanyaan Wawancara Teknis Data Science

Apa metode pemilihan fitur yang digunakan untuk memilih variabel yang tepat?

Ada tiga metode utama untuk pemilihan fitur: metode filter, wrapper, dan embedded.

Metode Filter

Metode filter umumnya digunakan pada langkah prapemrosesan. Metode ini memilih fitur dari dataset secara independen dari algoritma machine learning. Mereka cepat, membutuhkan sumber daya lebih sedikit, dan menghapus fitur yang duplikat, berkorelasi, serta redundan.

Metode Filter.png

Gambar oleh Penulis

Beberapa teknik yang digunakan:

  • Ambang Varians (Variance Threshold)
  • Koefisien Korelasi
  • Uji Chi-Square
  • Ketergantungan Mutual

Metode Wrapper

Pada metode wrapper, kita melatih model secara iteratif menggunakan subset fitur. Berdasarkan hasil model, lebih banyak fitur ditambah atau dihapus. Mereka lebih mahal secara komputasi dibanding metode filter tetapi memberikan akurasi model yang lebih baik.

Metode Wrapper.png

Gambar oleh Penulis

Beberapa teknik yang digunakan:

  • Forward selection
  • Backward elimination
  • Bi-directional elimination
  • Recursive elimination

Metode Embedded

Metode embedded menggabungkan kualitas metode filter dan wrapper. Algoritma pemilihan fitur dipadukan sebagai bagian dari algoritma pembelajaran, memberikan model metode pemilihan fitur bawaan. Metode ini lebih cepat seperti filter, akurat seperti wrapper, dan mempertimbangkan kombinasi fitur juga.

Metode Embedded.png

Gambar oleh Penulis

Beberapa teknik yang digunakan:

  • Regularisasi
  • Metode berbasis pohon

Pelajari teknik pemilihan fitur yang paling sering diuji dalam Python Feature Selection Tutorial kami.

Bagaimana Anda dapat menghindari overfitting pada model?

Overfitting mengacu pada model yang terlalu terlatih pada dataset pelatihan tetapi gagal pada dataset uji dan validasi.

Anda dapat menghindari overfitting dengan:

  1. Menjaga model tetap sederhana dengan menurunkan kompleksitas model, mempertimbangkan lebih sedikit variabel, dan mengurangi jumlah parameter pada neural network.
  2. Menggunakan teknik cross-validation.
  3. Melatih model dengan lebih banyak data.
  4. Menggunakan augmentasi data yang menambah jumlah sampel.
  5. Menggunakan ensembling (Bagging dan Boosting)
  6. Menggunakan teknik regularisasi untuk memberi penalti pada parameter model tertentu jika berpotensi menyebabkan overfitting.

Untuk panduan lebih mendalam mencegah overfitting, baca What is Overfitting? dan tutorial kami tentang Regularization in Machine Learning.

Sebutkan jenis-jenis hubungan dalam SQL

Ada empat jenis hubungan SQL utama:

  • One to One: ada ketika setiap record pada satu tabel terkait dengan hanya satu record pada tabel lain.
  • One to Many dan Many to One: ini adalah koneksi paling umum, di mana setiap record pada satu tabel ditautkan ke beberapa record pada tabel lain.
  • Many to Many: ada ketika setiap record pada tabel pertama terkait dengan lebih dari satu record pada tabel kedua, dan satu record pada tabel kedua dapat terkait dengan lebih dari satu record pada tabel pertama.
  • Self-Referencing Relationships: terjadi ketika sebuah tabel harus menyatakan koneksi dengan dirinya sendiri.

Pelajari cara mengeksplorasi tabel, hubungan antar tabel, dan data yang tersimpan di dalamnya dengan menyelesaikan kursus Exploratory Data Analysis in SQL kami.

Apa itu reduksi dimensi dan apa manfaatnya?

Reduksi dimensi adalah proses mengonversi dataset dari beberapa dimensi menjadi lebih sedikit dimensi sambil mempertahankan informasi yang serupa.

reduksi dimensi.png

Gambar oleh Penulis | Grafik oleh howecoresearch

Manfaat reduksi dimensi:

  1. Mengompresi data dan mengurangi ruang penyimpanan.
  2. Mengurangi waktu komputasi dan memungkinkan pemrosesan data yang lebih cepat.
  3. Menghapus fitur redundan, jika ada.

Pahami konsep reduksi dimensi dan kuasai tekniknya dengan berlatih melalui kursus Dimensionality Reduction in Python.

Apa tujuan A/B Testing?

A/B Testing.png

Gambar oleh Penulis

A/B testing menghilangkan tebakan dan membantu kita membuat keputusan berbasis data untuk mengoptimalkan produk atau situs web. Ini juga dikenal sebagai split testing, di mana eksperimen teracak dilakukan untuk menganalisis dua atau lebih versi variabel (laman web, fitur aplikasi, dll.) dan menentukan versi mana yang mendorong trafik dan metrik bisnis maksimal.

Pelajari cara membuat, menjalankan, dan menganalisis A/B test dengan mengikuti kursus Customer Analytics and A/B Testing in Python.

Pertanyaan Wawancara Coding Data Science

Diberi sebuah kamus yang berisi banyak akar kata dan sebuah kalimat, stem semua kata dalam kalimat dengan akar yang membentuknya.

Stemming umum digunakan dalam analisis teks dan sentimen. Dalam pertanyaan ini, Anda akan menulis fungsi Python yang akan mengonversi kata-kata tertentu dari daftar menjadi bentuk akarnya - Interview Query.

Input:

Fungsi akan menerima dua argumen: daftar kata akar dan kalimat.

roots = ["cat", "bat", "rat"]
sentence = "the cattle was rattled by the battery"

Output:

Fungsi akan mengembalikan kalimat dengan kata-kata akar.

"the cat was rat by the bat"

Sebelum menulis kode, pahami bahwa kita akan melakukan dua tugas: mengecek apakah kata punya akar dan menggantinya.

  1. Pisahkan kalimat menjadi kata-kata.
  2. Jalankan loop luar pada setiap kata dalam daftar dan loop dalam pada daftar kata akar.
  3. Periksa apakah kata dimulai dengan akar. String Python menyediakan fungsi `startswith()` untuk tugas ini.
  4. Jika kata dimulai dengan akar, ganti kata tersebut dengan akarnya menggunakan indeks list.
  5. Gabungkan semua kata untuk membentuk kalimat.
roots = ["cat", "bat", "rat"]
sentence = "the cattle was rattled by the battery"


def replace_words(roots, sentence):
    words = sentence.split(" ")

    # looping over each word
    for index, word in enumerate(words):
        # looping over each root
        for root in roots:
            # checking if words start with root
            if word.startswith(root):
                # replacing the word with its root
                words[index] = root
    return " ".join(words)


replace_words(roots, sentence)


# 'the cat was rat by the bat'

Periksa apakah String adalah Palindrome

Diberikan string text, kembalikan True jika itu palindrome, jika tidak False.

Setelah menurunkan semua huruf dan menghapus semua karakter non-alfanumerik, kata harus terbaca sama dari depan dan belakang.

String adalah Palindrome.png

Gambar oleh Penulis

Python menyediakan cara mudah untuk menyelesaikan tantangan ini. Anda bisa memperlakukan string sebagai iterable dan membaliknya menggunakan text[::-1] atau memakai metode bawaan reversed(text).

  1. Pertama, turunkan huruf pada teks.
  2. Bersihkan teks dengan menghapus karakter non-alfanumerik menggunakan regex.
  3. Balik teks menggunakan [::-1].
  4. Bandingkan teks yang dibersihkan dengan teks yang dibalik.
import re

def is_palindrome(text):
    # lowering the string
    text = text.lower()
   
    # Cleaning the string
    rx = re.compile('\W+')
    text = rx.sub('',text).strip()
   
    # Reversing and comparing the string
    return text == text[::-1]

Pada metode kedua, Anda hanya mengganti proses membalik teks dengan ''.join(reversed(text)) dan membandingkannya dengan teks yang dibersihkan.

Kedua metode sama-sama langsung.

def is_palindrome(text):
    # lowering the string
    text = text.lower()
   
    # Cleaning the string
    rx = re.compile('\W+')
    text = rx.sub('',text).strip()
   
    # Reversing the string
    rev = ''.join(reversed(text))
    return text == rev

Hasil:

Kita akan memberikan daftar kata ke fungsi is_palindrome() dan mencetak hasilnya. Seperti terlihat, bahkan dengan karakter khusus, fungsi mengidentifikasi “Level” dan “Radar” sebagai palindrome.

# Test cases
test_words = ['Anna', '**Radar****', 'Abid', '(Level)', 'Data']

for text in test_words:
    print(f"Is {text} a palindrome? {is_palindrome(text)}")


# Is Anna a palindrome? True
# Is **Radar**** a palindrome? True
# Is Abid a palindrome? False
# Is (Level) a palindrome? True
# Is Data a palindrome? False

Siapkan diri untuk wawancara coding berikutnya dengan Practicing Coding Interview Questions in Python melalui kursus interaktif kami. Untuk persiapan Python yang lebih mendalam, lihat 41 Pertanyaan & Jawaban Wawancara Python Teratas untuk 2026.

Temukan gaji tertinggi kedua

Mudah untuk menemukan nilai tertinggi dan terendah, tetapi sulit menemukan nilai tertinggi kedua atau ke-n.

Pada pertanyaan ini, Anda diberi tabel basis data yang berisi id dan base_salary. Anda akan menulis kueri SQL untuk menemukan gaji tertinggi kedua.

kueri SQL.png

Gambar oleh Penulis

Dalam kueri ini, Anda akan mencari nilai unik dan mengurutkannya dari tertinggi ke terendah. Lalu, gunakan LIMIT 1 untuk menampilkan hanya nilai tertinggi. Terakhir, offset nilainya sebesar 1 untuk menampilkan angka tertinggi kedua.

Anda juga dapat mengubah nilai OFFSET untuk mendapatkan gaji tertinggi ke-n.

SELECT DISTINCT base_salary AS "Second Highest Salary"
FROM employee
ORDER BY base_salary DESC
LIMIT 1
OFFSET 1;

Gaji pokok tertinggi kedua adalah 8.500.

gaji sql.png

Temukan email duplikat

Pada pertanyaan ini, Anda akan menulis kueri untuk menampilkan semua email yang duplikat.

Tabel basis data Email Duplikat.png

Gambar oleh Penulis

Pada kueri ini, Anda akan menampilkan kolom email dan mengelompokkan tabel berdasarkan email. Setelah itu, kita akan menggunakan klausa HAVING untuk menemukan email yang muncul lebih dari sekali.

HAVING digunakan sebagai pengganti pernyataan WHERE bersamaan dengan agregasi.

SELECT email
FROM employee_email
GROUP BY email
HAVING COUNT(email) > 1;

Hanya “matt@hotmail.com” yang muncul lebih dari sekali.

email sql.png

Tulis kode SQL yang mudah dipelihara untuk menjawab pertanyaan bisnis dengan mengikuti kursus Applying SQL to Real-World Problems.

Pertanyaan Wawancara Data Science di Big Tech

Pertanyaan Wawancara Data Science Meta

Facebook composer, alat posting, turun dari 3% posting per pengguna bulan lalu menjadi 2,5% posting per pengguna hari ini. Bagaimana Anda menyelidiki apa yang terjadi?

Facebook composer milik Abid.png

Gambar oleh Penulis

Posting dari sebulan lalu turun dari 3% menjadi 2,5% hari ini. Sebelum menyimpulkan, Anda perlu memperjelas konteks seputar masalahnya.

Anda perlu mengajukan pertanyaan:

  • Apakah hari ini hari kerja?
  • Apakah sebulan lalu dari hari ini adalah akhir pekan?
  • Apakah ada acara khusus, peristiwa, atau musiman?
  • Apakah ada tren penurunan bertahap atau kejadian satu kali?

Pada bagian kedua, Anda perlu menguraikan apa yang mendorong penurunan. Apakah jumlah pengguna meningkat, atau jumlah posting yang menurun? Setelah itu, pewawancara akan meminta Anda memulai diskusi menggunakan satu atau kedua penalaran tersebut.

Terkait distribusi waktu yang dihabiskan per hari di Facebook, seseorang bisa mengasumsikan ada dua kelompok:

  1. Orang yang menggulir feed dengan cepat tanpa menghabiskan terlalu banyak waktu.
  2. Super user yang menghabiskan banyak waktu di Facebook.

Untuk bagian kedua, Anda harus menggunakan kosakata statistik untuk menggambarkan distribusi, seperti:

  1. Pusat: mean, median, dan modus
  2. Sebaran: simpangan baku, rentang antarkuartil, dan rentang
  3. Bentuk: skewness, kurtosis, serta unimodal atau bimodal
  4. Pencilan

Diberikan dataset nilai ujian, tulis kode pandas untuk mengembalikan persentase kumulatif siswa yang menerima nilai dalam bucket <50, <75, <90, <100.

Pada pertanyaan ini, Anda akan menulis kode pandas untuk terlebih dahulu membagi skor ke dalam berbagai bucket lalu menghitung persentase siswa yang mendapat skor dalam rentang tersebut.

Input:

Dataset kita memiliki kolom user_id, grade, dan test_score.

Dataset Nilai Ujian.png

Gambar oleh Penulis

Output:

Anda akan menulis fungsi yang menggunakan kolom grade dan test_score. Dan menampilkan dataframe dengan grade, bucket skor, dan persentase kumulatif siswa yang mendapat bucket skor tersebut.

dataset grades.png

Gambar oleh Penulis

  1. Anda akan menggunakan fungsi pandas.cut() untuk mengonversi skor menjadi bucket skor menggunakan bins dan label bucket.
  2. Hitung ukuran tiap grup (grade dan test_score).
  3. Untuk menghitung persentase, kita butuh pembilang (jumlah kumulatif) dan penyebut (jumlah seluruh nilai).
  4. Mengonversi nilai pecahan menjadi persentase yang benar dengan mengalikannya 100 dan menambahkan “%”.
  5. Reset index dan ubah nama kolom menjadi "percentage".
def bucket_test_scores(df):
    bins = [0, 50, 75, 90, 100]
    labels = ["<50", "<75", "<90", "<100"]

    # converting the scores into buckets
    df["test_score"] = pd.cut(df["test_score"], bins, labels=labels, right=False)

    # Calculate size of each group, by grade and test score
    df = df.groupby(["grade", "test_score"]).size()

    # Calculate numerator and denominator for percentage
    NUM = df.groupby("grade").cumsum()
    DEN = df.groupby("grade").sum()

    # Calculate percentage, multiply by 100, and add %
    percentage = (NUM / DEN).map(lambda x: f"{int(100*x):d}%")

    # reset the index
    percentage = percentage.reset_index(name="percentage")
    return percentage


bucket_test_scores(df)

Anda mendapatkan hasil yang tepat dengan bucket skor ujian dan persentasenya.

dataset grades.png

Pelajari cara membersihkan data, menghitung statistik, dan membuat visualisasi dengan kursus Data Manipulation with pandas. Untuk pembahasan lebih dalam, lihat panduan kami 35 Pertanyaan Wawancara Machine Learning Teratas untuk 2026.

Pertanyaan Wawancara Data Science Amazon

Jelaskan confidence interval

Confidence interval adalah rentang estimasi untuk parameter yang tidak diketahui yang Anda harapkan akan berada di antara nilai tersebut dalam persentase tertentu ketika Anda menjalankan eksperimen lagi atau melakukan re-sampling populasi secara serupa.

confidence intervals.png

Gambar dari omnicalculator

Tingkat kepercayaan 95% umum digunakan dalam eksperimen statistik, dan ini adalah persentase berapa kali Anda berharap dapat mereproduksi parameter yang diestimasi. Confidence interval memiliki batas atas dan bawah yang ditetapkan oleh nilai alpha.

Anda dapat menggunakan confidence interval untuk berbagai estimasi statistik, seperti proporsi, mean populasi, perbedaan antara mean atau proporsi populasi, dan estimasi variasi antar kelompok.

Bangun fondasi statistika dengan menyelesaikan kursus Statistical Thinking in Python (Part 1).

Bagaimana Anda mengelola dataset yang tidak seimbang?

Dalam dataset yang tidak seimbang, kelas didistribusikan secara tidak merata. Misalnya, pada dataset deteksi penipuan, hanya ada 400 kasus penipuan dibanding 300.000 kasus non-penipuan. Data yang tidak seimbang akan membuat model berkinerja buruk dalam mendeteksi penipuan.

dataset tidak seimbang.png

Gambar oleh Penulis

Untuk menangani data tidak seimbang, Anda bisa menggunakan:

  1. Undersampling
  2. Oversampling
  3. Membuat data sintetis
  4. Kombinasi under dan over sampling

Undersampling

Ini melakukan resampling fitur kelas mayoritas agar setara dengan fitur kelas minoritas.

Pada dataset deteksi penipuan, kedua kelas akan sama-sama 400 sampel. Anda dapat menggunakan imblearn.under_sampling untuk melakukan resampling dengan mudah.

from imblearn.under_sampling import RandomUnderSampler
RUS = RandomUnderSampler(random_state=1)
X_US, y_US = RUS.fit_resample(X_train, y_train)

Oversampling

Ini melakukan resampling fitur kelas minoritas agar setara dengan fitur kelas mayoritas. Pengulangan atau pengulangan berbobot pada fitur kelas minoritas adalah beberapa metode umum untuk menyeimbangkan data. Singkatnya, kedua kelas akan memiliki 300K sampel.

from imblearn.over_sampling import RandomOverSampler

ROS = RandomOverSampler(random_state=0)
X_OS, y_OS = ROS.fit_resample(X_train, y_train)

Membuat data sintetis

Masalah pengulangan adalah tidak memberikan informasi tambahan, yang akan mengakibatkan kinerja model buruk. Untuk mengatasinya, kita dapat menggunakan SMOTE (Synthetic Minority Oversampling Technique) untuk membuat titik data sintetis.

from imblearn.over_sampling import SMOTE

SM = SMOTE(random_state=1)
X_OS, y_OS = SM.fit_resample(X_train, y_train)

Kombinasi under dan over sampling

Untuk meningkatkan bias dan kinerja model, Anda bisa menggunakan kombinasi over dan under-sampling. Kita akan menggunakan SMOTE untuk oversampling dan EEN (Edited Nearest Neighbours) untuk pembersihan.

imblearn.combine menyediakan berbagai fungsi yang secara otomatis melakukan kedua fungsi sampling.

from imblearn.combine import SMOTEENN

SMTN = SMOTEENN(random_state=0)
X_OUS, y_OUS = SMTN.fit_resample(X_train, y_train)

Tulis kueri untuk mengembalikan total jumlah penjualan untuk setiap produk pada bulan Maret 2022.

Sebagai data scientist, Anda akan menulis kueri serupa untuk mengekstrak data dan melakukan analisis data. Dalam tantangan ini, Anda akan menggunakan klausa WHERE dengan tanda perbandingan atau WHERE dengan klausa BETWEEN untuk melakukan penyaringan.

Tabel: orders

tabel SQL orders.png

Gambar oleh Penulis

Contoh output:

Contoh output.png

Gambar oleh Penulis

  1. Anda akan menampilkan product id dan jumlah kuantitas dari tabel orders.
  2. Saring data dari tanggal ‘2022-03-01’ hingga '2022-04-01' menggunakan WHERE dan AND. Anda juga bisa menggunakan BETWEEN untuk aksi serupa.
  3. Gunakan group by product_id untuk mendapatkan total penjualan tiap produk.
SELECT product_id,
      SUM(qty)
FROM orders
WHERE order_dt >= '2022-03-01'
  AND order_dt < '2022-04-01'
GROUP BY product_id;

Pertanyaan Wawancara Data Science Google

Jika label diketahui dalam proyek clustering, bagaimana Anda mengevaluasi kinerja model?

Dalam pembelajaran tanpa supervisi, menilai kinerja proyek clustering bisa jadi rumit. Kriteria clustering yang baik adalah kelompok-kelompok yang jelas berbeda dengan kemiripan kecil.

Tidak ada metrik akurasi pada model clustering, jadi kita akan menggunakan kemiripan atau perbedaan antar kelompok untuk mengevaluasi kinerja model.

kinerja clustering.png

Gambar dari dokumentasi scikit-learn

Tiga metrik yang umum digunakan adalah:

  • Silhouette Score
  • Calinski-Harabaz Index
  • Davies-Bouldin Index

Silhouette Score

Dihitung menggunakan mean jarak intra-klaster dan mean jarak klaster terdekat.

Kita dapat menggunakan scikit-learn untuk menghitung metrik ini. Silhouette Score berada antara -1 hingga 1, di mana skor lebih tinggi berarti kemiripan antar kelompok lebih rendah dan klaster lebih jelas.

from sklearn import metrics


model = KMeans().fit(X)
labels = model.labels_

metrics.silhouette_score(X, labels)

Calinski-Harabaz Index

Menghitung perbedaan antar kelompok menggunakan dispersi antar-klaster dan dalam-klaster. Metrik ini tidak berbatas, dan seperti Silhouette Score, skor lebih tinggi berarti kinerja model lebih baik.

metrics.calinski_harabasz_score(X, labels)

Davies-Bouldin Index

Menghitung rata-rata kemiripan tiap klaster dengan klaster yang paling mirip. Tidak seperti metrik lain, skor lebih rendah berarti kinerja model lebih baik dan pemisahan antar klaster lebih baik.

metrics.davies_bouldin_score(X, labels)


Pelajari cara menerapkan hierarchical dan k-means clustering dengan mengikuti kursus Cluster Analysis in R.

Ada empat orang di lift dan empat lantai di gedung. Berapa probabilitas setiap orang turun di lantai yang berbeda?

masalah probabilitas 4 orang dan 4 lantai.png

Gambar oleh Penulis

Kita akan menggunakan:

probabilitas.png

  • F = Jumlah lantai
  • P = Jumlah orang

Untuk menyelesaikan masalah ini, pertama kita cari jumlah cara total untuk turun di lantai: 44 = 4x4x4x4 = 256 cara.

Setelah itu, hitung jumlah cara setiap orang turun di lantai berbeda: 4! = 24.

Untuk menghitung probabilitas bahwa setiap orang turun di lantai berbeda, bagi jumlah cara setiap orang turun di lantai berbeda dengan jumlah cara total turun di lantai.

24/256 = 3/32

Pelajari strategi menjawab pertanyaan probabilitas yang rumit dengan R melalui kursus Probability Puzzles in R.

Tulis fungsi untuk menghasilkan N sampel dari distribusi normal dan plot histogramnya.

Untuk menghasilkan N sampel dari distribusi normal, Anda dapat menggunakan Numpy (np.random.randn(N)) atau SciPy (sp.stats.norm.rvs(size=N)).

Untuk memplot histogram, Anda bisa menggunakan Matplotlib atau Seaborn.

  1. Anda akan menghasilkan sampel distribusi normal acak menggunakan fungsi randn Numpy.
  2. Plot histogram dengan KDE menggunakan Seaborn.
  3. Plot histogram untuk 10K sampel dan kembalikan array Numpy.
import numpy as np
import seaborn as sns

N = 10_000

def norm_dist_hist(N):
    # Generating Random normal distribution samples
    x = np.random.randn(N)
    # Plotting histogram
    sns.histplot(x, bins = 20, kde=True);
    return x
   
X = norm_dist_hist(N)

histogram distribusi.png

Pelajari cara membuat visualisasi yang informatif dan menarik dalam hitungan detik dengan menyelesaikan kursus Introduction to Data Visualization with Seaborn.

Cara Mempersiapkan Wawancara Data Science

Bobot Wawancara Data Science.png

Gambar oleh Penulis

Wawancara data science dibagi menjadi empat hingga lima tahap. Anda akan ditanya tentang statistika dan machine learning, coding (Python, R, SQL), perilaku, product sense, dan terkadang pertanyaan kepemimpinan.

Anda dapat mempersiapkan semua tahap dengan:

  1. Meneliti perusahaan dan tanggung jawab pekerjaan: ini akan membantu Anda memprioritaskan usaha pada bidang tertentu dalam data science.
  2. Meninjau proyek portofolio terdahulu: manajer perekrutan akan menilai keterampilan Anda dengan mengajukan pertanyaan tentang proyek Anda.
  3. Mengulang kembali dasar-dasar data science: probabilitas, statistika, uji hipotesis, statistika deskriptif dan bayesian, serta reduksi dimensi. Cheat sheet adalah cara terbaik mempelajari dasar dengan cepat.
  4. Berlatih coding: ambil tes asesmen, selesaikan tantangan kode online, dan tinjau pertanyaan coding yang paling sering ditanyakan.
  5. Berlatih pada proyek end-to-end: pertajam keterampilan Anda dalam pembersihan data, manipulasi, analisis, dan visualisasi.
  6. Membaca pertanyaan wawancara yang paling umum: product sense, statistik, analitis, perilaku, dan kepemimpinan.
  7. Melakukan mock interview: latihan wawancara dengan teman, tingkatkan kosakata statistik Anda, dan bangun kepercayaan diri.

Baca blog Data Science Interview Preparation untuk mempelajari apa yang diharapkan dan bagaimana mendekati wawancara.

FAQ Wawancara Data Science

Apa empat komponen utama data science?

Empat komponen utama data science adalah:

  • Pemahaman bisnis dan strategi data.
  • Persiapan Data (Pembersihan, Imputasi, validasi).
  • Analisis Data dan Pemodelan.
  • Visualisasi Data dan Operasionalisasi.

Apakah wawancara data science sulit?

Biasanya, ya. Untuk lolos wawancara data science, Anda harus menunjukkan kemahiran di beberapa area seperti statistika & probabilitas, coding, analisis data, machine learning, product sense, dan pelaporan. Lihat panduan pertanyaan wawancara data scientist kami untuk membantu persiapan Anda!

Apakah data science pekerjaan yang membuat stres?

Tergantung. Seluruh tim/perusahaan Anda mungkin bergantung pada Anda untuk memberikan analisis dan informasi yang dapat ditindaklanjuti. Dalam beberapa kasus, Anda harus merangkap beberapa peran, seperti data engineer, data analyst, machine learning engineer, MLOps engineer, manajer data, dan pimpinan tim. Sebagian orang menganggap ini menarik dan menantang, sementara yang lain kadang merasa stres dan kewalahan.

Apakah satu tahun belajar cukup untuk data science?

Mungkin. Tergantung latar belakang Anda. Jika Anda bekerja sebagai software engineer dan ingin beralih, Anda bisa mempelajari sebagian besar hal dalam setahun. Namun, jika mulai dari nol, akan sulit untuk siap kerja dalam setahun. Mulailah perjalanan Anda sebagai Data Scientist with Python dan pelajari semua dasar dalam 6 bulan.

Apakah data science sangat bergantung pada matematika?

Ya. Anda perlu mempelajari statistika, probabilitas, matematika, analisis data, visualisasi data, serta membangun dan mengevaluasi model machine learning.

Apakah karier di data science menawarkan gaji yang baik?

Ya. Menurut Glassdoor, total gaji median untuk data scientist di AS sekitar $130.000–$145.000 per tahun per 2026, dengan peran senior di perusahaan teknologi besar jauh di atas itu. Gaji sangat bervariasi menurut perusahaan, lokasi, dan tingkat pengalaman. Lihat panduan kami tentang Cara Menjadi Data Scientist pada 2026 untuk info lebih lanjut tentang jalur karier dan kompensasi.

Bagaimana saya bisa menunjukkan pengetahuan data science saya kepada pemberi kerja?

Selain menyelesaikan kursus dan mengerjakan proyek data science dunia nyata, Sertifikasi Data Scientist kami adalah cara terbaik untuk membuktikan keahlian Anda kepada pemberi kerja. Sertifikasi yang diakui industri ini menguji keterampilan Anda melalui dua ujian berdurasi lalu ujian praktis.

Topik
Data Science
Layanan Karier

Kursus Data Science

Kursus

Python Tingkat Menengah

4 jam
1.4M
Tingkatkan keterampilan data science Anda dengan membuat visualisasi menggunakan Matplotlib dan memanipulasi DataFrame dengan pandas.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

Lihat SelengkapnyaLihat Selengkapnya