
Konuklar: Sevgi Borazan, Burkay Maldar, Halil Bülent Orhon, Mustafa Küçük
59. bölümümüzde konuğumuz Search Suggestion ekibi oldu. Ekip yapısını, projelerini, teknoloji stack seçimlerini ve çok daha fazlasını konuştuk!
Trendyol Talks'da Trendyol'daki kültürümüzü, kültürümüzden beslenen iş yapış biçimlerimizi ve ritüellerimizi konuşuyoruz. Trendyol Talks podcast kanalımızı takip etmeyi unutmayın!
Transkript
Selam ekip, ben Storefront TRPDP ekibinden Cengiz.
Ben Productivity ekibinden Erdem.
Teknoloji ekiblerini tanıdığımız ve süreçler, teknolojiler gibi konuları konuştuğumuz Selam Ekip Podcast serisinin 59.
bölümünde Search Suggestion ekibiyle beraberiz.
Search Suggestion ekibini tanıyıp, ekip yapısı, kullanılan teknolojiler, pratikler gibi konuları konuşacağız.
Arkadaşlar hepinize hoş geldiniz.
Hoş bulduk. Hoş bulduk.
Hoş bulduk. Bugün yine güzel bir ekiple beraberiz.
Özellikle işte biz client ekibi olduğumuz için benim çalıştığım ekip.
Search ekipleriyle çok yakından çalışıyoruz.
Sx tarafında falan özellikle Search Session'la bayağı bir çalışmışlığımız var.
O yüzden sizi ağırlamaktan mutluluk duyuyoruz arkadaşlar.
Kısaca kendinizi tanıtabilir misiniz acaba?
Selamlar herkese. Ben Burkay.
Yaklaşık iki buçuk yıldır Trendyol'da Search Session ekibinde full stack developer olarak çalışmaktayım.
Topu sevgiye atayım. Merhabalar herkese.
Ben Sevgi. Ben de iki buçuk senedir Search Suggestion takımında developer olarak görev almaktayım.
Topu Halil'e atıyorum. Selamlar herkese.
Ben de Halil. Yaklaşık dokuz aydır Suggestion'dayım.
Developer olarak çalışıyorum. Deyip topu Mustafa'ya atayım ben de.
Selamlar. Ben Mustafa. Yaklaşık iki buçuk senedir Search'in ekibinde çalışıyorum.
Dev'in test rolünde. Selamlar tekrardan.
Hoş geldiniz hepiniz. Şimdi zaten ekip böyle şey.
Aslında ismi kendini açıklıyor birazcık ama Search Sajes için ekibi neler yapar, nelerden sorumludur diye bir sorsam nasıl özetleyebiliriz?
Sajes için bir domain takımı.
Otobük, Otocomplete ya da Otosajes için diye de geçiyor farklı domainlerde.
Bizim temelde bahsedebileceğimiz iki tane akışımız var.
Sajes için Homepage dediğimiz bu trend yolu, trend yolda Search Box'a ilk tıklandığında açılan sayfa.
Buradaki popüler aramalar, keşfet gibi alanlar ve...
Bunun dışında kullanıcı yazmaya başladığında aslında bu aşağıda önerdiğimiz 11 tane tekst suggest için diyebiliriz.
Bu feature'ların development'ını yapıyoruz.
Aslında dediğiniz gibi adımdan da belli yaptığımız şey böyle.
Biz uçtan uca bir ekibiz.
Web ve MWeb tarafında frontend'inin geliştirmesini yapıyoruz.
Ve bunun dışında datanın hazırlanması, bu tekstlerin hazırlanması ve kullanıcıya, clientlere survey edilmesi aşamasından.
Biz sorumluyuz. Burada main tema geliştirmesini yapıyoruz.
Burada temelde amacımız kullanıcının geniş spektrumdaki aramasını kolaylaştırmak.
Aslında aradığını bulmasına yardım etmek.
Yeni içerikler keşfetmesini sağlayıp bir guide olmaya çalışıyoruz kullanıcıya.
İyi bir deneyim sundurmaya çalışıyoruz.
Search'te. Öyle.
En temel haliyle şimdi böyle diyebilirim.
Çok iyi. Ben şeyi biliyorum.
Çok fazla search ekipleri çok fazla aslında dala ayrılıyor diye biliyorum.
Yani işte search tarafının sizin suggestions haricinde bir de bildiğim kadarıyla işte...
yapay öğrenmeyle falan çalışan bir model tarafı da var işte Data Science'da falan diye biliyorum.
Onun dışında işte Search tarafıyla alakalı iki ekip, en azından iki üç ekip daha biliyorum.
Bununla alakalı bir soru soracağız zaten ileride ama böyle çok fazla ekip var mı Search tarafında?
Mesela işte kaç dala ayrılıyor?
Sizin haricinizde böyle kaç dal söyleyebiliriz?
Search ekipleri, aslında biz Search and Social team'i altındayız Discovery Tribe'ında.
Suggestion olarak yer alıyoruz.
Aynı zamanda Search Core dediğimiz Search Result sayfalarında Development ve Maintenance'den takım var.
Aynı zamanda NLP takım var ve Data Science tarafı da var dediğiniz gibi.
Data Science tarafından çok direkt bir beraber çalışıyoruz onlarda aslında.
Bu kullanıcılara önerdiğimiz Suggestion textlerin bu sıralaması olsun, oraların iyileştirilmesi olsun.
Hep böyle şey aslında siz giyip elbise yazdığınızda size önerilen İşte fırfırlı elbise, kırmızı elbise gibi şeyler Data Science'ın hesapladığı aslında çeşitli metriklerden hesapladığı sonuçlara göre hesaplanıp
sunuluyor bize. Biz de onlara göre sıralıyoruz.
Ondan dolayı Data Science ekibiyle çok yoğun bir şekilde çalışıyoruz.
Aynı şekilde NLP takımıyla dediğim gibi çalışıyoruz.
NLP takımı bizim işimiz direkt dilde alakalı.
Dilde alakalı bir şeyde NLP'nin...
yazdığımız ya da kullanıcıya önerdiğimiz şeylerin dil bağlamında uygun olup olmadığını aslında onlardan destek alarak karar veriyoruz.
Ve onun dışında onlar bize bu ekleyeceğimiz aslında bu dataların oluşturulmasını onlar bize besliyor.
Örneğin bir product'ın üzerinden onlar çeşitli bu sadece tekst dediğimiz şeyler üretiyorlar.
İşte Adidas Stensimit ayakkabı gibi bir şey diyebiliriz.
Mesela product'ın description'ında.
Onlar bu şeyleri üretip bize veriyorlar.
Biz bunları kullanıcıya sunuyoruz.
Dediğim gibi birçok takımla bağlantılı çalışıyoruz aslında.
Süper, süper. Zaten bununla alakalı ileride de konuşacağız.
Bildiğimden daha da geniş bir aslında domenilmiş Surgeon Social.
Harika. Okey, Sagash'ınla devam edelim.
Şimdi Sagash'ın ekibini tanıdık, neler yaptığını falan merak ediyorum.
Ekipteki bir takım üyesi bir günü nasıl geçiriyor?
Bir günü nasıl geçiyor ekipteki bir takım üyesinin?
Yani işte burada ecel yönetimi konusunda ecel olarak siz Sagash'ınla neler yapıyorsunuz?
Ben cevap vereyim bu soruya.
Biz suggestions olarak haftalık sprint koşuyoruz.
Güne daily ile başlıyoruz.
Daily de klasik bir gün öncesi hangi işleri yaptığımızı ve bugün ne yapacağımız hakkında takıma update ediyoruz.
Ve bizim takımımızdaki herkes her işi yapıyor.
Yani bir kişi bir task yaptıktan sonra backlogdaki sıradaki taskı çekerek ilerliyor.
Peki taskları nasıl hazırlıyoruz?
Technical grooming ve normal sprint...
business tarafındaki taskları grumladığımız iki ayrı sesyonumuz oluyor.
Teknik grumlamada kendimiz analizini yaptığımız taskların detayını konuştuğumuz ya da anlamadığımız bir şey varsa bunu biz bir bakalım arkada detaylandıralım şeklinde içeriğini
dolduruyoruz. Ya da böyle iyileştirmeyi gördüğümüz, fark ettiğimiz bir şey, refaktör etmemiz gereken işleri bu toplantılarda.
Birlikte değerlendiriyoruz.
Çoğunlukla pair programming yapıyoruz ama tek çalıştığımız işler de oluyor.
Onun dışında hep çalışmıyoruz.
Bazen game session'lar yapıyoruz.
Mesela biz gün sonlarında ya da özellikle cuma günleri parolla oynamayı çok seviyoruz.
Onun dışında sprint'imiz de retro ve planlamayla.
Bitiriyoruz haftalık olarak.
Diğer Surge takımlarıyla da birlikte olan bazı sessionlarımız var.
Tribe bazında ve Surge tarafında warm sessionları oluyor.
Warm'ın açılımı da haftalık operasyonel review meeting şeklinde.
Biz böyle çalışıyoruz. Gayet güzelmiş ya.
Keyifli bir ekip gibi duruyor. Zaten şey oluyor bizde genelde.
Katılan her ekibe böyle bizim de bir gidip o ekiple çalışasımız geliyor.
Bu ekip şu an benim için onlardan biri oldu.
Şimdi anladığım kadarıyla ekibin en yeni üyelerinden biri.
Görece yeni üyelerinden biri Halil.
Burada sana şeyi sormak istiyorum.
O onboarding sürecin nasıl oldu bu ekibe geldiğin zaman?
Nasıl süreçlerden geçtin?
Ekipten ne kadar destek aldın?
Birazcık onlardan bahsedebilirsen süper olur.
Tabii bahsedeyim abi. Bence onboarding süreci Trendyol'da genel olarak çok iyi işleyen bir süreç.
Bende şu şekilde oldu.
Burada hani geldiğimde bana bir buddy atandı aslında.
Sajetisyen ekibinden. Şu an kendisi aramızda değil maalesef ama.
Beni hani işe başlamadan bir gün önce aradı.
Hani yarın hangi linke geleceğimi falan söyledi.
Daha sonrasında ilk gün böyle biraz tanışma günü gibi oldu aslında.
İlk değil de herkes birbirini tanıttı.
Böyle biraz hani şakalar falan döndü.
İlk değilimizde. Devamındaysa hani şey belliydi.
Bütün program benim nasıl onboard olacağım, neleri öğreneceğim.
Ve hani ilk haftadan şeye başladık.
Bütün arkadaşlarımla sırayla pair olarak.
Hani onlar bana sistemde neler kullandıklarını, nereyi nasıl yaptıklarını, projeleri hani bunların üzerinden geçerek bana bilgiler verdiler.
Trend yolu ve sistemi tanıttılar.
Yani bence Sajetsin ekibinde takım olgusu çok güçlü.
O yüzden hiç zorlanmadım.
Çok yardımcı oldular arkadaşlarım.
Bu yani eğitim sürecini tamamladıktan sonra da hemen pair olmaya başladık aslında.
İşleri böyle... Pair yapmaya başladık ve pair olduğunuz zaman aslında şeyde öğreniyorsunuz.
Bir iş nasıl yapılır?
Burada işlem yani süreç nasıl yürüyor bir işi yaparken?
Buna da alıştıktan sonra artık yavaş yavaş insan kendisi daha kompleks işler almaya başlıyor.
Bence çok güzel bir süreçti yani.
Teşekkür ediyorum tekrardan ekibe.
Tabii Halil şimdi body'nin burada olmamasının getirdiği bir rahatlık da olmuş olabilir şeyde.
Yani eğer gerçeklerin, düşüncelerin böyle değilse söyle bize.
Bak bu podcast gerçeklerin ortaya çıkması üzerine çok önemli bir podcast.
Varsa bir şeyin, şimdi arkadaşlar seni etkilemesinler, varsa bir şikayetin buradan söyle, herkes duysun.
Şöyle söyleyeyim. Abi ya birinci ya ikinci haftamdı.
Vadim sağ olsun rotate etti başka takıma.
Ama öyle bir sıkıntı yaşadık.
Ama kendisi zaten hala çok yakın olduğumuz birisi.
Yani bizim hala ekibin içinde olan birisi diyebiliriz yani.
Yine hala yardımcı olmaya devam ediyor.
Ama yani teknik olarak bizim takımda değil şu an.
Ben çok uğraşıyorum bu konuda.
Tam beni şeyden vurdun yani can ömrümden vurdun.
Kendisine söylemek istediğim çok şey var ama onu ben birebir de söylüyorum.
Şimdilik burada bu kadar bırakayım söyleyeceklerimi.
Peki. Nasıl istersen.
Okey süper. Okey şimdi biraz da şeyden konuşalım.
Succession ekibi organizasyonel olarak yani organizasyonel yapı olarak anladığım kadarıyla Succession tarafında birden fazla ekip durumu var.
Mesela bu Succession ekiplerinin organizasyon yapısı nasıl ve hangi ekiplerle birlikte çalışıyor?
Ben bahsedeyim. Biraz bahsetmiş oldum girişte de aslında.
Biz organizasyon olarak Discovery Tribe'ın Search and Social...
Takımın altında çalışıyoruz.
Olayımız aslında search'e yönlendirmek temelde.
Bahsettiğimiz gibi direkt bundan dolayı search ekibiyle çok yakın bir şekilde çalışıyoruz.
Search'e yönlendirelim, iyi bir şekilde yönlendirebiliyor muyuz?
Search'e yönlendirmek değil, search result sayfasına iyi bir şekilde yönlendirebiliyor muyuz?
Kullanıcıya no result dediğimiz, yani hiçbir şey önerememe durumuna düşürüyor muyuz?
Bizim önerdiğimiz bir suggestion text de bir şeydi.
Bundan dolayı aslında direkt search ekibiyle, search core ekibi diye geçiyor bizim çevimizde.
Onlarla çok yakın şekilde çalışıyoruz.
Şeylerin kalitesi direkt onlarla related.
Onun dışında dediğim gibi bir NLP takımıyla yoğun bir şekilde çalışıyoruz.
NLP takımı, data science takımı, onlarla yoğun bir şekilde şey yapıyoruz.
Bu kadar aklıma geldi.
Süper. Aslında bayağı komplike bir yapı var orada.
Güzel bir domain. Çalıştığınız ekipler de bence kritik ekipler.
Şimdi ekibin aslında baktığımız zaman yapısı birazcık şey.
Bizim burada ağırladığımız bekent ekipleri gibi değil.
O yüzden ben şey kısmını aslında öğrenmek istiyorum.
Teknoloji tarafında tekstek olarak neleri kullanıyorsunuz?
Birazcık onlardan bahsedebilir miyiz?
Bununla da ben bahsedeyim abi.
Şu şekilde yani Burkay aslında başta bahsetmişti.
En tane bir ekibiz biz. Yani bu ne demek?
Datayı hazırlıyoruz, üretiyoruz.
Aynı zamanda bunu server ediyoruz ve frontend'de user'a gösterdiğimiz kısımlara da biz temas ediyoruz.
Yani datayı hazırlama kısmında biz Airflow kullanıyoruz, Python, SQL BigQuery kullanıyoruz.
Daha sonrasında bu ürettiğimiz datayı Elasticsearch'te indekslememiz gerekiyor.
Burada Kafka kullanıyoruz. Bu datayı Kafka'ya basıyoruz ve consumerlarımız, Go dilinde yazdığımız, Golang'de yazdığımız consumerlarımız bu datayı konsüm ediyor ve Elasticsearch'te indeksliyor.
Elasticsearch'e bizim ana database'miz diyebiliriz.
Yani bir kullanıcı textbox'a bir şeyler yazdığı zaman searchbox'a biz Elasticsearch'a gidip aramamızı yapıyoruz.
Datamız burada duruyor. Bu datayı serve ederken de Java, yani bir API'miz var, Sagesis'in API.
Bu API Java'da yazılmış bir API.
Aynı zamanda frontend'de React kullanıyoruz.
Yani User Interface kısmında.
Hatta SFX Framework'ı var Trendyol'un kendi bünyesinde geliştirdiği.
SFX Framework'ünü kullanarak React'lerin de...
programları yapıyoruz frontend'de de.
Süper. Valla yani backend tarafı zaten ayrı detaylı şekilde ama tabii benim taraf biraz frontend olduğu için SFX'de de beraber yani SFX projesinde de beraber çalıştığımız için biraz
biliyorum yaptığınızı.
Hatta bizim oradan işte ana sayfaya girerse kullanıcı var.
Search'e tıkladıkları zaman çıkan suggestion tarafını suggestion ekibi provide ediyor diye biliyorum.
Oldukça da güzel bir çalışma.
Ellerinize sağlık şimdiden. Şimdiden.
Zaten yapmışsınız. Ellerinize sağlık.
Okey. Şimdi takımı tanıdık.
Hangi teknolojileri kullandığını biraz üzerinden geçtik.
Fakat her takımın aslında Domain ile birlikte kullandığı teknolojilerle birlikte çeşitli zorluklar içerisinde kalabiliyor.
Çeşitli challenge'ları olabiliyor.
Sizin için mesela iş hayatında suggestion olarak en büyük challenge'lar nelerdir?
Şöyle, biliyorsunuz ki Trendyol Türkiye dışındaki regionlarda da hizmet vermeye başladı.
Bu bizim için suggestion olarak challenge oluşturdu.
Çünkü yeni gelen dilleri biz bilmiyoruz.
Linguistic acceptance olarak kullanıcıya doğru şeyleri önermemiz gerekiyor.
Burada translation kalitemiz çok önem arz ediyor.
İlk Arapça dilini entegre ederken mesela böyle elastik tarafında analyzer falan verinlemesine kullanıyorduk ve böyle 101 seviyesinde takımca Arapça öğrenmiştik.
Elbise kelimesini ezbere yazabiliriz herhalde hepimiz.
Bunun yanında yeni entegre ettiğimiz future'larda da servislerimizin response time'ını korumamız gerekiyor.
Çünkü kullanıcı bir şey yazdığında enter'a basmadan önce suggestion sunup onu suggestion'dan search sayfasına yönlendirmeyi amaçlıyoruz.
Dolayısıyla bizim bu termlerimizin anlamlı olması bizim için challenge'dır.
Şimdi suggestion ekibi olarak riskli ve yüksek trafik alan bir ekiptesiniz aslında.
Burada güvenlik önlemi olarak ne tarz şeyler yapıyorsunuz?
Birazcık bunlardan bahsedebiliriz belki.
Şöyle abi, Search genelinde kullandığımız bazı pratikler var.
Bunlar şu şekilde. Developer herhangi bir geliştirmeyi yapıp ilgili branche gönderdiği zaman o branche'de orada bir deployment oluşturuyor o branche'den.
O branche üzerinde fonksiyonel testlerini yapıyor.
İlgili geliştirmeyle ilgili testlerini yazıyor.
Daha sonrasında da bu aşamaları sukses ettikten sonra kodu develop main branche'i mörşe aslında.
Main branche'i mörşedikten sonra işte sonar, security adımları çalıştıktan sonra yine test.
testler çalışıyor. Orada da geçtikten sonra yavaş yavaş proda çıkıyor.
Stage ve pre-proda çıktıktan sonra proda çıkıyor.
Proda çıkarken kanarıyla çıkıyor.
Step by step trafiği yavaş yavaş vererek.
Orada bir herhangi bir error olursa deployment'u geriye alıyor.
Burada prod'a çıktıktan sonra da çıkış anında sonrasında bir süre belli periyotlarda bakıyoruz herhangi bir dert var mı?
Responsiyon gelişmiş mi? CPU memory usage artmış mı?
şeklinde kontrol ediyoruz.
Yine zaten prod'da tanımlı alertler de var.
Oradan da herhangi bir şey olursa haberimiz oluyor.
Burada yine prod'da daha önceki karşılaştığımız bazı instantlar sonucunda aldığımız maddelerden belli periyotlarda smoke test çalıştırıyoruz.
Bu şekilde herhangi bir aksaklık olursa bundan çabucak haberdar olmuş oluyoruz.
Hemen Slack kanalına mesaj atıyor.
Oradan haberimiz oluyor herhangi bir dert var mı diye.
Bu aslında fonksiyonel taraftı.
Bir de şey tarafı var.
Bizim uygulamalar yüksek trafik alıyor.
Yaptığımız bir geliştirme bizim response time'ımızı, memuru yüzücümüzü vs.
etkileyebiliyor. Bunun için eğer ki bizim geliştirmemiz çok kritik bir şeyleri etkileyeceğini düşünüyorsak burada low test koşuyoruz.
yaptığımız geliştirmeyle ilgili.
Onun sonucunda bu geliştirmeyi optimize ediyoruz.
Ya proda alıyoruz ya da yapmaktan vazgeçiyoruz aslında.
Ve bir de şey var.
Aylık düzenli olarak load test koşuyoruz.
Black Friday'e kadar servislerimiz hazır olması için her ay bir gün bir gece load test koşup aslında servislerimizin sağlığını düzenli olarak kontrol ediyoruz.
Bu şekilde diyebilirim. Süper.
Load test konusu özellikle çok kritik.
Hele ki Sizinki gibi bir domayında bence çok güzel, çok verimli bir şey.
Oradan şuraya bağlayayım.
Şimdi uygulamaları, ürünlerimizi yaptıktan sonra takip etmemiz de çok önemli.
Dolayısıyla monitör etme konusu da birazcık kritik oluyor.
Siz uygulamalarınızı, ürünlerinizi nasıl monitör ediyorsunuz?
Ve monitör ederken hangi metriklere bakıyorsunuz?
Ve sonrasında bundan nasıl aksiyonlar çıkarıyorsunuz?
Şöyle abi, ürünleri genelde nivrilik.
Grafana ve Tivana üzerinden monitör ediyoruz.
Son zamanlarda nibirlik biraz daha az.
İçeride oluşturulan custom dashboardlar var bayağı kullanışlı.
Oralardan biraz daha fazla monitör ediyoruz.
Baktığımız metrikler P99, P95, throughput, response time, CPU memory usage, bizim servislerimizin gittiği external servisler, Kafka legleri, bu
tür metriklere bakıyoruz aslında monitör ederken.
İçeride bizim kendi custom Grafana dashboardlarımız var.
Custom oluşturduğumuz. Aynı zamanda Tranquil içerisinde geliştirilen bazı monitoring ekranları var Grafana'da.
Oradan da kontrol ediyoruz.
Yine bizim servislerimize gelen BFF'leri de monitörüyoruz.
Bazen oralarda da dert olabiliyor.
Oraları da kontrol ediyoruz.
Metikleri kontrol ettiğimizde herhangi bir yavaşlık, herhangi bir dert görürsek burada bunun Hemen analizini yapıp teknik algoritmayı getiriyoruz.
Daha sonrasında TechGurum'da bunu konuştuktan sonra önceliklendirerek serpentleri alıyoruz aslında.
Geçen sene yaptığımız bir geliştirme sonucunda örnek olarak bizim response time'ımız arttı.
Kanala nivrelikten adjort mesajı geldi.
Burada bizim elastikte kullandığımız bir field'ı yanlış type'da setlemişiz.
Onun sonucunda elastiğe çok fazla yük binmiş.
API tarafında response time artmıştı.
Burada hemen bunun aksiyonunu alıp aslında geriye o field'ın olması gerektiği gibi setlemiştik.
Bu tür durumlar oluyor. Hemen buna taksiyon alıyoruz.
Bir de şey var. Prod'da bir feature çıkarken konflikte çıkıyoruz.
Herhangi bir dert çıkartıyorsa o feature, bunu monitör ettiğimizde görüyorsak bunu hemen konflikte kapatıyoruz.
Bu şekilde tekrardan eski haline döndürmüş oluyoruz.
Gayet güzelmiş. Togo Sivinç'inki olayı zaten bence şey, kritik güzel bir olay.
Şimdi bahsetmek istediğim bir konu da benim.
Aslında bu incident ve A4 tarafı.
Biliyorsunuz tren yolu yerlerinde zaten on kol uygulamamız var.
A4'leri işte oradan yönetiyoruz.
Incident yaşandığı zaman nöbetçiye işte bildirim geliyor falan.
Bunun dışında sizin uyguladığınız ekstra bir pratik var mıdır?
Ya da mevcut sisteminiz?
Nasıl çalışıyor aslında e-sınt ve alert yönetimi tarafında?
Onlardan da bahsedebiliriz bence.
Tabii abi. Alerting tarafında aslında Kibana tarafında log alertlerimiz var.
Prometheus tarafında seninle bahsettiğim on-call alertleri.
Aynı şekilde yine Nivre'li tarafında da alertlerimiz var.
Bazı uygulamalara alert tanımlayamıyoruz.
Bu uygulamalar için de custom ufak skriptler yazıp bunları schedule olarak çalışıyoruz aslında.
Bu şekilde alerting mekanizması kurduk.
Alertlerimizde response time, error rate, throughput anomaly alertleri, Kafka alertleri, call success alertleri var, call restart vesaire.
Yine aynı şekilde New Relic tarafında da error rate, throughput vesaire alertleri var.
Alertleri sürekli geliştirmeye çalışıyoruz.
Herhangi bir instance sonucunda eğer şu alertimiz olsaydı biz bununla karşılaşmazdık diyorsak hemen o alerti taskını alıp eklemeye çalışıyoruz.
Bunun dışında business alertleri var.
Business alertleri de aslında clientlerin attıkları eventler üzerinden ona BigQuery tablolarını kaydediliyor.
Orada herhangi bir dert varsa onu anlamak için.
Örnek olarak mesela session'da elbise yazdığımızda event atıyoruz.
Event'te tekst alanı boş geldi.
BigQuery'deki tabloya impression ya da clickstream tablosuna tek salona boş geldi mesela.
Bu tür durumları anlamak için de trend çalışımına geçirilen Pidgey diye bir ürün var.
Burada alertlerimizi tanımlıyoruz.
Burada herhangi bir dert varsa yine alert trigger oluyor.
Sley kanalına mesaj geliyor.
Buradan biz gerekli aksanı çıkartıp hemen ilerletiyoruz.
Ben de instant kısmından bahsedeyim kısaca o zaman.
Yani incident oluyor tabii istemesek de.
Trendyol bayağı hızlı bir yer. Yani yaptığımız işler çok hızlı bir şekilde, en kısa şekilde production'a çıkmaya çalışıyoruz.
Yani dolayısıyla incident'lar başımıza geliyor.
Ama yani incident'larda bizim ilk önceliğimiz kanayan yarayı durdurmak, ateşi söndürmek oluyor.
Yani ilk başımıza geldiğinde bu neden oldu diye düşünmek yerine müdahale etmeye çalışıyoruz.
Bu müdahaleyi yaptıktan sonra amacımız ise şeffaflık sağlamak oluyor.
Trendyol'un içinde RCA kaydı girdiğimiz bir sistem var aslında.
Bir RCA kaydı giriyoruz.
Burada aslında biz böyle bir incident yaşadık falan gibi bir bilgi verdiğimiz bir kayıt sistemi bu.
Daha sonrasında da postmortem dökümanı hazırlıyoruz.
Postmortem dökümanı da şöyle bir şey oluyor.
Yani incident'ın detayıyla ilgili bilgi veriyoruz insanlara.
Biz bu incident'ı şu yüzden yaşadık.
Başımıza bu geldi. Eğer şöyle bir sistemimiz olsaydı biz bunu daha erken park edebilirdik.
Veya instant esnasında şöyle bir müdahale yapsaydık bu incident'ı daha hızlı çözebilirdik gibi.
Hani ders çıkarmaya çalıştığımız sonuçlarımızı bu dokümana yazıyoruz.
Ve bu dokümanda da aksiyon maddelerimiz oluyor.
Az önce Mustafa'dan bahsettiği gibi.
Yani örneğin biz şöyle şöyle bir alert mekanizmamız olsaydı bu incident'ı yaşamazdık dediğimiz şeylerin hemen taskını açıp işini yapıp bir daha bu durumu yaşamamaya çalışıyoruz.
Ve bu postmortem dokümanında da search ve discovery warm dediğimiz session'larımız var.
Bu seçimlerde başka takımlara da sunuyoruz.
Bu sayede onlar da bize sorular soruyor.
Bizim görememiş olduğumuz bir şey varsa bizde farkındalık yaratıyorlar.
Ve aynı zamanda bu dokümandan onlar da ders çıkarmaya çalışıyor ki bu insıntı bir daha hiçbir takım yaşamasın.
Sadece yaşayan takım değil.
Böyle bir sistemimiz var.
Yani genel olarak trend yolda insıntı yapmak çok sıkıntı olan bir şey değil.
Ama insıntıdan ders çıkarmamak büyük bir sıkıntı.
Yani her insıntıdan ders çıkarıp bir daha başımıza gelmemesi için uğraşıyoruz.
Böyle bir sistem. Süper.
Valla alerting mekanizması da oldukça detaylı.
Incident'a yaklaşımımız da oldukça güzel.
Kesinlikle katılıyorum. Neden olduğundan ziyade bir daha buna bu kadar takılmaktan ziyade bunu nasıl çözebiliriz ve bir daha bunu nasıl yaşamayız üzerine odaklanmak, ilerlemek
bence daha mantıklı, daha güzel.
Hemen bağlayıp şeyi sorayım.
Genellikle birçok ekibe de soruyoruz bunu.
Böyle unutamadığınız, sageşin içerisinde unutamadığınız bir incident'ınız var mı?
Tabii ki var. Birden fazla geliyor.
Ama böyle komik olan bence şeydi.
Arapça'da, Arap region'ında biz kullanıcılara hem İngilizce hem Arapça destek veriyoruz.
Dolayısıyla bizim Elastic'de iki tane indeksimiz var.
Bir tanesi İngilizce, bir tanesi Arapça ve bunları el yaz tanımlaması yapıyoruz.
Bir indeksi hem...
İngilizce hem Arapça alias vermişiz.
Dolayısıyla kullanıcılar Arapça sitede Arapça ararken İngilizce suggestion almıştı.
Benim aklıma gelen bu.
Ben burada görüp artırmak istiyorum bu incident'ı.
Burada bir de şöyle bir şey oldu.
Bu başımıza geldi. Hemen çözdük.
Çözdükten sonra hala böyle çok az sayıda suggestion geliyordu Arapçada.
Eş zamanlı olarak yine bir indeks yanlış verme gibi bir hata daha yapmışız datayı üretme kısmında.
Yani Arapçaya İngilizce indeksi beslemişiz gibi bir şey olmuş.
Eş zamanlı olarak onu da fark etmiştik.
Böyle biraz moral bozucu bir gündü.
Tam bayram öncesi, tatil öncesiydi.
Ama oluyor yapacak bir şey yok.
Gerekli aksiyonlarımızı aldık diyelim buradan.
O şekilde. Ya zaten evet Cengiz'in de başta dediği gibi her ekibe soruyoruz genelde bu soruyu.
Çok farklı senaryolar, farklı hikayeler var.
Sizinki yine temiz bir insanmış bence bu arada yani.
Hızlıca aksiyon alıp çözebildiğiniz bir şey olmuş.
Çok daha sıkıntılı insanlıklar duyduk.
Benim merak ettiğim bir konu da şey.
Şimdi Sajıs'ın tarafında deneyimi iyileştirmek için neler yapıyorsunuz?
Ya burada işte atıyorum...
Müşterilerin aradığı kelimelerin takipleri yapılıyor mu?
Hangi kelimeye neyi vermişiz?
Ne kadar doğru, ne kadar başarılı bir şey yapabiliyoruz?
Hani sayısını verebiliyoruz.
Bunları nasıl takip ediyorsunuz?
O kısmı merak ediyorum biraz.
Dediğim gibi aslında bu önerdiğimiz kelimeleri, sayısını test dediğimiz bunların takibini yapıyoruz.
Tamam yani takibini yapıyoruz derken bir kullanıcı geldi yazdı elbise ve buna tıkladı.
Buradan product da tıkladı ve bunu biz ordura dönüştürebildik mi?
Bunlar related olarak ya da gösterdik biz bu kullanıcıya gösterdik ama biz tıklatabildik mi bu önerdiğimiz suggestion tekste gibi aslında metrikleri tutuyoruz.
Burada data science ekibiyle yine beraber çalışıp bunların metriklerini analiz ediyoruz ve buradan aslında aksiyonlar çıkıyoruz, iyileştirmeler çıkartıyoruz bunlarla bağlı
olarak da. Ve dashboardlar oluşturup bunları dashboardlardan monitör edebileceğimiz yapılar kuruyoruz.
Onun dışında söyleyebileceğim, aynen bunlar geldi şu an aklıma.
Şu son kısmı kesebiliriz ama onun dışında söyleyebileceğim.
Ben bir ekleme yapmak istiyorum.
Burayı somutlaştırabiliriz.
Yine Türkçe dışındaki dillerde kullanıcıların aradığı şeyler, termler daha doğru dil bakımından.
Biz burada User Search'ları Data Science takımlarının bu eventler doğrultusunda, metrikler doğrultusunda generate etmesiyle kendi korpusumuza, turnhouse'umuza dahil edebiliyoruz.
Bunu ekleyebiliriz.
Bunun dışında şey söyleyebiliriz bir de.
Bu iyileştirmeler yaptığımız şeyler de aslında çeşitli Data Science ile beraber çalışıp bu skorlama, kullanıcılara önereceğimiz şeylerin sıralamasını, hesaplamasını yapıp bunların hepsini bir AV...
teste sokuyoruz her seferinde.
Ona göre karar veriyoruz.
Eğer bu bir iyileştirmeye sebep oldu mu ya da olmadı mı ve deneyimini azalttı mı kullanıcının CRC'yi etiketti mi olumsuz yönde.
Ona göre de aslında değişiklik yapıyoruz.
Ya o feature'u yaptığımız değişikliği production'a alıyoruz ya da iptal ediyoruz.
Bunu söyleyebilirim ben de.
Harika. Süper. Valla Ben çok keyif aldım arkadaşlar.
Çok teşekkür ederim. Son soruya geçeceğim.
Ekip olarak teknoloji kullanımınız, işte alerting'e, monitoring'e yaklaşımınız, kullandığınız teknolojiler vs.
oldukça güzel. Son olarak her ekibe sorduğumuz klasik sorumuz.
İş dışında etkinlik olarak neler yapıyorsunuz?
Çünkü birçok ekiple bunu konuştuğumuzda işte araba seven arkadaşlar var, takip eden arkadaşlar var, mangala pikniğe giden arkadaşlar var.
İşte tekne gecesine çıkan arkadaşlar var, oyun oynayan arkadaşlar var, çeşitli oyunlar oynayan arkadaşlar var.
Sizde de kulağıma bir iki şeyler geldi.
Garip, bana garip gelen.
Sizden de bir duymak isterim.
Neler yapıyorsunuz başka? Abi biz böyle biraz sey bir ekibiz ya.
Gerçekten hani... Sıcak, kanlı ve birbirimizle de böyle vakit geçirmeyi ve uğraşmayı çok severiz.
Hani birbirimizle çok sataşırız.
Öyle bir ekibiz. Etkinlik olarak da mesela en son şey örneğini verebiliriz.
Bir Haziran'da ekipçe Olympos'a gittik.
Hani gündüzleri çalıştığımız, akşamları da böyle denize girdiğimiz, kutu oyunu oynadığımız falan bir hafta geçirdik.
Yani güzel bir haftaydı. Seçtiğimiz oyunlar da genelde şey üzerine oluyor.
Birbirimize yalan söyleme, birbirimizle uğraşma.
Hani böyle vampir köylü tarzı oyunlar veya Secret Hitler diye bir kutu oyunu vardı.
Bang diye bir oyun var. Yani bu tarz oyunlar ilgimizi çekiyor genelde.
Aynı zamanda ben bir şeyden daha bahsetmek istiyorum.
Hani ekiple ilgili. Onboarding sürecimde bir İstanbul'a gitmiştim.
İstanbul'a gittiğimde bana dediler ki tamam sen Suggestion'a onboard oldun ama son iki madden kaldı artık onboardingini tamamlaman için.
Ben de Allah Allah ne falan dedim böyle teknolojik bir şey falan çıkacak sandım.
Yok dediler. Baranet ve Alengir Nergile.
Yani hep beraber toplandık.
Baranet diye bir bizim etçimiz var.
Oraya gittik pirzolamızı yedik.
Üzerine de Alengir Nergile'ye gidip 101 oynadık.
Reklam gibi olmasın ama. Bunları reklam diye söyleyelim de yani Instagram'da zorunluysa sanıyorum podcast'ta da zorunludur.
İsim veriyoruz sonuçta.
Dediğim gibi yani bu bizim suggestions için olmazsa olmaz bir şey.
Buradan da Ali Rıza abiye selam söylemek istiyorum.
Bu genelde bu yeme içme ve nargile konularında ipi gövesleyen kişi her zaman oydu ekibimizde.
Bu şekilde söyleyebilirim.
O zaman Trendyol10 koduyla giden arkadaşlara bir indirim mi diyoruz Halil?
Abi ne diyeceğimi bilemedim.
Süper. Süper.
Gerçekten Nargile hiç duymamıştım.
Bunu da duymuş oldum.
59. bölümdeyiz.
59 bölümde Nargile de geldi arkadaşlar.
Süper. Çok teşekkürler arkadaşlar.
Ben çok keyif aldım. Çok güzel bir bölümdü.
İyi ki geldiniz.
Gerçekten çok teşekkür ederim.
Son söylemek istediğiniz bir şey var mıdır kapatmadan önce?
Biz teşekkür ederiz.
Gerçekten çok keyifliydi.
Kapatmadan önce aslında söylemek istediğimiz bir şey var.
Yeni ekip arkadaşları arıyoruz.
Sajistçine. Katılmak isteyen arkadaşlar olursa Trendyol'un başvuru ne deniyor oraya tam onu diyemedim.
Talent sayfasını.
Tamamdır. Trendyol'un talent sayfasından başvurularını yapabilir.
Her türlü nargile sağlayabiliriz.
Güzel bir tekstekte gelişim sağlayabiliriz.
Eğlence sağlayabiliriz.
Başvurmanız yeterli. Evet Cengiz'in de söylediği gibi 59.
bölümünde. Search Suggestion ekibiyle beraberdik.
Katıldığınız için tekrar teşekkür ederiz.
Sonraki bölümlerde de görüşmek üzere.
Bu transkript otomatik olarak çıkarıldı; kayıtla küçük farklar olabilir.
