İçerik sitesinin içine gömülü bir mağaza
Onedio’da beş ay: ana siteye ve mobil uygulamalara gömülü, sıfırdan yazılmış bir e-ticaret sistemi, RSS beslemesi, Toplu İçerik Yükleyici ve okuma süresi.
Beş ayda Onedio Store, RSS beslemesi, Toplu İçerik Yükleyici ve okuma süresi yayına girdi; mağaza ayrı bir sitede değil, ana sitenin ve mobil uygulamaların içinde çalışıyordu.
Rakamlarla Onedio
- Türkiye’de sosyal haber platformları arasında
- En çok ziyaret edilen
- Beş ayda yayına giren ürün
- 4
- Mağazanın çalıştığı yüzey
- Site ve mobil uygulamalar
Ocak 2017’de Ankara’da, Onedio’da kıdemli yazılım mühendisi olarak işe başladım. Onedio, Buzzfeed’e benzeyen bir içerik şirketi; Türkiye, Rusya, Arap ülkeleri ve İngiltere’ye içerik üretiyordu. Yalnızca internette yayın yapan sosyal haber platformları arasında Türkiye’nin en çok ziyaret edileni. Arka uçta, ön yüzde ve API’de çalıştım.
Beş ay kaldım. O beş ayda dört şey yayına girdi: Onedio Store, RSS beslemesi, Toplu İçerik Yükleyici ve okuma süresi. Bunların yanında Onedio Blog sitesinde ve daha küçük işlerde çalıştım. En büyüğü mağazaydı.
Mağaza neden sıfırdan yazıldı
Bir medya şirketi ürün satmaya karar verdiğinde en kolay yol bellidir: hazır bir e-ticaret altyapısı kiralarsınız, ayrı bir alan adına kurarsınız, içerikten oraya bağlantı verirsiniz. Onedio bunu yapmadı. Mağaza baştan sona yazıldı ve ana sitenin, ayrıca mobil uygulamaların içine gömüldü.
Sebep teknik gurur değildi, okurun nerede durduğuydu. İnsanlar Onedio’ya bir şey okumaya geliyor. Bir tişört satacaksanız, o tişörtün sayfası sitenin geri kalanıyla aynı dili konuşmak zorunda: aynı kolon genişliği, aynı yazı tipi, aynı paylaşım düğmeleri. Ürünün altında “BUNLAR DA VAR” başlıklı bir öneri şeridi duruyordu — bu bir mağaza öğesi değil, Onedio’nun kendi içerik önerisi kalıbıydı. Okuru mağazaya göndermek yerine mağazayı okurun durduğu yere getirdik.

İkinci sebep mobil uygulamalardı. Web için kurulmuş hazır bir sepet, uygulamanın içinde çalışmaz. Aynı mağaza hem siteye hem uygulamalara hizmet edecekse satış mantığının tek bir yerde, API’nin arkasında durması gerekir. Ortada tek bir sistem, önünde birden fazla yüzey vardı. Bu, sıfırdan yazmanın maliyetini ödemeye değer kılan asıl gerekçeydi.
Bunun bir bedeli var ve bedelin adı API sözleşmesidir. Sitenin ön yüzünü aynı gün değiştirebilirsiniz; mobil uygulamayı değiştiremezsiniz. Yeni bir sürüm çıksa bile kullanıcıların bir kısmı aylarca eskisinde kalır. Yani mağazanın API’sini, ileride donacakmış gibi tasarlamanız gerekir: alan çıkarmak yerine alan eklersiniz, anlam değiştirmek yerine yeni anlam açarsınız. Web tarafında beş dakikada geri alınabilecek bir karar, mobil tarafında aylarca taşınır. Gömülü bir mağazada acele edilmemesi gereken yer burasıdır.
Beden, kesim, renk, adet
Bir tişörtün bedeni, kesimi ve rengi ayrı ayrı seçiliyorsa, sattığınız şey artık “tişört” değildir; bu üç seçimin belirli bir birleşimidir. Stok o birleşimde tutulur, fiyat ona bağlanır, sipariş onu taşır, iade ona döner. “Tek ürün, tek fiyat” varsayımıyla yazılmış bir sepetin ilk çatladığı yer burasıdır. Çoğu ekip bunu ilk siparişlerden sonra fark eder.

Bu ekranın bir de görünmeyen tarafı var. Seçenekler bittiği anda satın alma düğmesinin ne yapacağı, hangi birleşimin stokta olduğu ve stokta olmayanın nasıl gösterileceği aynı anda çözülmek zorunda. Ürün sayfasını basit tutmanın bedelini her zaman arka uç öder.
Formdaki alanlar Türkiye’ye ait
Satın alma dört ekrandan geçiyordu: ürün, seçim, fatura bilgileri, ödeme. Sistemin neden yerelde yazılması gerektiğini en açık gösteren yer üçüncü ekrandı. Formda kimlik numarası, ad, soyad, doğum yılı, e-posta, şehir, ilçe, adres ve mesafeli satış sözleşmesi onayı isteniyordu.
Bu alanlar süs değil. Türkiye’de fatura kesmek kimlik bilgisini, mesafeli satış yapmak da sözleşme onayını gerektiriyor. Yurt dışında yazılmış hazır bir çözüme bunları eklemek “bir alan daha koymak” değildir: form, doğrulama, fatura ve sözleşme metni birlikte değişir. Çıkan şey genellikle sistemin kendi akışıyla çekişen bir yamadır ve o yamayı her sürümde yeniden onarırsınız.

Dördüncü ekranda kart üzerindeki isim, kart numarası, son kullanma tarihi, CVC ve 3D ödeme seçeneği vardı. Dört adımın dördü de Onedio’nun kendi sayfalarıydı.
Görünmeyen üç iş
Mağazanın yanında üç iş daha yazdım. Üçü de mağazadan az konuşuldu, ama Onedio’daki içeriğin çok daha büyük bir kısmına dokundu.
RSS beslemesi, içeriğin siteden çıkıp başka yerlerde görünmesinin en ucuz yoludur. Kolay iş gibi durur; zor olan tarafı biçim değil kapsamdır. Beslemeye neyin gireceği, hangi içeriğin ne kadarının dışarıya verileceği ve dışarıda görünen hâlin siteye geri dönmeyi hak edip etmediği, mühendislik sorusundan çok yayın sorusudur.
Toplu İçerik Yükleyici bir editör aracıydı. Bir içerik şirketinde darboğaz neredeyse hiçbir zaman yazılım değildir, yayın hızıdır. Bir editörün tek bir içeriği yayına almak için harcadığı dakika, günde yayımlanan içerik sayısıyla çarpılır. Toplu yükleyicinin yaptığı iş o çarpımı küçültmekti. Mühendislik tarafında sıkıcı görünen bu işler, kurumun günlük çıktısını doğrudan değiştiren işlerdir.
Okuma süresi ise en küçük ama en çok yerde görünen özellikti. Yazılım tarafında basit bir hesaptır; ürün tarafında okura verilen bir sözdür. Bir içeriğe tıklamadan önce ne kadar zaman isteneceğini bilmek, tıklamayı da tıklamamayı da kolaylaştırır.
Beş ay
Ocak 2017’de başladım, Mayıs 2017’de ayrıldım. Haziran 2017’de ICY Capital’e geçtim.
Onedio benim için bir dönüş noktasıydı. San Francisco’da kurduğum Monet Labs Mayıs 2016’da kapanmıştı; Onedio’da kurucu koltuğunda değil, mühendis koltuğunda oturuyordum. Bunun rahatlatıcı bir tarafı var ve dürüstçe söylenmesi gereken de bu: şirketin ne yapacağına karar verme yükü sizde değilken, işin kendisine daha çok bakabiliyorsunuz. Beş ayda dört ürünün yayına girmesinin bir sebebi de budur.
Gömülü mağazanın asıl faturası da sonradan gelir. Sitenin her yeniden tasarımı mağazayı da kapsar; her ödeme kuralı değişikliği sizin işinizdir; her yeni mobil sürüm mağazayı da taşımak zorundadır. Hazır bir altyapıda bunlar başka bir şirketin bakım yükü olarak durur. İçeriğin içinde satış yapmayı seçtiğiniz anda o yükü kendi ekibinize almış olursunuz — ve bu karar, verildiği gün değil, ikinci yılında tartılır.
Geriye kalan cümle şu: bir içerik ürününün içine ticaret koyacaksanız, ticareti içeriğin diline çevirmeniz gerekir; tersi işlemiyor. Okur mağazaya gitmez. Mağaza, okurun zaten durduğu yere gelir — ve o yere gelebilmek için genellikle mağazayı kendiniz yazmanız gerekir.
Teknoloji
- Arka uç
- Ön yüz
- API
- E-ticaret
Bağlantılar
- Onedio(yeni sekmede açılır)
onedio.com
Yorumlar
Burada henüz kimse konuşmamış. İlk sözü siz söyleyin — katılmadığınız yeri yazarsanız daha da iyi.
Yorum yazın
Yorumlar önce bana geliyor. Onayladığımda burada, adınızla birlikte yayımlanıyor.