Şimdi kod yazıp direkt canlıya gönderiyoruz, arada test-staging vs. bir kontrol mekanizması yok. Dolayısıyla canlı servis sık sık patlıyor. Her gün 15-30 dk down time yaşıyoruz. CTO'nun bir konfigürasyon hatası sonucu sunucuyu 2 günlüğüne patlatmışlığı var, düzeltene kadar 1 hafta geçmişti falan.
Cuma günü de ben bir deploy yaptım, hemen ardından başka bir işe daldığım için kontrol etmeyi unuttum. Site patlamış, 5 dk sonra CTO bana yazdı, 5 dk'da düzelttim, toplamda bir 10 dk down olmuş servis. Ama benim şanssızlığım, o esnada CEO'muz potansiyel bir müşteriye demo yapıyormuş. Demo esnasında ürünün çalışmaması sorun. Bu yüzden müşteriyi kaybettiler mi bilmiyorum, ama olabilir.
Olay şu ki, ben daha önce 5-6 kere falan staging kuralım, test ortamı olsun, müşteriye demo yapılırken stabil başka bir ortam kullanılsın (ki bu ortamları da ben kurucam) diye teklif yapmıştım. "Gerek yok" diyip geçmişti CTO.
CEO ile konuştum, aramız iyi. Ama CTO bana kafayı taktı. 5 kere falan "niye kontrol etmiyorsun" diye darladı. En sonuncuyu ekibin önünde yaptı. Müşteriyi kaybetmek sıkıntı, adamın gergin olmasını da anlıyorum, o yüzden "evet, haklısın, tamam" falan diyip geçtim.
Ama asıl düşündüğüm şey şu, böyle bir durum için gerekli önlemleri ben teklif ettiğim halde kabul etmeyen kendisi. CEO'ya "demo yapmadan önce haber ver, deploy yapmayalım, nolur nolmaz" demiştim, o da demodan önce haber vermedi. Üstelik benim canlı ortamı 5 dk sonra kontrol etmem ile 5 dk önce kontrol etmem arasındaki tek fark o 5 dakika. Günlük down süremizin zaten çok altında. Yani 10 dakika demoda sorun oluyorsa 5 dakika da olabilir ve benim bunun için yapabileceğim bir şey yok.
Üstelik gönderdiğim kodda da hata yokmuş. Yani internetten gelen veri üzerinde bir takım işler yapıyorum, elimdeki test datası ile düzgün çalışıyordu, ama şanssızlık, deploy yaptığım anda internetten gelen data benim test ettiğimin (ve ortalama datanın) 1000 katı falan büyüklüğünde, sunucu o yükü kaldırmamış. Böyle bir durum olursa diye sunucuları büyütelim diye daha önceden de teklif yapmıştım, o da kabul edilmemişti.
Bende de hata var, kabul ediyorum. Ama insanım, hata yaparım. "Bundan sonra hata yapmayacağım" diye söz de veremem, yaparım çünkü, o an dalgınlığıma gelir, garantisini veremiyorum. Bence doğru ve profesyonel olan şey, insan hatalarını engelleyebilecek sistemleri kurmak.
Sorum şu: CTO beni tekrar darlarsa ne yapayım? Anlayış gösterip 5 kere "tamam abi" demek bence fazlasıyla yeterli. Oturup "kardeş bak ben sana demiştim, dinlemedin, o yüzden şimdi beni darlama" diyeyim mi? Yoksa tamam diyip geçeyim mi?
Bizim şirkette çatır çutur eleman kovuluyor. Şahsen kovulacağımı sanmıyorum, ama böyle bir şanssızlık yüzünden kovacaksa da kovsun, o da onun ayıbı olur. Ama olay şu, şirket zaten bi 6 aya falan batacak bence, çünkü satış/product ekibi çok kötü. Ben de batana kadar bekleyeyim, sonrasında da uzun bir tatil yaparım falan diye plan yapıyordum. Şu an kovulursam yeni iş aramıycam, ama planlarım bozulmuş olacak.
toxic çalışma ortamı, koşarak uzaklaş. qa veya test ortamı olmayan yazılımın patlaması normal, bunun sorumlusu senin patronundur.
ahahah benim eski şirket gibi, inceldiği yerden kopsun bence, "kardeş bak ben sana demiştim, dinlemedin, o yüzden şimdi beni darlama" diyin gitsin.
@nahtoderfahrung valla işler iyi giderken güzeldi ortam ama stres altında manyamaya başladılar. Test/QA yok ve sık sık patlıyor, bundan da genel olarak kimse şikayetçi değil, teknik bir tercih bu. Zaten "niye patladı" da diyemiyor açık açık, onun yerine "niye erken kontrol etmedin" diyor.
bunun önüne geçmek için biz yetki nesneleri diye bir şey kullanıyoruz, test sistemi qa sistemi ve canlı sistemi verileri tamamen farklı bizde, testten geçti, qa'den geçti ve canlıda patlayabilir veri farkından dolayı bu yüzden yazılan kodun live olarak kapatılması ve eski koda geçmesi veya o özelliğin sistemi patlatmak yerine devredışı bırakıldığı bir parametre ile işin üstesinden gelebiliyoruz. alt yapınız imkan veriyorsa böyle bir şey deneyebilirsiniz. bizde canlının patlaması demek büyük olay hele seri üretim yapılan bir fabrikada üretim modülünün durması demek kriz çıkarır. kritik modüllerde ekstra temkinli davranıyoruz.
ama bu ortam toksik çalışma ortamı hiç iyi bir şey çıkmaz bundan bence ilk fırsatla ilerle.
20 kişilik firmada bir de ceo pozisyonu mu var?
Biz Ceo'yu rüyamızda görürsek adamı görmüşlüğüm var diyoruz.
20 kisilik sirkette CEO, CTO, CFO lar birbirini kovaliyor. Startup'i kartvizit icin acmislar herhalde, garip..
Madem batacagini dusunuyorsun ve sonrasinda bir sure sure tatil yapacam diyorsun gittigi yere kadar salla basi al maasi diyorum.
@ihanet, cooper: CEO genel müdür demek. Yani tek kişilik şirket bile olsan CEO oluyorsun. Bir de sorumluluk bölüşümü açısından ünvanları baştan belirlemek faydalı. Gerçi hazır küçük şirketken herkesin her kararı verebilmesi bence daha iyi ama, yatırımcıya falan şu bundan sorumlu, bu bundan sorumlu demek gerekiyor herhalde.
@nahtoderfahrung, zaten k8 kullanıyoruz, yani auto rollback implement etmek 2 günlük bile iş değil. Ama kritik bir uygulama değiliz diye buna vakit harcamak istemiyorlar. Overall'da doğru bir karar olabilir ama o zaman bana ekşime.
Neyse, bugün olaysız geçti. Bi daha gelirse patlıycam. Kovulursam buradan haber ederim slkdfjgsdjg.
Şirket patlayana kadar he de geç, iş için de kendini darlama.
@plutongezegendegilmi
valla 20 kisilik sirketim olsa ben CEO diye kart bastirmaktan tassak konusu olur sagda solda diye cekinirim, ama sen normal goruyorsan birsey diyemem. :)
yönetemezsin
startup böyle az kaynakla çok iş eşittir gerginlik.