Ana içeriğe atla

Acil İşler Diyarında Bir Garip Yazılımcı

Her iş acil mi? Şu işe hemen bakılması mı lazım? Müşteri mi bekliyor? Elinizdeki işleri bırakıp hemen başka bir işe mi bakmanız lazım? Telefonlar susmuyor mu, e-postalar mı yağıyor? Her şey acilse çözüm ne? Yalnız değilsin ey garip yazılımcı! Hele bir soluklan da şu yazıyı bir oku. Derdine şifa olmasa da yaralarına merhem olur.



Önceliklendirme yapılmalıdır. Önceliklendirme yapılırken risk değerlendirmesi yapılmalıdır. Hangi hata sistemi nasıl etkiliyor, hatadan hangi kullanıcılar etkileniyor, hata nedeniyle ne kadar veri kaybı ihmal edilebilir, yeni geliştirilecek bir özellik gecikse ne kaybederiz, her zaman erişilebilir bir sistem mi daha önemli yoksa olabildiğince güvenli bir sistem mi ... gibi soruların cevabı herkese göre değişir. Sizin için neyin önemli olduğuna ekipçe karar verin. Yazılım ürününüzün katma değerine göre değerlendirme yapmaya çalışın. Önem derecesine ait etiketler geliştirin ve koyun. Örneğin kırmızı etiket hemen çözülmesi gereken bir hatayı temsil edebilir. Ya da 3. derece bir sorun bir hafta içerisinde çözülebilir, B kategorisine ait bir özellik 1 ay içerisinde geliştirilebilir gibi.

Ölçebildiğiniz her şeyi ölçün. Uygulamanıza gelen kullanıcı trafiğini, kullanıcıların hangi özellikleri ne kadar kullandıklarını, işlemci, bellek ve ağ gibi donanım kaynağı kullanımlarını ölçün ve izleyin. Anormal durumlarda  sizi uyaracak alarm sistemleri kurun. Bu alarm sistemleri ilgili kişilere otomatik olarak bildirim göndersin.

Acil durum yönetim planınız (incident management) olsun. Nöbet sistemi geliştirin, alarm sisteminiz daima aktif olsun. Bu hafta gece oluşabilecek önemli bir duruma kim ya da kimler müdahale edecek belli olsun. Yedek kişiler belirleyin, asıl nöbetçilere ulaşılamazsa hemen yedek kişiler duruma müdahale etsin.

Duyuru sisteminiz olsun. Durumdan etkilenen kullanıcılarınızı bilgilendirin (SMS, e-posta, uygulama içi duyuru ekranı, firma telefonunu arayan kullanıcılar için telesekreter mesajı). Kullanıcıların aynı durum için sizin iletişim kanallarınızı gereksiz yere meşgul etmelerinin önüne geçin. Firma içi ekipler arası iletişimi de düzenleyin. Acil durumlarda firmadaki diğer ekiplerin yazılım ekibini gereksiz yere meşgul etmelerini engelleyin.

Yapılacak tüm işleri toplu olarak bir yerde toplayın. Bu gün ya da bu hafta hangi işleri bitireceğinizi kararlaştırın ve diğer konulara bakmamaya çalışın. Bir işin yapılmasının ne kadar süreceği hakkında iyimser tahminlerde bulunmayın. Bu konuda kötümser olun. Tahmininizi pi sayısı ile çarpın. Her zaman bir esneklik payınız olsun. Her şey yolunda gitse bile ülke ekonomisindeki dalgalanmalar, mevzuattaki değişiklikler, personel mazeretleri gibi kontrolünüzde olmayan bir çok faktör olacak. Kullanıcılara teslim tarihi ile ilgili söz vermemeye çalışın. Kullanıcıların istediği her şeye evet demeyin. Büyük değişiklik gerektirecek isteklere ekiple görüşmeden cevap vermeyin, atladığınız bir detay çıkabilir.

Kodlarınızı düzenleyin. Kalitesiz kod acil işler doğurur. Aynı kod parçasını üzerinde hep aynı personel çalışmasın, yazılım ekibindekiler birbirlerinin yerini tutabilsinler. Toplantılara zaman ayırın, bu toplantılarda ekip tecrübelerini paylaşsın, aynı hata ile başkaları zaman kaybetmesin, dokümantasyonunuz güncel olsun. Geliştirme ortamı ve canlı ortam aynı özelliklerde olmalıdır. Canlı veritabanı geliştirme için kullanılmamalıdır. Otomatik testler olmalıdır, güncelleme atılmadan önce bu testler çalıştırılmalıdır.

Can kurtaran simidiniz olan yedekleme mekanizmasını işler halde tutun. Yedek veri tabanı, yedek kodlar, yedek sunucular, yedek IP adresleri, yedek cihazlar varlıklarıyla sizi rahatlatabilirler. Ama bu yedeklerin nasıl kullanılacağını bilmiyorsanız ya da zamanında kullanamazsanız sizin için bir değeri olmaz. Bu yüzden en az ayda bir kere, tüm sistemi yedeklerden hizmet verecek şekilde ayarlayıp ekibi yedekler konusunda canlı tutun.

Hata takip, proje takip araçlarını verimli bir şekilde kullanın. Teknik destek, satış ve yazılım ekipleri arasında sağlıklı ilişkiler oluşturmaya çalışın, bunun için ara sıra odanızdan çıkın ve diğer ekiplerle konuşun.

Acil olmayan işler görürsünüz inşallah :)

Yorumlar

Bu blogdaki popüler yayınlar

Bir Uluslararası Yazılım Şirketinin Batış Hikayesi

 Güzel başlamıştı hikaye. Yazılımcılar mutlu, kullanıcılar memnundu. Sonra pandemi başladı. Sorun para değildi. Olmayan şey huzurdu… Durdurun hype trenini, inecek var kırık kalpler durağında  — Photo by Kelly Sikkema on  Unsplash Gerçek olamayacak kadar güzeldi çalışma ortamı. Yazılımcılara istedikleri eğitim ve donanım alınıyordu, personel arası hiyerarşik bir yapı yoktu, sorumluluğun yanında yetki de veriliyordu, esnek çalışma saatleri yazılımcılara göre esnekti, izin isteyen hiç kimse geri çevrilmiyordu, pandemiden önce bile uzaktan çalışma vardı. Ne oldu bu şirkete? Nazar mı değdi? Şirketin yazılım ürünü Türkiye’de doğmuştu. Ürün birçok ülkede hem kamu tarafından hem de özel sektör tarafından kullanılıyordu. Yazılım geliştirme ekipleri hem Türkiye’de hem de diğer ülkelerde bulunuyordu. Yazılımın argesi için gelen geri bildirimlerin çoğu Türkiye’den geliyordu. Yazılımın kalbi Türkiye’de atıyordu.  Koronavirüs pandemisi nedeniyle Türkiye’de kamu kuruluşları hizmet alımı ile aldıklar

Türkiye'de Yazılım Şirketi Açmak ve Çıldırmamak

Aklında bir fikir vardı. Piyasada bunu karşılayan yazılımlar vardı ama hepsi eksikti. Hayalindeki yazılım ürününe hiçbiri yaklaşamıyordu. Gördüğü kadarıyla piyasanın böyle bir ürüne ihtiyacı vardı. Kullanıcılar mevcut ürünlerden şikayetçiydi. Kendi ekibini toplayıp hayalindeki şirketi kurmaya niyetlendi. Rüzgarlara dikkat!- Francesco Ungaro -  Pexels İşinden istifa etmeden önce piyasa araştırmasını yaptı, rakip ürünleri inceledi. En önemlisi ekibini kurdu. Ürününün MVP hali için çalışmaları başlattı. Girişim kurmak ile ilgili birçok kitap ve blog okudu, podcastler dinledi. Girişimci birkaç kişinin çayını kahvesini içti. Öngörebildiği her şey için önlemini aldı ve istifa edip kendi yazılım şirketini kurdu. Şirket kurmak için gerekli süreçler düşündüğünden daha kolay geçti. Şirketin adı ve logosu zaten hazırdı. Şirket teknoparkta yerini almıştı. Kendisi etiketlere çok önem vermiyordu ama yine de LinkedIn’deki profiline “Founder of the …” ibaresini ekledi. MVP’nin ortaya çıkması hedefini

Yazılımcılar İçin Yan Proje Oluşturma Rehberi

İster hobi amaçlı olsun ister maddi amaçlı her yazılımcının bir yan projesi olmalıdır. Peki yan proje oluştururken nelere dikkat edilmelidir, nasıl bir yan projemiz olmalıdır? Organize olalım beyler Yan proje (side project) için öncelikle bir fikir bulmak gerekli. Bu projenin amacı ne olacak? Hangi ihtiyacı çözecek? Yeni bir fikir mi olacak yoksa mevcut bir fikrin daha iyi uygulanmış bir hali mi olacak? Sadece yeni bir teknolojiyi öğrenmek için mi? Deneysel mi olacak ya da eğlenceli mi? Yoksa maddi bir getirisi olacak mı? Bu proje ürün olursa kimler kullanacak? Ürünü kullanacak kişilere erişip geri bildirim alabilecek miyim? . . . Bu soruların doğru bir cevabı yok, cevaplar size bağlı. Ama proje bir amaca hizmet edip bir ihtiyacı çözecekse, hele birde maddi getirisi olacaksa motivasyonunuz yükselecektir. Bunun yanında sadece eğlence amaçlı olan deneysel bir proje yapmak stressiz bir öğrenme ortamı sağlayacaktır. Gün içinde proje için aklınıza gelen her şeyi not alın. Not almazsan