Skenario Latihan Komunikasi
Situasi kerja sungguhan di dunia tech — 60 skenario dalam 10 topik untuk latihan berbicara dan menyimak.
Mengatasi Konflik
Perbedaan Pendekatan Teknis
Kamu dan Senior iOS Developer berbeda pendapat tentang fitur live order tracking. Ia memilih polling setiap 5 detik karena lebih sederhana dan cepat diimplementasikan. Kamu mengusulkan WebSocket karena update hanya dikirim ketika status berubah, sehingga jumlah request dapat berkurang saat pengguna bertambah.
Kamu berbicara kepada Senior iOS Developer
Tujuan: Sampaikan perbedaan pandangan secara konstruktif dan ajak mengevaluasi solusi bersama.
Perbedaan Desain & Implementasi
Designer ingin mempertahankan animasi transisi pada onboarding karena membantu pengguna memahami perpindahan antar langkah. Dari sisi development, animasi tersebut membutuhkan sekitar tiga hari tambahan, sementara rilis tinggal empat hari lagi. Kamu khawatir waktu testing menjadi terlalu sempit jika implementasi tetap dipaksakan.
Kamu berbicara kepada Product Designer
Tujuan: Sampaikan keterbatasan implementasi tanpa meremehkan desain dan cari solusi yang dapat diterima bersama.
Kecepatan vs Kualitas
Manager ingin laporan dikirim sore ini agar bisa segera digunakan dalam meeting. Namun, dua bagian data masih perlu diverifikasi dan kamu membutuhkan sekitar setengah hari tambahan untuk memastikan angkanya benar. Jika langsung dikirim, ada risiko informasi yang belum akurat digunakan untuk mengambil keputusan.
Kamu berbicara kepada Manager
Tujuan: Kelola perbedaan prioritas antara kecepatan dan kualitas, lalu cari solusi yang dapat disepakati.
Menjelaskan Masalah Teknis
Database Melambat
Query database mulai melambat karena jumlah data terus meningkat. Optimasi query sudah dilakukan, tetapi hasilnya belum cukup. Tim mempertimbangkan migrasi database agar sistem dapat menangani pertumbuhan data dengan lebih baik.
Kamu berbicara kepada Junior Developer
Tujuan: Jelaskan penyebab masalah, dampaknya, dan alasan migrasi database dipertimbangkan.
API Mencapai Rate Limit
Aplikasi mengambil data dari API pihak ketiga. Saat jumlah pengguna meningkat, request melebihi rate limit sehingga sebagian data gagal dimuat. Tim perlu mengurangi jumlah request dan mengatur ulang proses pengambilan data.
Kamu berbicara kepada Customer Support Lead
Tujuan: Jelaskan penyebab masalah, dampaknya, dan langkah perbaikannya dengan bahasa sederhana.
Lonjakan Traffic
Setelah kampanye promosi dimulai, jumlah pengguna aplikasi meningkat hampir tiga kali lipat. Server menerima terlalu banyak request secara bersamaan sehingga beberapa halaman menjadi lambat dan sesekali gagal dimuat.
Kamu berbicara kepada tim Marketing
Tujuan: Jelaskan penyebab gangguan, dampaknya, dan tindakan yang sedang dilakukan tim.
Menyampaikan Ide Teknis
Menggunakan Caching
Aplikasi mengambil data produk yang sama dari API setiap kali halaman dibuka. Kamu mengusulkan caching agar data yang sering digunakan dapat disimpan sementara sehingga aplikasi tidak perlu terus melakukan request yang sama.
Kamu berbicara kepada anggota tim Engineering
Tujuan: Jelaskan ide caching, cara kerjanya, dan manfaat yang dapat diberikan.
Rilis dengan Feature Flag
Tim akan meluncurkan fitur baru yang cukup besar. Kamu mengusulkan feature flag agar fitur dapat diaktifkan lebih dulu untuk sebagian kecil pengguna. Jika ada masalah, fitur juga dapat dimatikan tanpa menarik seluruh aplikasi.
Kamu berbicara kepada Product Manager
Tujuan: Jelaskan konsep feature flag dan manfaatnya untuk proses peluncuran fitur.
Otomatisasi Laporan
Tim menghabiskan sekitar tiga jam setiap minggu untuk menggabungkan data laporan dari beberapa sumber secara manual. Kamu mengusulkan sistem sederhana yang dapat mengambil data secara otomatis dan membuat ringkasan awal untuk diperiksa sebelum dikirim.
Kamu berbicara kepada Manager
Tujuan: Sampaikan ide otomatisasi dan jelaskan manfaatnya bagi proses kerja tim.
Negosiasi Deadline
Testing Belum Selesai
Fitur pembayaran ditargetkan selesai Jumat. Namun, testing menemukan masalah pada validasi transaksi yang menyebabkan beberapa pembayaran gagal diproses. Tim membutuhkan sekitar dua hari tambahan untuk memperbaikinya dan melakukan testing ulang.
Kamu berbicara kepada Tech Lead
Tujuan: Negosiasikan deadline yang lebih realistis berdasarkan kondisi teknis saat ini.
Perubahan API Vendor
Integrasi login dijadwalkan selesai tiga hari lagi. Namun, vendor mengubah beberapa bagian API sehingga tim perlu melakukan penyesuaian dan testing ulang sekitar dua hari. Product Manager sudah menyampaikan tanggal awal kepada stakeholder.
Kamu berbicara kepada Product Manager
Tujuan: Negosiasikan perubahan deadline dengan mempertimbangkan kebutuhan stakeholder.
Deadline Laporan
Kamu diminta menyelesaikan laporan besok sore. Namun, data utama baru diterima hari ini dan kamu masih membutuhkan sekitar dua hari untuk mengolah serta mengeceknya agar hasilnya akurat.
Kamu berbicara kepada Manager
Tujuan: Negosiasikan waktu penyelesaian yang realistis tanpa mengabaikan kebutuhan manager.
Memberikan dan Menerima Feedback
Feedback Code Review
Dalam beberapa pull request terakhir, kode rekan developer bekerja sesuai requirement tetapi banyak logic ditempatkan dalam satu function panjang. Hal ini membuat kode lebih sulit dibaca, diuji, dan dikembangkan kembali.
Kamu memberikan feedback kepada rekan Developer
Tujuan: Berikan feedback yang spesifik, konstruktif, dan dapat ditindaklanjuti.
Feedback Desain
Designer membuat flow checkout yang lebih jelas, tetapi beberapa animasi di dalamnya cukup kompleks untuk diimplementasikan. Developer memperkirakan animasi tersebut membutuhkan sekitar tiga hari tambahan dari jadwal saat ini.
Kamu memberikan feedback kepada Designer
Tujuan: Sampaikan keterbatasan implementasi dan cari alternatif tanpa mengurangi nilai desain.
Menerima Feedback
Manager mengatakan update pekerjaanmu sering terlalu panjang sehingga keputusan dan hambatan utama sulit ditemukan. Kamu merasa detail tersebut penting, tetapi ingin memahami bentuk update yang sebenarnya ia butuhkan.
Kamu menerima feedback dari Manager
Tujuan: Tanggapi feedback secara terbuka dan selaraskan bentuk komunikasi yang diharapkan.
Meminta Klarifikasi
Definisi Data API
Requirement endpoint baru meminta sistem menampilkan semua pengguna aktif. Namun, belum jelas apakah pengguna aktif berarti sedang login, aktif dalam 30 hari terakhir, atau akun yang belum dinonaktifkan.
Kamu berbicara kepada Developer yang membuat requirement
Tujuan: Perjelas definisi pengguna aktif sebelum implementasi dimulai.
Dashboard Lebih Sederhana
Stakeholder meminta dashboard dibuat lebih sederhana dan modern. Belum jelas bagian mana yang dianggap terlalu rumit, informasi apa yang paling penting, atau perubahan seperti apa yang mereka harapkan.
Kamu berbicara kepada Stakeholder
Tujuan: Perjelas kebutuhan stakeholder sebelum tim mulai mengerjakan perubahan.
Dua Tugas Mendesak
Manager meminta revisi proposal dan laporan bulanan diselesaikan secepatnya. Keduanya membutuhkan sekitar satu hari kerja, tetapi kamu tidak memiliki cukup waktu untuk menyelesaikan keduanya hari ini.
Kamu berbicara kepada Manager
Tujuan: Klarifikasi prioritas dan deadline dari kedua pekerjaan.
Menghadapi Percakapan Sulit
Testing yang Terlewat
Dalam dua sprint terakhir, beberapa pull request dari rekan developer masuk dengan testing yang belum lengkap dan menyebabkan bug setelah digabungkan. Developer lain beberapa kali harus menghentikan pekerjaan mereka untuk membantu memperbaikinya.
Kamu berbicara secara pribadi kepada rekan Developer
Tujuan: Bahas masalah testing yang berulang dan sepakati cara memperbaikinya.
Menolak Permintaan Fitur
Stakeholder meminta fitur export dimasukkan ke rilis yang tinggal tiga hari lagi. Tim Design dan Development memperkirakan fitur tersebut membutuhkan sekitar satu minggu untuk dirancang, dikembangkan, dan diuji dengan aman.
Kamu berbicara kepada Stakeholder
Tujuan: Sampaikan keterbatasan dengan jelas dan tawarkan alternatif yang realistis.
Keterlambatan Berulang
Seorang teammate terlambat menyelesaikan tiga tugas terakhir sekitar satu hingga dua hari. Keterlambatan tersebut beberapa kali membuat pekerjaan anggota lain ikut tertunda.
Kamu berbicara secara pribadi kepada Teammate
Tujuan: Bahas keterlambatan yang berulang, pahami kendalanya, dan cari perbaikan bersama.
Mengakui Kesalahan
Kesalahan Deployment
Kamu menggunakan konfigurasi yang salah saat deployment sehingga fitur login tidak dapat digunakan selama sekitar 15 menit. Konfigurasi sudah dikembalikan dan layanan sekarang kembali normal.
Kamu melaporkan kejadian kepada Tech Lead
Tujuan: Akui kesalahan, jelaskan dampaknya, dan sampaikan langkah perbaikan serta pencegahan.
Requirement Terlewat
Kamu melewatkan satu kebutuhan penting dari Product Manager saat mengerjakan sebuah fitur. Akibatnya, tim Design dan Development membutuhkan sekitar satu hari tambahan untuk menyesuaikan desain dan implementasi.
Kamu berbicara kepada Product Manager, Designer, dan Developer
Tujuan: Akui requirement yang terlewat dan jelaskan rencana untuk memperbaiki dampaknya.
Data Laporan Salah
Kamu mengirim laporan mingguan menggunakan data minggu sebelumnya sehingga beberapa angka tidak sesuai dengan kondisi terbaru. Kamu baru menyadarinya setelah laporan tersebut dikirim kepada manager.
Kamu berbicara kepada Manager
Tujuan: Sampaikan kesalahan secara terbuka dan berikan koreksi serta langkah perbaikannya.
Perubahan Scope dan Prioritas
Bug Kritis vs Fitur Baru
Tim sedang mengembangkan fitur utama sprint. Hari ini ditemukan bug pada proses checkout yang menyebabkan sebagian pengguna gagal melakukan pembayaran. Perbaikannya membutuhkan sekitar dua hari dan akan mengurangi waktu untuk fitur baru.
Kamu berdiskusi dengan Tech Lead
Tujuan: Jelaskan trade-off dan sepakati pekerjaan yang perlu diprioritaskan.
Perubahan Onboarding
Developer sudah mulai mengimplementasikan onboarding tiga langkah yang sebelumnya disetujui. Stakeholder kemudian meminta alurnya berubah menjadi lima langkah dan menambahkan verifikasi nomor telepon. Perubahan ini membuat desain dan sebagian implementasi harus dikerjakan ulang.
Kamu berbicara kepada Stakeholder, Designer, dan Developer
Tujuan: Selaraskan kembali scope, dampak, dan prioritas setelah requirement berubah.
Perubahan Prioritas Kerja
Kamu sedang menyelesaikan laporan yang harus dikirim dua hari lagi dan masih membutuhkan sekitar satu hari kerja. Manager kemudian memberikan tugas baru yang juga membutuhkan sekitar satu hari dan meminta keduanya segera diselesaikan.
Kamu berbicara kepada Manager
Tujuan: Selaraskan prioritas pekerjaan dan deadline berdasarkan kapasitas yang tersedia.
Menyelaraskan Ekspektasi
Siap untuk Testing
Kamu sudah menyelesaikan implementasi utama fitur pembayaran dan menganggap fitur siap masuk ke QA. Namun, QA Engineer mengira status 'siap testing' berarti seluruh edge case, error handling, dan unit test juga sudah selesai. Saat ini flow utama sudah berjalan, tetapi beberapa edge case dan unit test masih membutuhkan sekitar satu hari pengerjaan.
Kamu berbicara kepada QA Engineer
Tujuan: Selaraskan pemahaman tentang status fitur dan definisi 'siap testing'.
Prototype vs Produk Final
Tim Product membuat prototype untuk menguji flow baru kepada pengguna. Stakeholder mengira prototype tersebut sudah hampir siap dikembangkan dan berharap fitur bisa segera masuk ke sprint berikutnya. Padahal beberapa flow masih perlu divalidasi dan desain final belum dibuat.
Kamu berbicara kepada Stakeholder
Tujuan: Selaraskan ekspektasi tentang status prototype dan kesiapan fitur untuk development.
Ekspektasi Update Kerja
Kamu biasanya memberikan update pekerjaan saat ada perubahan besar atau ketika task selesai. Manager ternyata mengharapkan update singkat setiap sore agar bisa mengetahui progress dan blocker lebih cepat. Kamu tetap ingin menghindari laporan yang terlalu panjang setiap hari.
Kamu berbicara kepada Manager
Tujuan: Selaraskan ekspektasi tentang frekuensi dan bentuk update pekerjaan.