kodingup.camp

Beranda/Siap Kerja US: Bahasa Inggris, Portofolio & Melamar

Bahasa Inggris untuk Developer

Modul 2 dari 106 menit bacaEnglish for Developers

Isi modul

    Kenapa ini penting

    Di tim remote US, hampir semua komunikasi tertulis: Slack, pull request, issue di GitHub/Jira/Linear, dokumen desain, dan email. Tulisan kamu adalah wajah kamu. Developer yang kodenya bagus tapi update-nya membingungkan akan dianggap "sulit diajak kerja", sementara developer biasa yang selalu menulis update jelas akan dianggap andal. Kabar baiknya, bahasa Inggris kerja itu bukan bahasa Inggris sastra. Kosakatanya terbatas, polanya berulang, dan bisa dilatih seperti kamu melatih syntax JavaScript. Kamu tidak perlu aksen Amerika. Yang perlu adalah jelas, singkat, dan bisa ditindaklanjuti.

    Konsep inti

    Kosakata kerja yang paling sering muncul

    Istilah Arti dalam praktik
    blocker / blocked Hal yang menghentikan pekerjaanmu. "I'm blocked on the API key."
    ETA Perkiraan waktu selesai. "ETA is Thursday EOD."
    EOD / EOW End of day / end of week (pastikan zona waktunya!).
    ship Merilis ke production. "We shipped the new checkout."
    scope / out of scope Batas pekerjaan. "Dark mode is out of scope for this ticket."
    heads-up Pemberitahuan awal. "Heads-up: I'll be offline tomorrow."
    follow up Menindaklanjuti. "I'll follow up after the call."
    PTAL "Please take a look", minta review.
    nit Komentar kecil yang tidak wajib diperbaiki (gaya, typo).
    LGTM "Looks good to me", tanda setuju di code review.
    repro Reproduce, langkah memunculkan bug.
    async Komunikasi yang tidak menuntut balasan saat itu juga.

    Pola yang banyak dipakai: kalimat perintah (imperative), singkat, menjelaskan apa dan, di body, kenapa. Bayangkan kalimat "If applied, this commit will ..." lalu lanjutkan dengan pesan kamu. Contoh: "Fix cart total when coupon is removed" (bukan "fixed bug" atau "update"). Banyak tim memakai format Conventional Commits seperti fix:, feat:, docs:; ikuti aturan repo masing-masing.

    PR yang baik menjawab empat pertanyaan reviewer: apa yang berubah, kenapa, bagaimana mengetesnya, dan apa risikonya. Reviewer di US mungkin membaca PR kamu saat kamu sedang tidur, jadi PR harus bisa dipahami tanpa kamu menjelaskan secara langsung. Tambahkan screenshot atau rekaman untuk perubahan UI.

    Struktur standar: ringkasan satu kalimat, langkah reproduksi bernomor, hasil yang diharapkan (expected), hasil sebenarnya (actual), lingkungan (browser, OS, versi), dan bukti (log, screenshot).

    Stand-up update

    Format klasik tiga bagian: Yesterday / Today / Blockers. Di tim async, ini ditulis di Slack. Kuncinya: sebut hasil, bukan aktivitas. "Worked on login" itu lemah; "Finished the login form validation, PR #142 is ready for review" itu kuat.

    Slack async: aturan emas

    1. Jangan hanya menulis "Hi" lalu menunggu. Langsung tulis pertanyaan lengkap dalam satu pesan. Orang di zona waktu lain akan membalas saat bangun, dan satu kalimat "Hi" bisa menghabiskan satu hari.
    2. Beri konteks dan tautan. Link ke PR, ticket, atau baris kode.
    3. Sebut apa yang kamu butuhkan dan kapan. "Could you review by Wednesday your time?"
    4. Pakai thread supaya channel tidak berantakan.
    5. Tawarkan opsi, bukan hanya masalah: "Option A ... Option B ... I'd go with A because ..."

    Cara minta klarifikasi

    Minta klarifikasi bukan tanda bodoh. Di budaya kerja US, bertanya lebih awal dianggap profesional; diam lalu salah arah dianggap masalah. Pola yang aman: ulangi pemahamanmu dulu, lalu tanyakan bagian yang belum jelas.

    Kesalahan khas penutur bahasa Indonesia

    Latihan harian gratis

    Contoh kode

    Template PR description:

    ### What
    Add server-side validation to the signup form.
    
    ### Why
    Users could bypass client-side checks and create accounts with invalid
    emails (see #231). This caused 40+ bounced welcome emails last week.
    
    ### How to test
    1. Run `npm run dev`
    2. Go to /signup and submit `test@` as the email
    3. Expect a 400 response and the message "Please enter a valid email"
    
    ### Screenshots
    (before / after)
    
    ### Risks
    - Existing accounts are not affected.
    - The error message text changed; QA scripts that match the old text may fail.
    

    Template bug report / issue:

    **Summary:** Cart total does not update after removing a coupon.
    
    **Steps to reproduce**
    1. Add any product to the cart
    2. Apply coupon `SAVE10`
    3. Remove the coupon
    
    **Expected:** Total returns to the original price.
    **Actual:** Total stays discounted until the page is refreshed.
    
    **Environment:** Chrome 141, macOS, production build from Oct 20
    **Notes:** Looks like `cartTotal` is not recalculated in `removeCoupon()`.
    

    Contoh stand-up async di Slack dan pesan meminta klarifikasi:

    Daily update, Tue
    ✅ Yesterday: Finished signup validation, PR #142 is ready for review.
    🔨 Today: Start the password reset email (ticket WEB-88).
    🚧 Blockers: I need the SendGrid API key for staging. @Mike, could you
       share it in 1Password when you're online? Until then I'll build the
       email template with a mock sender.
    
    ---
    
    Hi @Anna, quick question on WEB-88 (password reset).
    My understanding: the reset link should expire after 1 hour and work once.
    Two things I'm not sure about:
    1. Should we log the user out of other devices after a reset?
    2. Do we need a Spanish version of the email for this release?
    If I don't hear back by your EOD, I'll go with "yes" for 1 and "no" for 2,
    and we can adjust in review.
    

    Kesalahan umum

    1. Menulis update berbentuk aktivitas, bukan hasil. "Working on bug" tidak memberi informasi. Cara benar: sebut status konkret dan tautan, misalnya "Bug fixed, PR #150 waiting for review".
    2. Pesan "Hi" tanpa isi. Di tim lintas zona waktu, ini membuang satu hari. Cara benar: satu pesan lengkap berisi konteks, pertanyaan, dan tenggat.
    3. Diam saat tidak paham di meeting. Cara benar: pakai kalimat klarifikasi, atau tulis "I'll follow up in Slack" lalu benar-benar tindak lanjuti.
    4. Memakai Google Translate untuk seluruh pesan tanpa membaca ulang. Hasilnya sering terlalu formal atau salah makna. Cara benar: tulis sendiri, pakai alat bantu hanya untuk mengecek tata bahasa, lalu baca ulang.
    5. EOD tanpa zona waktu. "I'll send it by EOD" bisa berarti dua hari berbeda. Cara benar: "by 5pm ET" atau "by your EOD Thursday".

    Latihan

    1. Mudah, Perbaiki commit message ini: "fixed some bugs and update style".
    2. Sedang, Tulis stand-up update async (Yesterday/Today/Blockers) untuk situasi: kemarin kamu membuat halaman profil, hari ini mau menambah upload avatar, dan kamu belum tahu batas ukuran file.
    3. Menantang, Product manager menulis: "Make the dashboard faster." Tulis pesan klarifikasi yang mengulang pemahamanmu, mengajukan 2-3 pertanyaan spesifik, dan menawarkan rencana default.
    Lihat solusi
    1. Pisahkan menjadi dua commit karena isinya dua hal:
    fix: prevent double submit on checkout button
    style: align footer links on mobile
    
    1. Contoh:
    ✅ Yesterday: Built the profile page (name, bio, links). PR #77 is merged.
    🔨 Today: Add avatar upload with preview.
    🚧 Blockers: What's the max file size and allowed formats? I'll default to
       2 MB and JPG/PNG/WebP unless someone says otherwise by 12pm ET.
    
    1. Contoh:
    Hi @Lena, about "make the dashboard faster":
    My understanding is the main pain is the initial load of /dashboard,
    which takes about 6s on my machine with production data.
    A few questions:
    1. Is the goal initial load time, or how fast filters respond?
    2. Do you have a target, e.g. under 2s?
    3. Is it OK to show a loading skeleton while data arrives?
    Proposed plan if that's fine: profile the API calls first, add pagination
    to the orders query, and report numbers before/after by Friday.
    

    Ringkasan

    Video pendamping

    Kalau penjelasan di atas belum masuk, tonton ini. Video dari kanal YouTube pihak lain.

    How To Introduce Yourself as a Software Engineer: Tell Me About Yourself!Leonard Thiele · Bahasa InggrisBuka di YouTube

    Kuis pemahaman

    Pilih satu jawaban per soal. Penjelasan muncul setelah kamu menjawab.