Skip to main content
LINE / Airbnb / Change.org / KakaoTalk

Uluslararasılaştırma danışmanlığı: Bozulanı düzeltin, sıradakini planlayın

i18n'in zor olduğunu zaten biliyorsunuz. Belirtilerini gördüm: çöken RTL düzenleri, butonlardan taşan Almanca metinler, yanlış dilde dönen API yanıtları ve lansmandan birkaç hafta sonra senkronizasyondan çıkan çeviriler. Size mucizevi çözümler satmıyorum. Ekibinizin içine düştüğü karmaşayı çözmenize yardım ediyorum — ve aynı şekilde bir daha bozulmayacak sistemler kuruyorum.

"Bunu daha önce planlamalıydık"

Şu anda ödediğiniz mimari vergi

İngilizce lansmanınızı yaptınız. İşe yaradı. Sonra "sadece açılış sayfası için" diye Fransızca eklediniz. Şimdi buradasınız, çünkü:

Kod tabanınızda 47 dosyaya dağılmış lang= kontrolleri var

Ürün yöneticileri "Metni A/B test edebilir miyiz?" diye soruyor, mühendislik ise "Baştan yazmadan olmaz" diyor

Üç farklı çeviri iş akışınız var ve hiçbiri düzgün çalışmıyor

Bozulduğuna tanık olduklarım:

  • Ekipler, dizeler bileşenlere sabit kodlandığı için bir Next.js uygulamasına i18n desteğini sonradan eklemeye 6 aydan fazla harcıyor
  • Geliştiriciler hangi dosyayı güncelleyeceklerini bilmedikleri için çeviri dosyaları senkronizasyondan çıkıyor
  • Çeviri sürecine kimsenin güvenmemesi nedeniyle sürümlerden önce uygulanan "yerelleştirme durdurma" dönemleri
  • İş akışı çok zahmetli olduğu için çevrilmiş içeriği değiştirmekten kaçınma

Yardımcı olduğum konular:

  • i18n geçişini kademeli olarak yapmanıza olanak tanıyan yeniden yapılandırma stratejileri ("her şeyi durdurun ve sıfırdan yazın" demiyorum)
  • Geliştirmeyi engellemeden çevirileri eşzamanlı tutmak için süreç tasarımı
  • Mevcut yaklaşımınızın 10'dan fazla dilde nerelerde sorun çıkaracağını belirlemek için mimari incelemeler

i18n bir mimaridir, bir özellik değil. Sonradan eklemeye çalışmak, evi inşa ettikten sonra altına bodrum katı yapmaya karar vermek gibidir.

O bodrum katı kazmanıza da yardım ederim, gerçekten ihtiyacınız olup olmadığına karar vermenize de.

RTL her şeyi alt üst eder

Arayüzünüz Arapça, İbranice veya Urduca için tasarlanmadı

dir="rtl" ayarını açtınız ve düzeninizin paramparça olduğunu gördünüz:

Açılır menüler yanlış yönde açılıyor
Simgeler yanlış yönü gösteriyor
Flexbox düzenleri çöküyor veya garip örtüşmeler oluşturuyor
İpuçları ekran dışında görünüyor
Kayan öğeler metin yönünü tamamen görmezden geliyor

Şimdiye kadar gördüklerim:

  • 200'den fazla bileşene sahip tasarım sistemlerinde bunların yalnızca 12 tanesi RTL'yi düzgün şekilde destekliyor
  • Mantıksal özellikler yerine float: left kullanan ve her yeni özellikte RTL hatası oluşturan ekipler
  • Bileşene özel RTL geçersiz kılmaları gerektiren popover'lar ve modal'lar
  • "RTL desteği" sunduğunu iddia eden ama yalnızca düzen yönünü çevirip yerleşim mantığını bozan çerçeveler

Yardımcı olduğum konular:

  • CSS mantıksal özelliklerine geçiş (margin-inline-start, margin-left yerine)
  • RTL mayınlarını yayına çıkmadan önce tespit etmek için tasarım sistemi denetimleri
  • RTL öncelikli stil oluşturmak için çerçeveye özel rehberlik (Tailwind, shadcn, MUI)

Her bileşende RTL hatalarını tek tek düzeltmek sürdürülebilir değil. RTL desteğini sistematik hâle getiriyorum; sürekli yangın söndürme işi değil.

"Almanca metin butonumuzu bozdu"

Çeviriye uygun tasarlanmamış kullanıcı arayüzü

İngilizce sığıyor. Almanca sığmıyor. Tasarımınız şunu varsaydı:

Buton etiketleri ~10 karakterKullanıcı adları 200px sütuna sığarHata mesajları tek satırdır

Sonra Almanca, Fince veya Tayca'ya çevirdiniz ve şunu fark ettiniz:

Düğmeler kelimenin ortasından kesiliyor

Her satırda yatay kaydırmalı tablolar

Okunamaz bloklara sarmalanan metin

Latin alfabesi dışındaki metinler, kapsayıcıların sabit genişliği nedeniyle kesiliyor

Yardımcı olduğum konular:

  • İçerik uzunluğuna göre esneyen arayüz kalıpları
  • Karakter bütçesi planlaması (Almancanın 30 % genişlediğini, Taycanın boşluk kullanmadığını bilmek)
  • CJK, Arapça ve Devanagari yazı sistemlerini bozmadan işleyen tipografi sistemleri

Kullanıcı arayüzünüzü çeviriye dayanıklı hâle getirmenize yardımcı oluyorum — sığmayan 10,000 kelime için ödeme yapmadan önce.

i18n'in neden önemli olduğuna dair bir derse ihtiyacınız yok. Gece 2'de RTL popover'larını debug etmiş, ürün ekibiyle karakter bütçeleri yüzünden tartışmış ve gerçekten işe yarayan çeviri süreçleri tasarlamış birine ihtiyacınız var.

Kimsenin sizi uyarmadığı tuzaklar

Bunu yaşayan ekiplerin savaş hikayeleri

Bunlar teorik değil. Canlı ortamda bozulan şeyler:

Çoğullama cehennemi

İngilizce: "1 item" ile "2 items"

Lehçe: "1 przedmiot" / "2 przedmioty" / "5 przedmiotów" (3 çoğul biçim)

Arapça: 6 çoğul biçim

count === 1 ? 'item' : 'items' mantığınız artık çalışmıyor.

Tarih/saat kaosu

Tarihleri toLocaleDateString() ile biçimlendirdiniz. Sonra Japonya'daki kullanıcılar CSV dışa aktarımlarınızda "2025年2月9日" gördü ve Excel patladı.

API dil uyumsuzluğu

Ön yüzünüz Fransızca talep ediyor. API'niz ise İngilizce döndürüyor; çünkü kimlik doğrulama jetonu yerel ayar bilgisini taşımıyor. Sonuçta karışık dilli bir arayüzle karşılaşıyorsunuz ve kullanıcılar bunu bir hata sanıyor.

Sahte yerel ayar (Pseudo-Locale) testi

Üretime geçmeden önce [Ţĥîś îś ţéśţ ţéẋţ ţĥàţ éẋþàñðś 30%] ile test etmediniz. Şimdi Lehçe siteniz kullanılamaz durumda.

Görünmez varsayım

Metin dizelerinin çeviri gerektiren tek şey olduğunu varsaydınız. Sonra tarihler, sayılar, para birimleri, sıralama ve arama karşınıza çıktı — her şeyin yerel ayara özgü bir davranışı var.

Yardımcı olduğum konular:

  • ICU MessageFormat uygulaması (çoğul, cinsiyet ve bağlam desteği)
  • API i18n kalıpları (dil müzakeresi, geri dönüş stratejileri)
  • Bu sorunları çeviri ajanslarından önce yakalayan kalite kontrol süreçleri

Asıl zor kısım iş akışı

Her gün dağıtım yaparken 8 dili nasıl senkronize tutarsınız?

Teknolojiyi çözdünüz. Şimdi süreçte takılıp kaldınız:

1

Geliştiriciler yeni İngilizce dizeleri içeren kodu birleştiriyor. Çeviriler 2 hafta geriden geliyor. Kullanıcılar yarı çevrilmiş bir arayüzle karşılaşıyor.

2

Hangi dizelerin silinmesinin güvenli olduğunu bilmiyorsunuz (kullanılıyorlar mı? çevrilmişler mi? bir ajansla süreç devam mı ediyor?)

3

Ürün ekibi metni güncellemek istiyor. "Submit" ifadesini "Send" olarak değiştirmenin 12 dili bozup bozmayacağını kimse bilmiyor.

4

Çeviri dosyaları haftalarca üretimle uyumsuz kalıyor

Ekiplerin bana sorduğu sorular:

"API'miz çevrilmiş içeriği mi döndürmeli, yoksa bunu ön yüzün halletmesine mi izin vermeli?"
"Çevirileri nasıl versiyonlayacağız?"
"Tek doğru kaynak ne: Figma mı, kod tabanı mı, yoksa çeviri aracı mı?"
"Geliştiricilerin yalnızca İngilizce özellikler yayınlamasını nasıl önleriz?"

Bozulduğuna tanık olduklarım:

  • Git'e kaydedilen çeviri dosyaları üretim dizeleriyle uyumsuz hale geliyor
  • "İspanyolca dosyaya dokunmayın" uyarıları – çünkü neyi değiştirmenin güvenli olduğunu kimse bilmiyor
  • Özellikler İngilizce olarak yayına alındı, çevirisi ise 6 ay sonra geldi (geldiyse tabii)

Yardımcı olduğum konular:

  • Çeviri pipeline tasarımı (i18n kütüphaneleri, TMS ve yapay zekâ ne zaman kullanılmalı)
  • Kaynak dizeleri ve çevirileri senkronize tutmak için Git iş akışları
  • Yeni dizeler çeviri için işaretlenmemişse PR'ları engelleyen otomasyon

Teknoloji çözülebilir. Asıl engel iş akışıdır. Sürdürmek için kahramanlık gerektirmeyen iş akışları tasarlıyorum.

Çalıştığım Ekipler

Global ürünler, bölgesel uzmanlık

LINE (Japonya, Tayvan, Tayland) logosu

LINE (Japonya, Tayvan, Tayland)

3 temel Doğu Asya pazarında faaliyet gösteren mesajlaşma platformu. CJK karakter işleme, platform ekosistemi entegrasyonu ve Japonya, Tayvan ile Tayland arasında farklılık gösteren kullanıcı deneyimi beklentilerine özgü zorluklar üzerinde çalıştım.

KakaoTalk (Güney Kore) logosu

KakaoTalk (Güney Kore)

Kore'nin en yaygın mesajlaşma platformu. Kullanıcı arayüzündeki dil resmiyeti beklentileri ve platform entegrasyonu ihtiyaçları da dahil olmak üzere Kore pazarına özgü ürün gereksinimlerini ele aldım.

Change.org (196 ülke, 20'den fazla öncelikli dil) logosu

Change.org (196 ülke, 20'den fazla öncelikli dil)

İçerik hızı ve kalitenin birlikte önem taşıdığı global bir dilekçe platformu. Farklı pazarlarda kullanıcı tarafından oluşturulan siyasi/sosyal içerik için çeviri iş akışını yönlendirdim.

Airbnb (220'den fazla ülke, 60'tan fazla dil) logosu

Airbnb (220'den fazla ülke, 60'tan fazla dil)

Karmaşık i18n gereksinimlerine sahip küresel pazar yeri. Birden fazla dilde güven ve güvenlik sorunları ile platform kavramlarının farklı pazarlara kültürel uyarlanması konusunda danışmanlık verdim.

Intercom (30'dan fazla dil, global B2B SaaS) logosu

Intercom (30'dan fazla dil, global B2B SaaS)

Küresel kurumsal müşterilere hizmet veren müşteri iletişim platformu. Gerçek zamanlı destek araçları için ürün uluslararasılaştırması ve bilgi tabanı yerelleştirmesi üzerinde çalıştım.

Lilith Games (Çin, Japonya, Kore, ABD, AB) logosu

Lilith Games (Çin, Japonya, Kore, ABD, AB)

Dünya genelinde dağıtılan oyunlara sahip mobil oyun yayıncısı. İçerik yerelleştirme ve bölgesel platform gereksinimleri konusundaki pazara özgü zorlukları ele aldım.

Lansman yaptığım pazarlar:

Doğu Asya (Japonya, Kore, Çin):

CJK tipografisi, platform ekosistemi entegrasyonu, dikey metin desteği

Güneydoğu Asya (Tayland, Vietnam, Endonezya):

Çoklu yazı sistemi desteği, mobil öncelikli kullanıcı beklentileri

MENA (Arapça konuşulan bölgeler):

Sağdan sola düzen gereksinimleri, resmi ve günlük dil ayrımı beklentileri, kültürel içerik uyarlaması

Avrupa:

24 resmi dil, çok ülkeli ürün lansmanları

Amerikalar:

Bölgesel dil farklılıkları (Latin Amerika İspanyolcası ile İspanya İspanyolcası, Brezilya Portekizcesi), iki dilli pazarlar

Bu pazarlarda neyin işe yaradığını, neyin başarısız olduğunu bizzat gördüm — teoriden değil, gerçek kullanıcıların güvendiği ürünleri piyasaya sürerek.

Bozulanı birlikte düzeltelim

i18n'in neden önemli olduğuna dair bir derse ihtiyacınız yok. Gece 2'de RTL popover'larını debug etmiş, ürün ekibiyle karakter bütçeleri yüzünden tartışmış ve gerçekten işe yarayan çeviri süreçleri tasarlamış birine ihtiyacınız var.

Mimari ve Strateji İncelemesi (1-2 hafta):

Bir sonraki 3 dili eklediğinizde neyin bozulacağını ve düzeltmenin ne kadara mal olacağını söylüyorum

Pazara Giriş Desteği (4-8 hafta):

Japonya/MENA/AB'de lansman yapıyorsunuz ve bunu daha önce yapmış uzmanlara ihtiyacınız var

Süregelen ortaklık:

2 dilden 20 dile ölçeklenirken yanınızda olan entegre danışmanlık

Teori yapmam. Önceliklendirme, yol haritası ve ürün çıkarma yaparım.