Teklif al

Yazılım Danışmanlığı · Ankara

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

Devralınan bir sistemde ilk soru teknik değil: bunu bizden sonra kim taşıyacak. Cevap kurumun kendi bilgi işlem birimiyse o birimin bildiği araç seti de bellidir; Ankara'da çok birimli bir kurumda o birim merkezde duruyor olabilir. Ankara yazılım danışmanlığı işini biz bu sınırın içinde kuruyoruz. KGM SsangYong kurumsal sitesinde katalog okumalarını Redis önbelleğine aldık, MySQL yalnız veri değiştiğinde devreye giriyor. Uygulama çatısına yeni bir bağımlılık girmedi.

Yazılım Danışmanlığı — Ankara

Ankara'nın çalışma dokusunda yönetim katmanı ağır basıyor: çok birimli kurumlar, merkez ofisler, yıllar içinde birim birim büyümüş sistemler. Bu profile en yakın işimiz KGM SsangYong kurumsal sitesi, devraldığımız bir Laravel uygulaması. Örtüşmediği yeri söyleyelim: o site bir otomotiv markasının katalog yüzeyi, kurum içi yönetim ekranı değil; çok birimli bir kurumun iç iş akışını devralıp iyileştirdiğimiz bir işimiz bulunmuyor. Taşınan şey ekran değil, işin sırası: kod okunuyor, hangi bölümün ne yaptığı çıkarılıyor, çalışan yerler bulundukları gibi bırakılıyor. Alttaki set bulunduğu hâlde kaldı: Laravel, Tailwind, jQuery, MySQL ve Redis.

  • Okuma yolu ile yazma yolu ayrıldı: aynı katalog sorgusu her ziyaretçi için baştan çalışmıyor, cevabı Redis tutuyor, MySQL sıraya yalnız kayıt değiştiğinde giriyor.
  • Görsel yerleşimi kod dışından okunur hâle geldi; bir modelin görselini bulmak artık kaynak içinde arama yapmayı değil, ad ve klasör düzenine bakmayı gerektiriyor.
  • Yığın büyümedi: bakımı sürdürecek taraf zaten Laravel, Tailwind ve jQuery biliyordu, iş de o setin içinde kaldı.

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ı

KGM SsangYong — okuma önbellekten dönüyor, araç seti bulunduğu gibi kaldı

Devraldığımız site yayındaydı, yeniden yazma seçeneği masada değildi. İşe hangi bölümün ne yaptığını çıkarıp dokunulmayacak yerleri işaretleyerek başladık. Sonra okuma yolu değişti: aynı katalog sorgusu her ziyaretçi için baştan çalışmıyor, cevabı Redis tutuyor, MySQL sıraya yalnız kayıt değiştiğinde giriyor. Dağınık araç görselleri tek ad ve klasör düzenine bağlandı; bir modelin görselini bulmak kaynakta arama yapmayı gerektirmiyor. En ağır model sayfalarında görsel boyutlarını ve jQuery'nin attığı istekleri ayrı ayrı hafiflettik. Yığına yeni bir araç girmedi.

Vaka çalışmasını okuyun →

Ankara 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

  • Devralınan sistemi bizim bilgi işlem birimimiz sürdürecek. Yeni araç öğrenmek zorunda kalır mıyız?

    Hayır. KGM SsangYong işinde Laravel, Tailwind ve jQuery setinin dışına çıkmadık. Bakımı kurum içindeki bir ekip sürdürecekse, seçilen aracın o ekibin zaten bildiği araç olması gerekiyor.

  • Sayfalar yavaş açılıyor, sunucuyu büyütmek çözer mi?

    Çoğu zaman sorun kapasitede değil, aynı sorgunun her açılışta baştan çalışmasında. Katalog okumaları önbelleğe alındığında veritabanı yalnız kayıt değiştiğinde devreye giriyor. Donanım büyütmeden önce bakılacak yer burası.

  • Ankara'da kamu projesi deneyiminiz var mı?

    Yok ve olmadığını söylüyoruz. Portföyümüzde kamu işi bulunmuyor; anlattığımız her şey özel sektör işlerinden geliyor. Gösteremediğimiz bir alan için söz de vermiyoruz.

  • Çalışan bölümlere dokunulacak mı?

    Dokunulmuyor. Müdahaleyi sayfa yükünü taşıyan yerlerle sınırlıyoruz: okuma yolu, görsel depolama düzeni ve en ağır çalışan model sayfaları. Geri kalanı bulunduğu gibi kalıyor.

Elinizdeki sistemi okumamızı ister misiniz?