Teklif al

Yazılım Danışmanlığı · Beşiktaş

Beşiktaş markaları için Yazılım Danışmanlığı

Bir liste bir kez ikiye ayrıldıysa geri toplamak zor oluyor. Yıllar önce ikincisi de eklenmişse ve eklenen şey kaydın üstünde bir alan yerine ayrı bir katalog olmuşsa sonuç bugün görünüyor. Bugün elde iki panel, iki kayıt kümesi ve ay sonunda elle birleştirilen bir tablo duruyor. Beşiktaş yazılım danışmanlığı işinde bizim baktığımız yer burası: ayrım bir liste mi olmalı, yoksa bir filtre ekseni mi. Plastik ve Makina'da ikincisini kurduk.

Yazılım Danışmanlığı — Beşiktaş

Genel merkez katından yayınlanan bir liste kapatılamıyor; iki kataloğu birleştirme işi de bu yüzden yayın sürerken planlanıyor, gece indirilip sabah açılan bir sürüm olmuyor. Beşiktaş'ın dokusunda genel merkez ofisleri ve çok markalı kurumsal yapılar öne çıkıyor; bu dokuya en yakın işimiz Plastik ve Makina. Bu işin nerede örtüşmediği belli: platform plastik işleme makinesi ticareti için kuruldu, medya ve ajans işinin kendi üretim akışı için gösterecek işimiz yok; çok markalı bir grubun konsolide raporlaması da kapsamın dışında. Taşınan kısım ayrımın nerede duracağı: durum ikinci bir katalog değil, kaydın üstünde bir alan. Altında Laravel duruyor; kaydı MySQL, önbelleği Redis taşıyor, liste sunucuda üretiliyor, arayüzü Inertia ile Tailwind kuruyor.

  • Sıfır ve ikinci el kayıtlar tek listede duruyor; alıcı durumu filtre olarak açıp iki seçeneği aynı arama içinde karşılaştırıyor.
  • Laravel listeyi sunucuda hazırlıyor, Inertia tarayıcıya taşıyor; filtre her değiştiğinde sayfa baştan yüklenmiyor, sonuçlar yerinde tazeleniyor.
  • Kapsam sınırı yazılı: konsolide grup raporlaması, medya üretim akışı ve marka bazlı bütçe takibi bu işin dışında.

Neden Algoriel

  • Önce kodu okuruz

    KGM SsangYong'un kurumsal sitesini biz kurmadık; devraldığımız kodu önce okuyup çalışan bölümlerini olduğu gibi bıraktık.

  • Yük taşıyan yere müdahale

    Aynı katalog sorgusu her açılışta MySQL'e düşüyordu; okuma Redis önbelleğine alındı, geri kalanına dokunulmadı.

  • Çatınızın dışına çıkmayız

    KGM SsangYong'da devraldığımız Laravel, Tailwind ve jQuery setinin dışına çıkmadık; yığına eklenen tek parça önbellek katmanı oldu.

  • Kopuk zinciri bağlarız

    Resterm'de hesap bir tabloda, katalog dosyada, teklif üçüncü yerdeydi; seçim sepete, sepet projeye ve müşterisine bağlandı.

  • Önce kodu okumak

    Devralınan kod tabanını baştan okuyoruz; neyin taşınacağını ve neye dokunulmayacağını tek tek adlandırıyoruz. Kapsam bu okumadan çıkıyor, hazır bir şablondan değil.

  • Mevcut yığında kalmak

    Bakımı sürdüren ekibin tanımadığı bir kütüphane, giderken arkamızda bıraktığımız bir yük olurdu. KGM SsangYong'un kurumsal sitesi hazır bir kütüphane setiyle geldi ve o sete tek satır bağımlılık eklemedik.

  • Müdahalenin sınırı

    Yalnız yavaş çalışan yerleri açıyoruz; ağır bölümler tek tek ele alınıyor, gerisi yerinde kalıyor. Sınırın nerede duracağı okuma bittiğinde yazılı olarak sizde olur.

  • Dosya düzeninin toparlanması

    Dağınık duran dosyaları tek bir adlandırma ve klasör düzenine taşıyoruz. Hangi modelin hangi dosyayı kullandığı, kod okunmadan görülür oluyor.

  • Okuma yükünün azaltılması

    Her ziyaretçi için baştan yapılan aynı sorgu bir kez üretilip paylaştırılabiliyor. KGM SsangYong'da katalog sayfasının sorgusu artık veri değişmedikçe yeniden koşmuyor.

  • Kod yazılmadan önceki karar

    Bazı kararlar ilk satırdan önce verilir ve sonradan düzeltilmesi pahalıya gelir. Resterm'in ısıtıcı seçim yazılımı üreticinin kendi ürün yapısı üzerine kuruldu; genel amaçlı bir teklif aracının bu yapıyı taşımayacağı baştan görülmüştü.

Buna benzer çalışmalar

Yazılım Danışmanlığı · Vaka çalışması

Plastik ve Makina — durum listenin bir filtre ekseni, ikinci katalog açılmıyor

Plastik işleme makinesi alan ve satan taraflar için kurduğumuz sektörel ilan platformu. Kategori ağacının tamamı tek bir makine ailesinin ayrımlarına göre kurulu; genel bir ilan sitesinde alt başlık olarak kalan ayrım burada ana eksen oluyor. Sıfır ve ikinci el ilanlar ayrı kataloglara bölünmüyor, aynı listede duruyor ve durum bir filtre olarak açılıyor; alıcı iki seçeneği tek arama içinde karşılaştırıyor. Laravel listeyi sunucuda hazırlıyor, Inertia tarayıcıya taşıyor, filtre değişince sonuçlar sayfa baştan yüklenmeden tazeleniyor. MySQL ilan kayıtlarını tutuyor, Redis önbellek katmanını üstleniyor. Kapsam ilan ve katalog tarafı.

Vaka çalışmasını okuyun →

Beşiktaş ekipleriyle uzaktan çalışmak

Ofisimiz yok; bu şehirdeki işleri de uzaktan yürütüyoruz ve yerinde destek vermiyoruz. Ne yapıldığı ve neden öyle yapıldığı yazılı duruyor. Ortaklıkla geliştirdiğimiz işler proje sayfalarında işaretli.

  • İlk sürüm çalışan bir parçayla çıkar, ek yetenekler sonra eklenir.
  • Bildiğimiz müşterilerimizin tamamı Türkiye'de.
  • Kararlar yazılı duruyor, ilerleme çalışan ekranlardan görünüyor.

Sık sorulan sorular

  • İki ayrı listeyi birleştirmek için sistemi kapatmamız gerekir mi?

    Birleştirme tek seferde yapılan bir taşıma değil. Önce iki kaydın hangi alanlarda ayrıştığını çıkarıyoruz, sonra ayrımı tek bir alana indiriyoruz; yayındaki liste bu sırada eski katalogdan okumaya devam ediyor. Plastik ve Makina'da bu ayrım baştan alan olarak kuruldu.

  • Devraldığınız kodu baştan yazıyor musunuz?

    Hayır. Çalışan bölüm çalışıyorsa dokunmuyoruz. SsangYong kurumsal sitesinde yaptığımız buydu: sistem devralındı, iyileştirme ve depolama altyapısının düzenlenmesi mevcut kod üstünde yapıldı, jQuery mirası atılmadı.

  • Plastik ve Makina bir ilan platformu; bizimki çok markalı bir genel merkez yapısı.

    Farkı olduğu gibi söylüyoruz. Taşınan şey sektör değil bir karar: bir ayrımı liste olarak mı, alan olarak mı tutacaksınız. Marka, durum ya da bölge; hangisi olursa olsun, ayrım alana indiğinde ikinci panel ve ay sonu birleştirmesi ortadan kalkıyor.

  • Filtre eklemek yerine ikinci bir site kurmak daha ucuz değil mi?

    İlk gün ucuz görünüyor. İkinci site ikinci kayıt kümesi demek ve o kümeyi bir süre sonra biri elle eşitliyor. Maliyet kurulumda değil, aynı bilginin iki yerde tutulduğu her ayda doğuyor.

Elinizdeki sistemi okumamızı ister misiniz?