
Konuklar: Özlem Engez, Alper Ersayın
65. bölümümüzde konuğumuz Collections & Favorites 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 Productivity ekibinden Erdem.
Ben Storefront TRPDB ekibinden Cengiz.
Teknoloji ekiplerini tanıdığımız ve süreçler, teknolojiler gibi konuları konuştuğumuz Selam Ekip Podcast serisinin 65.
bölümünde Collections and Favorites ekibiyle birlikteyiz.
Bu ekibi tanıyıp ekip yapısı kullanılan teknolojiler, pratikler gibi konuları konuşacağız.
Hoş geldiniz arkadaşlar. Hoş geldiniz.
Hoş bulduk. Hoş bulduk.
Selamlar. Kısaca kendinizi bizlere tanıtabilir misiniz?
Okey, ben bir başlayayım.
Merhabalar, ben Özlem. Yaklaşık iki buçuk senedir Trendyol'da çalışıyorum.
Son bir senedir de Collection and Favorites ekibinde çalışıyorum.
Developer olarak görev alıyorum.
Alper sana atayım. Selamlar herkese.
Ben de Alper. Yaklaşık iki senedir Trendyol'dayım.
Bir ay sonra iki senemi doldurmuş olacağım.
İki sene boyunca da bu domeninde çalışıyorum diyebilirim aslında.
Bir senedir de bu takımdayım.
Hoş geldiniz arkadaşlar. Yani gerçekten iki kişi katılan podcast sayımız belki sıfırdır yani.
Şu an bir olmuştur. Ben hiç hatırlamıyorum.
Genellikle bizim bölümlere dört kişi, beş kişi yani en az üç kişi falan katıldığını hatırlıyorum.
Ama iki kişi ilk defa oluyor.
Biz de şaşkınız Erdem'le.
Bu bağlamda şunu sormak istiyorum.
Sizin ekip kaç kişiden oluşuyor ve rol dağılımları nasıldır ekibinizde?
Aslında güzel sordun.
Çünkü zaten ekibimiz de yeni kurulan bir ekip.
Küçük de bir ekibiz aslında. Şöyle liderimiz veya PM'i saymazsak aslında toplam 4 developer ve bir de developer in test olmak üzere 5 kişiyiz aslında.
Burada roller de aslında dediğim gibi bu şekilde.
Peki şimdi ekibin kaç kişiden oluştuğunu konuştuk.
Rolleri konuştuk. Tam olarak ekip ne yapıyor?
Collection Center Favorites deyince aklımıza ne gelmeli?
Hangi uygulamalardan sorumludur bu ekip?
Onu sormak istedim. Aslında takım adından da anlaşılacağı üzere en büyük iki domenimiz koleksiyonlar ve favoriler.
Ama bunun yanı sıra buy again, tekrardan satın al domeni ya da önceden gezdiklerim, önceden bakılan kontentlerin göründüğü browsing history domeni ya da wishlist ya da sepet eklenenler gibi aslında
böyle çeşitli user-based tabanlı çok fazla microservice'imiz var diyebiliriz.
Bu şekilde... Takım adından dolayı zaten koleksiyon ve foyerler en büyük.
Diğerleri de onlara kıyasla birazcık daha küçük bir market service diyebiliriz.
Bu şekilde bu domainlerden sorumluyuz.
Valla bu yani aslında Trendyol'da benim en çok sevdiğim noktalardan biri işte mikro management muhabbeti.
Yani takımların bu kendi içerisindeki işte domainleri çok ufak parçalara ayırıp bu parçaları da işte bir ekip, ekibin yönetmesi işte geliştirmesi falan.
Aslında böyle dışarıdan baktığımız zaman çok ufak gibi görünen yani işte mesela koleksiyonlar ve favoriler sayfası diyoruz ama içine girdiğimiz zaman aslında çok büyük bir domain var orada.
Şimdi benim ekibim client ekibi olduğu için her bölümde de söylüyorum ama benim ekibim client ekibi olduğu için biz direkt olarak webde koleksiyonlar ve favoriler sayfasını handle ediyoruz UI tarafını.
Dolayısıyla çok aslında şey çalışıyoruz yani burada yakında çalışıyoruz.
Yakın çalıştığımız için şeyi de biliyorum yani böyle direkt olarak Söylendiği zaman aslında ufak gibi görünen ama içeri nesline girdiği zaman oldukça sofistike bir lojik barındıran sayfalar bunlar.
Koleksiyonlar ve favoriler.
İkisi de ayrı ayrı.
Dolayısıyla bu aslında sofistike lojikler de kurmak da öyle kolay değil.
Burada iyi bir teknoloji barındırması gerekiyor altında.
Siz bu domenler için hangi teknolojileri kullanıyorsunuz bu lojikler için?
İşte tek siteyiniz burada tam olarak nedir?
Tabii şöyle aslında açıklayayım tek siteyimizi.
Genel olarak ağırlıklı olarak bizim ağır basan teknoloji kullandığımız dil olarak Go diyebiliriz.
Birçok uygulamamız, birçok servisimiz Go diliyle yazılmış durumda.
Bunun dışında aslında koleksiyon ve favori takımın ismini de aldığı servisler şu anda Java Quarkus'ta çalışıyor.
Ki bunun bir platform sürecindeyiz bunda da.
Onun dışında şeyleri söyleyebilirim.
Java Quarkus dışında Scala ile yazdığımız servisler var.
Burada workerlarımız var.
Burada Scala'nın Akka framework'ünü kullanıyoruz.
Bunun dışında data engineering işlerinde kullandığımız yine Scala ile yazdığımız filling ve sparkjaplar var.
Bunları söyleyebilirim. Başka aklıma gelen aslında tabii kendi datamıza sahip olduğumuz için data source'larımızla biz kendimiz yönetiyoruz.
Bunun için yine ağırlıklı olarak Couchbase var.
Birçok uygulamamızda Couchbase veri tabanını kullanıyoruz.
Bunların yanında işte Cassandra ve Postgre kullandığımız yerler de var.
Tabii birçok ekip de kullanıyor aslında bizim gibi bekent ekipleri ama Elastic ve Kafka.
Kafka da elbette kaçınılmaz oluyor.
Bu tech site'in yanındaki kendi geliştirdiğimiz ya da dışarıdan third party olarak kullandığımız şeyler de var aslında.
Tool'larımız da var diyebiliriz.
İşte KPI datalarını vizyola özetmek için Metabase'i kullanıyoruz ya da kod bloklarını aratmak için hani Sourcegraph kullanıyoruz.
Bunun gibi şeyler söyleyebilirim aslında tech site olarak.
Scala çok garip ya.
Çok garip yani ilginç geldi.
Çünkü Scala kullanan...
Trendyol'da duymamıştım açıkçası şeyde.
Vardır muhtemelen illa ki ama hani ilk defa duyuyorum ben.
Bu sizin verdiğiniz bir karar mı skala kullanılması yoksa...
Böyle eskiden kalan bir projeyi mi devraldınız ya da ekipten biri abi ben çok iyi Scala biliyorum bunu ben yürüteyim deyip ya da ben burayı yazarım deyip Scala ile mi yazdınız?
Yani burada tam olarak Scala'yı tercih etmenizdeki sebep ne?
Bu arada ben dili de çok iyi bilmediğim için alışılmışın dışında gibi duyuyorum.
Belki de aslında direkt on the point bir nedeni de vardır yani.
Şöyle söyleyebilirim aslında Scala çalışan workerlarımız var ki bu bayağı eskiden kalma aslında.
Muhtemelen hani biraz legacy'de olmuş olabilir.
Hani 4-5 senedir çalışan bir worker diyebilirim.
Hani ilk alınma kararını bilmiyorum aslında.
Belki dediğin sebeplerden biri olabilir.
Ama onun dışında zaten hani bir Spark ve Filling'den bahsettim.
Aslında datenjin ilk işlerinde de Scala kullanmamız şart gibi duruyor.
Burada bizim takımda hani... Bu tarz işler de yapıyoruz.
Yani big data ile ilgilendiğimiz durumlar da var.
O yüzden yani hem ihtiyacımız var diyelim hem de eskiden kalma bir alışkanlık diyelim Skala'ya.
Anladım, anladım. Yani tabii legacy'yi devam ettirmek şey çalışıyorsa dokunma prensibi böyle büyük ve stabil sistemlerde önemli ama işte legacy'leri
de refaktör edip iyileştirmek de önemli bir yandan.
Alıp... Maintain etmeye devam etmek ve iyileştirmek güzel bir pratik.
Sizin takımda da bu uygulandığını duymak beni mutlu etti açıkçası.
Teşekkürler. Şimdi birazcık da şeyleri konuşmak istiyorum ben.
Yani kişi sayısı az olduğu için çalışma şeklinizi merak ediyorum.
Remote çalışan ekipleriz zaten.
Bizim ekipte şey pratiği var mesela.
Breakout room'lar açıyoruz Zoom'da.
Bazen bireysel çalışıyorsak da orada herhangi bir room'a geçiyoruz.
İşte bir şey sormak isteyen arkadaş gelip sorabiliyor.
Ya da bu payer olmak isteyen biri direkt gelip payer olabiliyor.
Sizde var mı böyle uyguladığınız pratikler?
Çalışma şekliniz nasıl? Senin de söylediğin gibi zaten remote çalışıyoruz.
Şu an ayda bir ofise gidiyoruz.
Alper'le ben Ankara'dayız hatta.
Biz aslında şöyle çalışıyoruz.
Bizim bir CF Pair şeklinde Slack kanalımız var.
Eğer ki planlamada Pair olanlar varsa oradan mesela Pair Zoom'a atıyoruz.
Pair olarak birlikte çalışıyoruz.
Ama tek başımıza çalıştığımızda da aynı şekilde oraya Zoom atıyoruz ki bir insanlar yardıma ihtiyacı olduğunda ya da başka bir şey için gelmek istediğinde gelebilsin.
Her zaman orada oluyoruz diyebilirim.
Bu şekilde bir çalışma stratejimiz var.
Açıkçası Pay Programming yapmayı çok seviyoruz ekip olarak.
Evet az kişiyiz ama az kişi olmanın gerçekten çok büyük avantajları var.
Çünkü herkes birbirine inanılmaz destek olabiliyor.
İnanılmaz yardımcı oluyor özellikle.
O yüzden çalışma şeklimiz bu şekilde diyebilirim.
Herhangi bir zorluk olmadı açıkçası.
Zaten remote çalışmaya alıştık, Pay'de alıştık.
Channel'dan konuşmaya zaten alışkınız.
Çok fazla iletişim kuran bir ekibiz çünkü.
Herhangi bir zorluğunu ben görmedim açıkçası.
Alper sana atayım. Yani şöyle söyleyebilirim aslında özlemek olarak.
Payr kanalımız var. Orada aslında hani hem o Slack kanalında hem bazen yazışıyoruz hem de biraz şey gibi oluyor aslında.
Her orada işte zoom atan ya kendi masasındaymış gibi bir his oluyor aslında.
Sadece hani bazen şey oluyor bir özlemin masasına gideyim ne yapıyormuş der gibi.
Mesela onun odasına gidip işte onunla konuşabiliyoruz ya da o gelebiliyor ya da başkası gelebiliyor falan.
Yani güzel oluyor aslında bu.
Bu şekilde ilerletiyoruz. Süper.
Valla bu dengeyi...
Sağlayabilmek önemli ya.
Yani şu son dönemlerde remote ile alakalı çok fazla şey de işte fikir de varken ortada çok fazla tartışma da varken dengeyi kurabilmek önemli.
Çünkü %100 remote çalışmak da olmuyor.
%100 ofisten çalışmak da olmuyor açıkçası.
Benim kişisel tercihim kesinlikle hibrit üzerine.
Ama tabii hibritin de dengesini kurabilmek önemli.
Yani hibritte de mesela işte 4 gün ofis 1 gün.
Ev gibi bir hibrit de mesela çok mantıklı değil.
Ama şu anki koşullarda işte iki gün ofis, üç gün ev gibi bir hibrit gayet mantıklı.
Tabii bu benim kişisel tercihim yani bunu dinleyip hadi oradan diyecek olan arkadaşlarım vardır.
Belki aranızda da vardır.
Bence daha verimli oluyor.
Küçük bir ekip içerisinde de bu dengeyi kurabilmek önemli.
Çünkü şey gibi düşünüyorum bilmiyorum sizden nasıl yani iletişimin daha...
iyi ya da daha yoğun olduğunu düşünüyorum.
Çünkü bekent ekiplerinden bazı arkadaşlarla mesela konuşmuştuk.
Mesela bir ekip sürekli gün boyu payırdalar.
Yani gün boyu sabahtan giriyorlar Zoom'a.
Gün boyu Zoom'ları açık.
İşte arada işte şey nedir o?
Arada işte kendileri şey yapıyorlar.
Çıkıyorlar işte bir şeyler yiyorlar içiyorlar falan filan.
Yani düzenli olarak şey yapıyorlar.
Sizde ben bu soruyu da araya sıkıştırayım.
Sizde iletişim konusunda Herhangi bir problem yaşadınız mı şu zamana kadar?
Yani şu bizi bayağı zorlamıştı ama işte şu şekilde düzelttik falan diyebileceğiniz bir örneğiniz var mı?
Yani aslında bir düşünüyorum da bir öyle bir sıkıntı yaşamadık gibi ya.
İletişim konusunda çok bir sıkıntımız yok ekip olarak.
Hani sürekli ya çok rahat hızlı bir şekilde birbirimize iletişim kurabiliyoruz.
Ki eğleniyoruz da aslında bir şeyde sürekli peri yaparak işlerimizi ilerletiyoruz.
Belki şey olabilir işte ekibin bir kısmı Ankara'da bir kısmı İstanbul'da.
Bazen yüz yüze görüşmek güzel olabiliyordu.
Olabilir aslında. Ama onun dışında ciddi bir sıkıntı yaşamadık diyebilirim yani remote çalışırken.
Anladım. Süper. Süper.
Biraz şeyden bahsedelim istiyorum.
Şimdi Collection Budaj'da da söylediğim gibi aslında sizin provide ettiğiniz şeyleri, dataları diyelim işte sayfaları biz konsum ediyoruz mesela bir client ekibi olarak web tarafında.
Keza bunun işte mobili var, iOS, Android'i var, başka sayfaları var vs.
Siz burada hangi domenlerle veya hangi takımlarla yakın olarak çalışıyorsunuz?
Aslında biz de client ekiplerle beraber sıkça çalışıyoruz.
Yani aslında beraber çalıştığımız ekiplerden biri de sizin ekip aslında öyle söyleyebilirim.
Yani deep backend servisler olduğumuz için aslında o yüzden neredeyse bütün client ekiplerle çalışıyoruz.
Hem international hem TR mobil ekipler, hem international TR işte web ekipleri, mobil web ekipleri.
Onun dışında biz browsing çatısı altındayız.
Browsing çatısı altında olan diğer reko ve influencer ekibiyle de sık bir şekilde çalışıyoruz.
Farklı domenilerden yine örnek vermem gerekirse, Data Engineering ekipleri veya Checkout ekipleriyle de yaptığımız işler var.
Bunların dışında infra olarak düşünürsek aslında, infra tarafını düşünürsek yine Data Store ekipleri, SRA veya Messaging ekipleriyle de çalıştığımız oluyor.
Çünkü hani çok farklı domenler var, farklı işleri yapıyor ve her biri için de farklı farklı ekiplerle iletişim halinde kalıyoruz yani.
Bu şekilde ilerletiyoruz. Farklı domenleri konuşmuşken ben şeyi de merak ediyorum ya.
Çok alakalı olmayabilir konuyla ama.
Bu favorilerde favori ürününün fiyatı düştüğü bildirimi geliyor ya.
Onu sizin ekip atıyor.
Yani tüm sorumluluk sizde mi?
Onu bir kaldıralım ya.
Alper'cim yani. Ben burada topu özleme atayım.
O bu kısma daha hakim. Yani aslında şöyle güzel soru bu arada.
Oradaki bildirimi biz yollamıyoruz bu arada ama oradaki filtrelerin çoğunu biz veriyoruz.
Fiyatı düştü filtresinden diğer filtrelere kadar bunu biz soru ediyoruz.
Special filter gibi düşünüyoruz.
Fakat bildirim atma bizde değil açıkçası.
Bildirimi başka domenlerde atıyoruz.
Diğer domenlerde favori de atmıyoruz.
Kimde bilmiyorum. Umarım buluruz.
Yani burada şey mi söyleniyor?
Arkadaşlar sorumlu biz değiliz.
Bakın her bildirim geldiği zaman bizi anmayın.
Aklınıza biz gelmeyelim.
Ben burada bizi birazcık yukarı taşıyayım.
Gerçekten bizi atmıyoruz arkadaşlar.
Ya ben şey için sordum bunu hani kişiye özel yapabiliyor muyuz?
Önce bana gelse. Yani şöyle bildirim yapabiliriz.
Biz zaten test yaparken bildirimler özelinde kendi Production User ID'lerimizi kullanıyoruz.
Yani komik bildirimler de atabiliriz tabii ki ama yapmıyoruz.
Bizim ekip şeye bakıyor.
Banner tarafına bakıyoruz.
Banner Widget. Hep şey diyorduk böyle.
İleride birisi evlenmeyi teklif edecek olursa falan böyle bir şey yaparız belki.
Kullanıcı ID'ye özel banner basarız trend yola girince böyle falan.
Ama sizin bildirim olayı da güzelmiş.
Bu da aklımda bulunsun. Trend yoldan biri evlilik teklifi edecek olursa belki birkaç ifle olayı çözebiliriz.
Bildirime kaçırmazsa çok güzel olur alan kişi tabii.
Ama orada bir dikkatli olmak gerekir ya.
Şimdi bütün kullanıcılara bir anda evlilik teklifi gitmesin.
Tabii tabii bunlar işin gereği. Bütün kullanıcılar gittiğini düşünemiyorum.
Yani yanlışlıkla birilerinin mürüvvetine sebep olmuş olabiliriz.
Ayşe diye bildirim atıyorsun.
15 bin Ayşe şey seviniyor falan.
Birilerinin yuvasını da yıkmış oluruz bu arada.
Biz iyi yönden bakıyoruz ama.
Aynen. Peki o zaman bu tarz şeyleri yaşamamak için QA süreçleriniz nasıl ilerliyor?
Yani testlerinizi nasıl yapıyorsunuz?
Süreçler nasıl ilerliyor?
Onu konuşabiliriz belki birazcık.
Tabii. Aslında şöyle çok kısa kabaca önden başlayıp ondan sonra QA'yı anlatayım.
Bizim bir haftalık sprintlerimiz oluyor.
Planlama ve groomingden sonra salı günü sprintimiz başlıyor.
Bir nevi akış böyle başlıyor diyebiliriz.
Development tamamlandıktan sonra artık MR'den, VIV'den geçtikten sonra bunun QA phase'i oluyor.
QA phase'inin başlayabilmesi için, QA testingin başlayabilmesi için önce biz yeni çıktığımız bu feature'ı bir stage'e deploy ediyoruz.
Stage ortamı, test ortamı zaten.
Oraya deploy ediyoruz ve ondan sonra artık eş, köye arkadaşımıza geçmiş oluyor.
Şimdi bizim çok fazla projemiz olduğu için ve hepsinin de hani tek bir reposu yok.
Onun yani multiple repoları olabiliyor.
API'ye ayrı, consumer'a ayrı ya da worker'a ayrı gibi olabiliyor her domain için.
Ve QA arkadaşımızın her domain özelinde ayrı ayrı automation test projeleri var.
Bu projelerin içerisinde o domainlere ait spesifik olarak tüm test case'lerimiz yazıyor.
Orayı çok planlı ve çok güzel bir şekilde yönettiğini düşünüyorum ben.
Ve bu automation testleri de bizim yine kendi generate ettiğimiz data jam projesini kullanıyoruz.
up to date yani güncel production datasını stage datasına basacak şekilde testleri çalıştırıyor diyebiliriz.
Bu bizim pipeline'lerimizde entegre olmuş durumda.
Yani sonuç olarak biz yeni bir feature çıkacağımız zaman hem Aziz'in bozulmadığını bu şekilde garanti etmiş oluyoruz.
Çünkü her feature'ın automation testi zaten yazılmış durumda.
Eğer bozulduysa biz zaten hemen müdahale ediyoruz.
Kodda nerede bir sıkıntı var diye.
Hem de yeni bir feature ise ya da kapattıysak sildiyse QA tarafında QA arkadaşımız bütün testleri kendisi gözden geçirebiliyor.
Yeni bir test ekleyebiliyor.
Bunların bu arada coverage'e bakarak yapıyoruz.
Coverage'den geçmeyen, automation testten geçmeyen hiçbir feature'ı tabii ki de production'a çıkmıyoruz.
Kabaca bu işlemleri yaptıktan sonra okeyiz diyoruz.
Production'a çıkıyoruz. Yine bir çok küçük gözlemliyoruz.
Hani response time'de, error rate'de vs.
bir sıkıntımız var mı diye bir check ediyoruz.
diyoruz, kontrol ediyoruz. Ondan sonra da işiriliğiz etmiş oluyoruz.
Maşallah. Öncelikle bunu söylemek istiyorum.
Yani helal olsun. Çok güzel.
Yani gerçekten böyle adım adım her noktasından emin ola ola ilerletmeniz, production'a şip etmeniz takdire şayan biz de kendi takımımıza.
Bunu özellikle göz önüne alarak işler geliştiriyoruz.
Yani hele ki aslında direkt olarak kullanıcı interaction bir iş yapıldığı durumda.
Çok daha hassas şeyde.
Çünkü sizin o tarafta geliştirdiğiniz bir şey koleksiyon sayfasında ya da işte favori sayfasında direkt olarak kullanıcı ile bir iletişime geçecek, interakçına geçecek ve orada yaşanabilecek herhangi bir problem direkt olarak sizi ilgilendirecek.
Client ekiplerini ve sizi ilgilendirecek.
Dolayısıyla böyle itiyatlı ilerlemek çok güzel.
Peki işler böyle çok da istediğiniz gibi gitmediğinde?
Yani daha doğrusu aslında şöyle sormak isterim.
Okey tam her adımı işte düzgün bir şekilde ilerletiliyoruz ama...
Bizim bunların haricinde tabii ki uygulamalarımızı monitör de etmemiz gerekiyor.
Yani happypad'de de işte işler iyi gittiği zaman da kötü gittiği zaman da her durumda bir monitör etmek istiyoruz.
Burada siz uygulamalarınızı nasıl monitör ediyorsunuz?
Burada baktığınız özellikle metrikler var mı?
Ve bu baktığınız şeylerden sonra herhangi bir durumda nasıl aksiyon planı çıkarabiliyorsunuz?
Buna ekstra olarak şeyi de sormak istiyorum bu arada.
Yani hem bu sorum hem Alper'e hem Özlem'e.
Böyle bir yaşadığınız incident.
Olayı da var mıdır? Bizim klasik sorumuzdur bu arada.
Bu sorumun yanında onu da eklemiş olayım.
Ben ilk sorudan başlayayım.
İkiyi bir düşünelim. Şimdi biz datayı ve metriyi çok seven bir ekibiz.
Gerçekten bizim gözlemlemediğimiz metrik yok diyebilirim.
Zaten bütün Trendyol'da genel olarak TPP, kendi içimizdeki dashboardlar, Grafana...
dashboardlarını kullanıyoruz. Tabii ki loglar için Kibana'yı, direkt APM metrikleri için de Nivrelik ve Grafana'yı kullandığımız yer de oluyor.
Yani burada metrik olarak zaten API level'ında response time, throughput, error rate'imiz, biraz daha deployment level'da CPU ve memory kullanımları, yani genel olarak kaynak tüketim gibi düşünebiliriz.
Bunun yanı sıra tabii ki bir database level'ında disk ve RAM kullanımları, resistant'ları ya da biz burada user datasını barındırdığımız için oradaki data count'u nasıl artıyor?
artıyor ya da azalıyor mu vesaire gibi bu gibi metriklerin hepsine bakıyoruz.
Bunun yanı sıra bizim iki haftada bir yaptığımız bir KPI toplantımız var.
Bunun arkasında yine kendi geliştirdiğimiz KPI Data Jam projesi çalışıyor ve kayda girerken de Alper'in bahsettiği ön yüzde visualize edebilmek için metabase kullanıyoruz.
Bu iki haftada bir yaptığımız toplantıda biraz önce bahsettiğim bütün metrikleri her bir uygulama için ayrı ayrı olacak şekilde oluşturduğumuz dashboardlarımız var.
Bu toplantılarda bunun üstünden geçiyoruz.
Burada bir anomali var mı? Öncelikle bir bunu tespit ediyor o toplantıyı o an drive eden kişi.
Anomali varsa eğer, yani beklemediğimiz bir durum, örneğin response time bir sebepten dolayı artmış ama...
Alert gelmemiş yani çok da önemli değil.
Olsa dahi bizim action maddelerimiz oluyor.
Action maddelerimizi de random olarak birine assign ediyoruz.
O an hemen bakmıyoruz.
Küçük bir şeyse hemen müsait olduğumuzda bakıyoruz.
Ama eğer ki işin kapsamı büyüyorsa örneğin responsan çok yükseliyor.
Artık bu bir feature'dan kaynaklı olabilir.
Dibine kadar inmemiz lazım. Böyle bir durum olduğunda da bir task açıyoruz.
Sprint'i alıyoruz diyebilirim.
Bu şekilde monitoring tarafında handle ediyoruz diyebilirim.
Şimdi incident konusuna gelecek olursak.
Benim aklıma açıkçası bir şey gelmiyor.
Bir alfere atayım ben burada, emin değilim.
Ben de bir düşündüm aslında.
Zaten şu son bir seneyi düşünüyorum.
Zaten bir senelik bir takımız bizde.
Ciddi bir incident yaşamadık diyebilirim.
Bazı şeyler oluyor, bazı bug'lar, ufak tefek kesintiler ama onun dışında kullanıcıya büyük etkisi olacak bir incident yaşamadık diyebilirim.
O zaman öyle...
Hatta şöyle yapayım tahtaya vuralım arkadaşlar.
Yazar devmesin.
Yani şu ana kadar konuştuğumuz ekipler 65.
bölümdeyiz. Şu ana kadar konuştuğumuz ekipler arasında ilk sanırım böyle insansız yaşamayan.
Tabii yani çok yeni bir ekipsiniz.
Onun da verdiği bir şey vardır muhtemelen.
Etkisi vardır. Ama buradan o zaman tüm teknolojiye Alper'den baklava mı?
Bütün teknolojiye zor olur ama deneriz.
Tamam. Bize de olur ya.
Tamam abi bize de olur. Evet yani selam ekibine.
Bir an şeyi düşündüm ya bir incident yaratsam daha mı şey olur daha mı az masraflı olur bana onu bir düşünmedim değil.
Maşallah arkadaşlar. Ben de çok küçük bir şey söylemek istiyorum.
Şimdi ben bu ekibe rotasyonla geldim.
Ve ilk geldiğimde buddy'im beni onboard etti vs.
Daha sonra işler almaya başladık.
Şimdi ben wishlist domaniyle alakalı bir iş aldım.
Notify.me domani biraz önce bahsetmiştim.
Ve onun gulf bölgesine, hani gulf bölgelerine İngilizce ve Arapça bildirim atılması.
Push notification'ın gitmesi domani.
Şimdi ben orada geliştirmeyi yaptım, testlerimi yaptım.
Aslında kendimden eminim.
Evet ilk işim daha domani'lere yeni alışıyorum zaten vs.
Sonra bir gün ya daily'de ya da başka bir şeyde hatırlamıyorum.
Başka bir... Başka bir şirkette böyle bir feature geliştirdiğinde bütün yazarlara push notification yollamış gibi bir durum olmuş.
Bunun hani espirisi falan yapıldı.
O an ben şey düşündüm.
Acaba ben böyle bir incident'a gelir gelmez sebep olur muyum?
Herkese bildirim atar mıyım diye.
Kodun üstünden bir daha geçtim.
Testlerin üstünden bir daha geçtim.
Yani iş 2 saatte bittiyse ben onu 5-6 saatte bitirdim diyebilirim.
Hani incident olmaması için gerçekten çok çaba sarf etmiştim.
Çünkü benim çok gözümü korkutmuşlardı.
Güzel vallahi yani. İyi bir pratik.
Bunu yayacak mısın?
Onboarding'de böyle bir. Onboarding'de.
Göz korkutmaca. Şaka bir yana yani aslında bunun tabii ki ana motivasyonu korku değil fakat iyi bir, düzgün bir iş, düzgün
bir uygulama ship etmek, düzgün bir geliştirme feature ship etmek oldukça önemli ve bunların hani itihatlı bir şekilde yapılması da böyle Üzerine titrenerek yapılması da oldukça güzel.
İnşallah yani ileriki dönemde bir incident'ınız olmaz.
Yani genellikle şey olabiliyor.
Şöyle bir şey anlatayım.
Bizim bunu neden anlattığımı da söyleyeceğim.
Biz Infusion Center'da bir podcast yaptık.
Böyle podcast'e konuşurken işte kaç kişisiniz falan dedim.
4 tane frontend developer'ımız var dediler.
Ben dedim ki o iyi ya. Yani sizin hani skopunuzda büyüklükte bir takım için.
4 frontend developer bayağı iyiymiş dedim.
Bölümü kaydettikten...
Üç gün sonra bölümden bir arkadaş bana mesaj attı.
Abi nazar mı değdirdin?
Bizden bir arkadaş sizin ekibe geçiyor diye.
Yani bizim sanırım nazarımız değiyor arkadaşlar.
Öyle çok ufak bir şeyimiz var.
Biz yapmıyoruz yani.
Biz neden olmuyoruz buna?
Aman nazar değmesin diyelim tekrardan.
Başarılarınızın devamını dileyelim.
Bir insınt olursa size geleceğimizi de unutmayın lütfen.
Bir sıkıntınız olursa tüm şeyiniz bölümde olmadığı için Fırat Kömürcü'dür.
Tüm irtibatınız Mehmet Fırat Kömürcü.
Buradan kendisine seslenelim.
O zaman ilk insıntımızda baklavayı ona mı yazıyoruz?
Evet. Fırat baklavayı Fırat'a yazalım.
Sizin ekip ve selam ekip üyelerine insınt durumunda Fırat alacak.
Not aldım ben. Teşekkür ederiz.
Şimdi şeyleri konuştuk hep.
Mevcut yapımızı, tek siteyimizi, nasıl ilerlediğimizi.
Maintenance'lar oluyor, yeni feature'lar geliyor.
Bir de legacy uygulamalar olduğundan bahsettik aslında.
Bu tarz durumlarda nasıl ilerliyorsunuz?
Replatforming yapma noktasında...
Hangi noktada karar veriyorsunuz?
Ya da yeni bir proje geldiği zaman sıfırdan geliştirme süreci olduğunda nasıl ilerliyorsunuz?
Onu da konuşabiliriz bence.
Onu şöyle anlatayım isterseniz.
Zaten hani koleksiyon ve favori servislerinde de bir platform sürecindeyiz zaten.
Şu anda bir süredir bu konuya odaklanmış durumdayız.
Bir platformun ihtiyacını karşılamaya çalışıyoruz.
Yine legacy, mesela Scala olmak üzere legacy bazı worklerimiz var.
Bunları geçiriyoruz işte. Bahsettiğim gibi...
Bu iki büyük servisimizi de platform ediyoruz.
Zaten burada hem de platform yaparken hem de yeni iş gelirken aslında genel olarak hep birlikte zaten bir toplanıp bir kafa yoruyoruz buna.
Nasıl yapabiliriz, ne yapabiliriz diye işte.
Nelere ihtiyacımız var? Zaten bu uygulamalarda hani legacy uygulamalarda bayağı eski süredir ayakta olduğu için genel olarak şeyleri biliyor oluyoruz.
İşte teknik borcu nedir bu uygulamanın ya da nereyi iyileştirmemiz gerekiyor gibi şeyler zaten aklımızda oluyor.
Bunların üzerinden geçiyoruz öncelikle.
Onun dışında yine tabii biziz tarafından veya sürekli birlikte yakın çalıştığımız diğer işte domenlerle ya da client ekiplerle sürekli sıkı çalıştığımız için onların neler isteyebileceğini, gelebilecek işleri veya oradan
bazı öngörüler çıkarıp ona göre özellikle iyileştirme gereken şeyleri bir belirliyoruz ve ondan sonra replatform işlemine başlıyoruz diyebilirim.
Ve hani burada...
Kullandığımız teknolojiler de değişebiliyor.
Buna karar verirken de işte hani yeterli bulmadığımız teknolojiler oluyor.
Ya da daha iyi perform ettiğini bildiğimiz tool'lar, teknolojiler oluyor.
Ve platformluk sürecinde özellikle bunlara dikkat ederek gidiyoruz diyebilirim.
Süper. Süper.
Yine inceleyip sıkı dokunuruz bir süreç.
Çok beğendim. Ellerinize sağlık tekrardan.
Şimdi birazcık daha böyle şeyden konuşmak istiyorum.
Şimdi ufak da bir, küçük de bir ekip olduğunuz için muhtemelen rotasyon...
Talepleriniz de açıktır Pandora üzerinden isteyen arkadaşlar için ve rotasyon almak isteyen insanlar da olacaktır.
Daha öncesinde de olmuştur.
Özlem sen zaten söylemiştin rotasyona geldiğini.
Sık da bir şey Trendyol içerisinde rotasyon yapılması.
Rotasyonun sizin ekibe katılan oldu mu Özlem?
Yani dediğim gibi sen sanırım söylemiştin.
Aynen ben rotasyonuna geldim yaklaşık bir sene oldu ben geleli.
Bundan önce de aslında Search.
Eskiden adı TSorge'du.
Orada çalışıyordum bir buçuk sene kadar.
Bir de köye arkadaşımız da aynı şekilde farklı bir tribe'den bize rotasyon yaptı.
Onun da yaklaşık bir sene olmak üzere.
Yani dediğim gibi rotasyon bizim kültürümüzde var.
Ve hani farklı domenileri tekrar öğrenmek ya da farklı tek siteyi öğrenmek, ufkumuzun genişlemesi açısından gerçekten ben çok yararlı olduğunu düşünüyorum.
Evet ekip küçük ama yine de rotasyona gidip gelmek isteyen varsa çok mutlu oluruz açıkçası.
Evet tüm konuları konuştuk.
Diğer ekiplere de sorduğumuz bir sorumuz daha var.
Ekipçi iletişimi arttırmak için aslında neler yaptığınızı merak ediyoruz.
Burada eğlenmek için farklı farklı şeyler yapanlar da var.
İşte birlikte böyle lezzet turlarına çıkanlar da oluyor.
Çok fazla oyun oynayan ekipte olduğunu gördük.
Birlikte online oyunlar. Nargile etkinliğini de araya sıkıştırmak istiyorum.
Nargileye gidenler. Hala hala en beğendiğimiz etkinlik olur.
Araba sevdalıları var. Nargileciler var.
Aynen. Sizde var mıdır böyle şeyler?
Siz neler yapıyorsunuz? Yani bizde öyle nargile ya araba sevdası gibi ekstra şeyler yok ama hani genel olarak yani iş yaparken de eğleniyoruz.
Onun dışında bizde genelde oyun oynayan ekiplerdeniz.
Yani bir düzenli bir şeyimiz yoktur ama atıyorum çok böyle yoğun geçti bir gün.
Artık hani burnout olduk falan hadi toplanıp bir şeyler oynayalım deyip zoom'dan toplanıp oyun falan oynuyoruz.
Onların dışında zaten ekip etkinlikleri oluyor.
Bizim ekibin bir merkezi İstanbul'da.
Biz Özlemli Ankara'dayız.
Direkt hemen... Atlayıp gidiyoruz orada rakı içmeye.
Toplanıp yemeye içmeye gidiyoruz diyebilirim ya buluştuğumuz zaman.
Ve eğlenceli geçiyor hepsi de.
Trende olan ekipler genelde yiyici oluyorlar ya.
Yani birçok ekipteki mesela bizim ekip de öyle.
Geçen bizim de bir ekip etkinliğimiz oldu.
Hani bir yere kadar plan yapabildik.
Dediler ki şimdi Ankara'da yapacağız ilk defa.
Dediler ki ya siz Ankara'yı biliyorsunuz şey yapalım.
Size bırakalım siz ayarlayın falan.
Biz oturduk ne yapalım abi?
Ya şu gün işte şu meyhaneye gideriz.
Şu gün şu kebapçıya gideriz.
Şu gün şu mekanı gideriz falan filan.
Şey fark ettim yani mekan sıralıyoruz falan böyle yani.
Yiyecek mekanı falan.
Sonra buluştuk.
Sonra şey oldu biz hani güzel bir plan yaptık.
İşte çiftliğe kahvaltıya falan gittik.
Sonra dediler ki hadi buradan çıkıp döner yemeğe gidelim.
Yani hani ekip olarak etkinlik anlamında Trendyol içerisinde.
Zaten bizim ana kültürlerimiz de birazcık böyle yiyecekler üzerine de ilerliyor.
O yüzden aslında anlaşılabilir bir durum yani.
Direkt lahmacun geldi aklıma.
Lahmacun ve baklava ikilisi arasında yedik geliyoruz sürekli.
Lokma var değil mi yeni gibi düşünebileceğimiz?
Lokma evet geçenlerde bir lokma oldu.
Ankara ofiste bu ara güzel şeyler oluyor.
Ara ara yapıyorlar. Başka ne vardı?
Başka aklıma gelmiyor açıkçası.
Okey. Dostlar çok teşekkürler geldiğiniz için.
Çok keyif aldık yani güzel bir bölümdü.
Collections and Favorites bu hafta konuğumuzdu.
Tekrar çok teşekkürler geldiğiniz için.
Biz teşekkür ederiz bizi ağırladığınız için.
O zaman bir sonraki bölümde farklı bir ekiple sizlerin karşısında olacağız.
Kendinize iyi bakın. Görüşürüz.
Görüşmek üzere. Görüşmek üzere.
Bu transkript otomatik olarak çıkarıldı; kayıtla küçük farklar olabilir.
