Ali Gündoğdu CTO @gensuretech | Maker | Father

Prototip ile Ürün Arasındaki Ölümcül Vadi: Tasarım, İşlevsellik ve Pazar Uyumu

Blog Post Featured Image


Kodun Ötesi: Bir Fikrin “Ürün” Olma Sancısı, Tasarım İllüzyonu ve Yaşam Döngüsü


1628 yılının Ağustos ayında, İsveç Kralı Gustavus Adolphus’un emriyle inşa edilen “Vasa” isimli savaş gemisi, Stockholm limanından büyük bir törenle denize indirildi. Vasa, döneminin mühendislik harikasıydı. Kral, geminin daha önce görülmemiş bir ateş gücüne sahip olmasını istemiş, mühendisleri gemiye ekstra top bataryaları eklemeye zorlamıştı. Sadece güç yetmezdi; gemi aynı zamanda imparatorluğun ihtişamını yansıtmalıydı. Bu yüzden gövdesi yüzlerce ahşap oyma heykel, altın varaklar ve ağır süslemelerle donatıldı.


Gemi, limandan ayrıldıktan sadece 1300 metre sonra, hafif bir rüzgarla yan yattı. O muazzam toplar, o göz kamaştırıcı heykeller, o “mükemmel” tasarım, geminin dengesini o kadar bozmuştu ki, Vasa dakikalar içinde sulara gömüldü.


Mühendisler, Kral’ın “daha fazla özellik” (feature) ve “daha fazla ihtişam” (design) taleplerini yerine getirmişlerdi. Kağıt üzerinde her şey muazzamdı. Ama unuttukları tek bir şey vardı: Geminin yüzmesi gerekiyordu.


Bugün teknoloji dünyasında, her gün yüzlerce “Vasa” inşa ediliyor.


Biz teknoloji liderleri, genellikle kodumuzun compile etmesiyle, testlerin yeşil yanmasıyla veya arayüzün piksellerinin kusursuzluğuyla övünürüz. Oysa 20 yılı aşkın süredir endüstrinin mutfağında gördüğüm tek bir gerçek var: En mükemmel algoritma bile, eğer bir insanın derdine derman olmuyorsa, sadece işlemci ısındıran bir gürültüdür. Vasa’nın oymalı heykelleri neyse, kimsenin kullanmadığı bir uygulamanın “clean code” mimarisi de odur.


Bugün, “Bütüncül Teknoloji Lideri” (Holistic Tech Leader) şapkamı önüme koyup, sizlerle filtresiz bir sohbet etmek istiyorum. Masa başında tasarladığımız o “kusursuz” dünyalar, sokağın tozuna ve müşterinin gerçekliğine çarptığında neden tuzla buz oluyor? Neden “çok mantıklı” dediğimiz fikirler ürünleşemiyor?


Gelin, Yunus Emre’nin “İlim ilim bilmektir, ilim kendin bilmektir” düsturunu, modern ürün geliştirme süreçlerine uyarlayalım. Çünkü bizim dünyamızda ilim; yazdığın kodun kime, neye ve hangi “iş değerine” (Business Value) hizmet ettiğini bilmektir.


1. Mutfaktaki Simya: Ar-Ge’nin Cazibesi ve Prototip İllüzyonu


Ürün geliştirme süreci, genellikle sessiz ve steril bir laboratuvarda, Araştırma ve Geliştirme (Ar-Ge) ile başlar. Burası biz teknik insanlar için bir oyun parkıdır. Maliyet baskısı yoktur, müşteri şikayeti yoktur, sadece “olasılıklar” vardır.


Ar-Ge, bir sorunun etrafında atılan entelektüel bir turdur. Pürüzlü Mükemmellik kitabında vurgulandığı gibi; “Hızlanmak için bazen yavaşlamak gerekir.” Bu aşamada yapılan derinlemesine araştırmalar, ileride bizi büyük teknik borçlardan kurtaracak olan temeldir. Ancak burada büyük bir tehlike yatar: Mutfak Körlüğü.


Bir şefin mutfakta kendi damak tadına göre soslar hazırlamasıyla, o yemeğin 500 kişilik bir restoranda servis edilmesi arasında dağlar kadar fark vardır. Yazılımcılar olarak bizler, Ar-Ge sürecinde teknolojinin kendisine aşık olma eğilimindeyiz. “Bu veritabanı milisaniyede milyon işlem yapıyor” cümlesi bizi heyecanlandırır. Ama asıl soru şudur: “Bizim kullanıcımızın milyon işlem yapmaya ihtiyacı var mı?”


Prototip: Güzel Bir Hayalet


Ar-Ge sürecinin sonunda elimize geçen şeye “Prototip” diyoruz. Bir butona basıyorsunuz, arkada karmaşık işler dönüyor ve ekrana bir sonuç geliyor. Bu an, teknik ekibin zafer çığlıkları attığı andır. Oysa bir prototip, henüz ruhu olmayan, güzel bir hayaletten ibarettir.


Rework’un yazarları Jason Fried ve DHH’nin o keskin tespiti burada devreye girer: “Prototipler, fikirlerin en çiğ halidir.”


Bir prototipin çalışıyor olması, onun bir “ürün” olduğu anlamına gelmez. Prototip, teknik bir hipotezin kanıtıdır (Proof of Concept). Ürün ise, ticari ve insani bir sözleşmedir. Prototip ile ürün arasındaki farkı şöyle özetleyebilirim:


  • Prototip: “Bakın, bu teknoloji çalışıyor.”
  • Ürün: “Bakın, bu teknoloji sizin hayatınızı iyileştiriyor ve bunun için bana para/zaman vermeye değersiniz.”

Müşterisi hazır olmayan, bir acıyı dindirmeyen, sadece teknik bir challenge (meydan okuma) olarak görülen her şey, prototipten öteye gidemez. İsterseniz dünyanın en ileri yapay zeka modellerini kullanın, eğer o modeli kullanacak kişinin hayatında somut bir “değer” yaratmıyorsanız, yaptığınız şey sadece pahalı bir hobi, bir egzersizdir.


2. Mantık Tuzağı: Rasyonel Fikirlerin İrrasyonel Mezarlığı


Mühendis kökenli zihinlerin en büyük handikabı, dünyayı lineer bir denklem olarak görme eğilimidir. Bizim için $A + B = C$ olmalıdır.


  • Önerme: İnsanlar faturalarını takip etmekte zorlanıyor. (Sorun A)
  • Çözüm: Ben mükemmel bir fatura takip sistemi kodladım. (Çözüm B)
  • Beklenti: Herkes benim sistemimi kullanacak. (Sonuç C)

Ancak gerçek hayatın matematiği böyle işlemez. İnsanlar mantıklı kararlar veren makineler değildir; alışkanlıklarına, korkularına ve duygularına göre hareket eden varlıklardır.


“Vitamin” mi, “Ağrı Kesici” mi? Bir fikrin “mantıklı” olması, onun “satılabilir” olduğunu garanti etmez. Sektörde sıkça kullandığımız bir metafor vardır: Ürününüz bir vitamin mi, yoksa bir ağrı kesici mi?


  • Vitamin: Alsanız iyi olur, sağlığa faydalıdır ama almayı unutsanız da hayatınız devam eder. (Örneğin: “Daha detaylı analiz sunan bir raporlama aracı.”)
  • Ağrı Kesici: Başınız çatladığında onu bulmak için gece yarısı nöbetçi eczane ararsınız. (Örneğin: “Şirketin nakit akışı durduğunda onu açan bir sistem.”)

Bize mantıklı gelen fikirlerin çoğu, aslında sadece güzel paketlenmiş vitaminlerdir. Müşteri, konfor alanını bozup yeni bir ürün öğrenmek için “mantıklı bir sebepten” fazlasına, “yakıcı bir ihtiyaca” muhtaçtır.


Rework felsefesi “Kaşınan yeri kaşıyın” (Scratch your own itch) der. En başarılı ürünler genellikle pazar araştırması raporlarından değil, kurucunun bizzat yaşadığı bir soruna çözüm aramasından doğar. Ancak burada ince bir çizgi vardır: Sizin kaşındığınız yer, başkasının umurunda olmayabilir. Kendi fikrinize aşık olmak, bir liderin yapabileceği en büyük hatadır. Fikrinizi doğrularken acımasız olmalısınız.


3. Sessiz Savaş: Tasarım mı, İşlevsellik mi? (Ve Tasarımda Aşırılık Tuzağı)


Yazılım dünyasında bitmek bilmeyen o sessiz savaşı hepimiz biliriz: Backend’in “işi yapan motor” olma kibri ile Frontend/Design ekibinin “kullanıcıyı karşılayan yüz” olma ısrarı.


Bu tartışma genellikle yanlış bir zeminde yapılır. “Tasarım ne kadar güzel olmalı?” sorusu yanlıştır. Doğru soru şudur: “Tasarım, işlevselliğin önüne geçmeden ona nasıl yol açar?”


Tıpkı kod yazarken yaptığımız “Over-engineering” (aşırı mühendislik) hatası gibi, tasarımda da “Design Over-engineering” (Tasarım Aşırılığı) tuzağına düşüyoruz. Bir CTO olarak duruşum nettir: İşlevsiz bir tasarım boş bir kutudur, tasarımsız bir işlevsellik ise kullanılamayan bir hazinedir. Ancak denge, pragmatizmde yatar.


B2B Dünyasında: “Eli Yüzü Düzgün” (Clean & Decent) Yeterlidir


Eğer kurumsal (B2B) bir ürün geliştiriyorsanız, kullanıcınızın psikolojisini anlamanız gerekir. O kullanıcı, o yazılımı keyif için değil, mesaisi bitsin diye kullanıyordur. Onun ihtiyacı “wow efekti” yaratan animasyonlar, gölgeli butonlar veya sanat eseri gibi ikonlar değildir.


Onun ihtiyacı Netliktir. B2B ürünlerde tasarım, bilişsel yükü (cognitive load) azaltmak için vardır.

  • Butonun yeri belli mi?
  • Hata mesajı anlaşılır mı?
  • Veri tablosu okunabilir mi?

Burada tasarıma harcanacak ekstra her efor, ürünü hantallaştırır. “Eli yüzü düzgün”, standartlara uyan, temiz bir tasarım, B2B’de mükemmelliğin ta kendisidir. Daha fazlası israftır.


B2C Dünyasında: Reflekslere Göre Şekillenmek


Son kullanıcıya (B2C) hitap eden işlerde ise durum biraz daha farklıdır ancak temel mantık aynıdır: Mükemmeli Bekleme.


Bir B2C uygulamasında tasarımın, kullanıcının güvenini kazanacak kadar profesyonel olması şarttır. Ancak her bir ekranı piksel piksel işlemek, ürünün çıkışını (Time-to-Market) geciktiren bir intihardır. Buradaki strateji “Kabul Edilebilir Başlangıç” olmalıdır. Ürün sahaya çıkar, kullanıcıların refleksleri izlenir.


  • Kullanıcılar hangi menüye tıklamaya çalışıyor?
  • Hangi renk dikkatlerini çekiyor?
  • Akış nerede tıkanıyor?

Tasarım, masa başında değil, sahada, kullanıcının parmak uçlarında evrimleşmelidir. Pürüzlü Mükemmellik’te dendiği gibi, hayat pürüzlüdür ve steril laboratuvar tasarımları, gerçek hayatın kaosunda genellikle çalışmaz. Bırakın tasarımınız, müşterinin refleksiyle şekillensin.


Unutmayın, Vasa gemisi de muhteşem bir tasarıma sahipti ama yüzemedi. Bizim amacımız müzede sergilenecek bir tablo yapmak değil, okyanusu geçecek bir gemi inşa etmektir.


4. Akıl Tutulmaları: Planlama İllüzyonu ve Genelleştirme Tuzağı


Masa başında, klimalı toplantı odalarında beyaz tahtaya çizilen mimariler her zaman harikadır. Her şey modülerdir, scalable (ölçeklenebilir) yapıdadır. “Şu olursa bu devreye girer, trafik artarsa sunucular otomatik çoğalır.”


Ancak sahaya inip, ürünü gerçek kullanıcılarla buluşturmaya başladığınızda “akıl tutulmaları” başlar.


Planlama Bir Tahmindir


Rework kitabındaki o çarpıcı gerçeği hatırlatmak isterim: “Planlama, sadece tahminden ibarettir.”


Teknoloji dünyasında 1 yıllık, 2 yıllık yol haritaları (roadmap) çıkarmak, fal bakmaktan farksızdır. Çünkü 6 ay sonra pazarın, teknolojinin veya rekabetin ne durumda olacağını kimse bilemez. Bizler genellikle “Ürünü bitirip öyle çıkalım” hatasına düşeriz. Oysa ürün asla bitmez. Ürün, bir heykel gibi yontulup kenara konulacak bir şey değildir; bir bahçe gibidir, sürekli bakım, budama ve ilgi ister.


Genelleştirme Sorunu (The Generalization Trap)


Çalıştığım projelerde ve yönettiğim ekiplerde karşılaştığım en büyük stratejik zorluk şudur: Bir müşterinin özel isteğini, tüm müşterilere uyarlamaya çalışmak.


Bir müşteri gelir ve der ki: “Ben raporları alırken, satırların renginin kırmızı olmasını ve verilerin tersten sıralanmasını istiyorum.” Yazılımcı için bunu kodlamak 15 dakikadır. “Hallederiz abi” moduna girmek çok kolaydır.


Ama ürün yöneticisi ve teknik lider için bu bir kabustur. Sorular başlar:


  • Bu özellik sadece bu müşteriye mi açık olacak? (Flag yönetimi?)
  • Yoksa sisteme “Rapor Özelleştirme Modülü” diye devasa bir yapı mı ekleyeceğiz?

İşte bu noktada ekipler boğulur. “Herkesi memnun edelim”, “Ürünümüz çok esnek olsun” derken, ortaya ne olduğu belli olmayan, her yerinden ayar fışkıran, kullanımı imkansız bir “Frankenstein” yazılım çıkar.


Bu bir akıl tutulmasıdır. Masa başında “esnek olsun” diye tasarlanan yapılar, sahada “karmaşıklık” (complexity) olarak karşımıza çıkar. Ve unutmayın, karmaşıklık, yazılımın en büyük düşmanıdır.


Gerçek bir teknoloji lideri, “Bunu yapabiliriz” diyen değil, “Bunu yapmamalıyız çünkü ürünün ruhuna ve sadeliğine aykırı” diyebilen kişidir. Teknik zorluk, kodu yazmakta değil, neyi yazmayacağına karar vermektedir.


5. Ürünün Yaşam Döngüsü: Çizgiyi Ne Zaman Bozmalı?


Ürünü canlıya aldınız (Go Live). Tebrikler, asıl dert şimdi başlıyor. Mevlana’nın o eşsiz sözünü hatırlayalım: “Dünle beraber gitti cancağızım, ne kadar söz varsa düne ait. Şimdi yeni şeyler söylemek lazım.”


Canlıdaki bir ürün, yaşayan bir organizmadır. Büyür, acıkır (sunucu/kaynak tüketir), hastalanır (bug’lar) ve ilgi ister (müşteri desteği). Bu yaşam döngüsünde en kritik konu, Müşteri Talepleri karşısında duruşunuzdur.


Müşteri Ne İstediğini Bilir mi?


Henry Ford’un o meşhur, “İnsanlara ne istediklerini sorsaydım, daha hızlı atlar derlerdi” sözü, ürün yönetiminin anayasasıdır.

Yazar Notu: Henry Ford’un böyle bir sözü yok ama bu tarz içeriklerde kullanmanın tadı bambaşka :)


Müşteri her zaman sorununda (problem) haklıdır, ama çözüm önerisinde (solution) genellikle yanılır. Müşteri sizden “Bana Excel’e aktar butonu koy” diyorsa, aslında şunu diyordur: “Senin arayüzünde verilerimi analiz edemiyorum, o yüzden güvendiğim limana (Excel) kaçmak istiyorum.” Sizin göreviniz o butonu koymak değil (bu kolayıdır), ürünün içindeki analiz yeteneklerini iyileştirmektir. Müşterinin dediğini yapmakla, müşterinin derdiğini çözmek arasında devasa bir fark vardır.


Çizgiyi Ne Zaman Bozmalı?


Ürün vizyonunuz ile müşteri talepleri çatıştığında ne yapacaksınız?


  • Çizgiyi Koruyun: Ürününüzün ana değer önerisi (Value Proposition) konusunda inatçı olun. Eğer “Basitlik” vaat ediyorsanız, müşterilerin %5’i istiyor diye ürünü karmaşıklaştırmayın. Rework felsefesi “Hayır” demenin bir kas olduğunu söyler. Kullanıcıların %1’inin istediği bir özellik için, %99’un deneyimini bozmayın.

  • Çizgiyi Bozun (Pivot): Eğer pazarın dinamikleri temelden değiştiyse, inat etmeyin. Örneğin yapay zeka devrimi, dün “vazgeçilmez” olan bir özelliği bugün “gereksiz” kıldıysa, o özelliği çöpe atmaktan korkmayın. Ürününüzün teknik altyapısını yakmak pahasına olsa bile, iş değerini (Business Value) takip edin.

Sonuç: Yanmaktan Korkma, Sadece Işık Saç


Sektörün farklı alanlarında, farklı coğrafyalara dokunan projelerde edindiğim tecrübe bana şunu öğretti: Ürün geliştirmek, sadece bir mühendislik harikası yaratmak değildir. Ürün geliştirmek; insan psikolojisini, ticareti, estetiği ve mühendisliği aynı potada eritmektir.


Masa başındaki pürüzsüz planlarınız sahada bozulacak.


“Asla patlamaz” dediğiniz servisler, en kritik müşteri demosunda yanıt vermeyecek.


Tasarımına günlerce uğraştığınız arayüzü, müşteri “çok karışık” bulacak.


En mantıklı fikriniz, pazarın mantıksızlığına yenilecek.


Bunların hepsi sürecin, o “pürüzlü mükemmelliğin” bir parçası. Nazım Hikmet’in dediği gibi:


“Sen yanmasan, ben yanmasam, biz yanmasak, nasıl çıkar karanlıklar aydınlığa?”


Doğru ürünü bulmak için o kodların içinde yanmayı, hata yapmayı, prototipleri yıkıp yeniden yapmayı göze almalıyız. Ama hep şu hedefle: Sadece teknik bir başarı değil, sahada, gerçek ellerde, gerçek iş süreçlerinde yaşayan bir değer üretmek.


Benim inancım odur ki; geleceğin liderleri sadece kodu bilenler değil, kodun insana değdiği yeri, o ince çizgiyi yönetebilen bütüncül liderler olacaktır. Sizin geminiz “Vasa” gibi süslü ama kırılgan mı olacak, yoksa fırtınalara dayanıklı, mürettebatını hedefe götüren bir gemi mi?


Seçim, yazdığınız ilk satır kodda değil, kurduğunuz ilk hayalde gizli.


Meraklısına; yazının ingilizce versiyonuna bu linkten ulaşabilirsiniz.

Görseller üretilirken Nano Banana Pro Kullanılmıştır.

You might also enjoy