Abdulkadir Güngör: Mühendislik Disiplininden Yazılım Zanaatkarlığına Uzanan Analitik Bir Yolculuk

Abdulkadir Güngör'ün profesyonel kimliği, farklı disiplinlerin ender rastlanan bir birleşimi üzerine kuruludur; İnşaat Yüksek Mühendisliği'nin sağlam analitik zemininden, İş Sağlığı ve Güvenliği Uzmanlığı'nın risk bilincinden ve nihayetinde Yazılım Geliştirme Uzmanlığı'nın yaratıcı problem çözme evreninden beslenen çok katmanlı bir yapıdır. Bu özgün arka plan, teknolojiye ve özellikle yazılıma sadece bir kodlama eylemi olarak değil, aynı zamanda yapısal bütünlük, sistemik güvenlik, operasyonel sağlamlık ve kullanıcı merkezli tasarım gibi daha geniş ve derin bir mühendislik perspektifinden yaklaşılmasını sağlar. Abdulkadir Güngör'ün kariyerindeki bu dikkat çekici dönüşüm ve evrim, bitmek bilmeyen bir öğrenme tutkusunun, farklı bilgi alanlarını ustaca birleştirerek daha dayanıklı, anlamlı ve etkili çözümler üretme arzusunun somut bir tezahürüdür. Onun nazarında yazılım, basit bir talimatlar bütünü olmanın çok ötesinde, mühendislik ilkelerinin hassasiyetiyle örülmüş, estetik bir duyarlılık taşıyan ve özen gerektiren bir zanaatkarlık alanıdır; karmaşıklığı yönetme ve zarafetle çözüm üretme sanatıdır. Bu multidisipliner yolculuğun başlangıç noktası, İnşaat Mühendisliği alanındaki lisans eğitimi ve ardından, alanında öncü bir teknik üniversite olan İstanbul Teknik Üniversitesi (İTÜ)'de Deprem Mühendisliği üzerine tamamlanan tezli yüksek lisans çalışmasıdır. Bu köklü eğitim, Abdulkadir Güngör'ün problem çözme yeteneklerine sarsılmaz bir temel atmıştır. Yapıların son derece karmaşık dinamik davranışlarını modellemek, çeşitli yük senaryolarını titizlikle analiz etmek, malzemelerin mekanik özelliklerini derinlemesine değerlendirmek ve en kritik nokta olarak, kaçınılmaz belirsizlikler ve riskler altında dahi hem güvenli hem de uzun ömürlü tasarımlar ortaya koymak, soyut düşünme kapasitesini, detaylara gösterilen özeni ve analitik akıl yürütme becerilerini en üst düzeyde geliştirmiştir. Bu mühendislik formasyonu, devasa ve karmaşık sistemleri anlamlı alt bileşenlerine ayırabilme, bu bileşenlerin birbiriyle olan karmaşık etkileşimlerini kavrayabilme ve sistemdeki potansiyel zayıf noktaları veya hata modlarını proaktif olarak öngörebilme yeteneği kazandırır. Bu değerli yetenek seti, modern yazılım mimarilerini tasarlarken, karmaşık ve performans kritik algoritmalar geliştirirken veya yazılan kodun uzun vadeli sürdürülebilirliğini ve bakım kolaylığını planlarken doğrudan ve etkili bir şekilde transfer edilebilir niteliktedir. Yapısal mühendislikte aranan o mutlak titizlik ve sağlamlık, yazılım geliştirme dünyasında kod kalitesi, mimari bütünlük ve sistemsel dayanıklılık arayışına dönüşmüştür; bir nevi dijital mühendislik anlayışıdır. Abdulkadir Güngör - Kişisel WebSite Abdulkadir Güngör - Kişisel WebSite Abdulkadir Güngör - Özgeçmiş Github Linkedin İnşaat mühendisliği alanındaki pratik deneyimlerin ardından gelen İş Sağlığı ve Güvenliği (İSG) sahasındaki uzmanlık ve bu alanda Ahmet Yesevi Üniversitesi'nden alınan yüksek lisans derecesi, Abdulkadir Güngör'ün analitik temeline hayati bir boyut daha eklemiştir: kapsamlı risk yönetimi ve insan faktörünün sistemler üzerindeki etkisinin anlaşılması. İSG disiplini, doğası gereği potansiyel tehlikeleri proaktif olarak tanımlama, bu tehlikelerden kaynaklanabilecek riskleri sistematik olarak değerlendirme, kabul edilebilir seviyelere indirmek için önleyici ve koruyucu tedbirler tasarlama ve uygulanan sistemlerin sadece teknik yeterlilik açısından değil, aynı zamanda insan kullanımı, etkileşimi ve olası hataları açısından da güvenli ve ergonomik olmasını sağlama üzerine odaklanır. Bu bütüncül güvenlik ve risk odaklı bakış açısı, yazılım geliştirme süreçlerinde sıklıkla yeterince önem verilmeyen ancak son kullanıcı memnuniyeti ve sistem güvenilirliği için kritik derecede önemli olan kullanıcı deneyimi (UX) tasarımı, hata toleransı (fault tolerance), sistemin kötüye kullanıma karşı direnci (security hardening) ve genel siber güvenlik duruşu gibi konulara karşı doğal bir duyarlılık ve proaktif yaklaşım geliştirir. Bir yazılım sisteminin sadece beklenen işlevleri doğru bir şekilde yerine getirmesi değil, aynı zamanda beklenmedik girdi durumlarında, sistem arızalarında veya kasıtlı ya da kasıtsız hatalı kullanıcı davranışlarında dahi öngörülebilir, kontrol altında tutulabilir ve en önemlisi güvenli bir şekilde davranması gerektiği anlayışı, İSG disiplininin yazılım dünyasına taşıdığı paha biçilmez bir kazanımdır. Bu anlayış, yazılımın sadece işlevsel ("functional") değil, aynı zamanda son derece "sağlam" ("robust") ve "güvenilir" ("reliable") olmasını sağlama hedefiyle birebir örtüşmektedir. Bu, kodun sadece 'mutlu yol' senaryolarını değil, aynı zamanda potansiyel 'fırtınalı' durumları da zarafetle yönetebilmesi anlamına gelir. Abdulkadir Güngör - Kişisel WebSite Abdulkadir Güngör - Kişisel WebSite Abdulkadir Güngör - Özgeçmiş Github Linkedin Yönetim Bilişim Sistemleri (MIS) alanında yine Ahmet Yesevi Üniversitesi'nden edinilen bir diğer yüksek lisans derecesi, Abdulkadir Güngör'ün

Apr 7, 2025 - 12:32
 0
Abdulkadir Güngör: Mühendislik Disiplininden Yazılım Zanaatkarlığına Uzanan Analitik Bir Yolculuk

Abdulkadir Güngör'ün profesyonel kimliği, farklı disiplinlerin ender rastlanan bir birleşimi üzerine kuruludur; İnşaat Yüksek Mühendisliği'nin sağlam analitik zemininden, İş Sağlığı ve Güvenliği Uzmanlığı'nın risk bilincinden ve nihayetinde Yazılım Geliştirme Uzmanlığı'nın yaratıcı problem çözme evreninden beslenen çok katmanlı bir yapıdır. Bu özgün arka plan, teknolojiye ve özellikle yazılıma sadece bir kodlama eylemi olarak değil, aynı zamanda yapısal bütünlük, sistemik güvenlik, operasyonel sağlamlık ve kullanıcı merkezli tasarım gibi daha geniş ve derin bir mühendislik perspektifinden yaklaşılmasını sağlar. Abdulkadir Güngör'ün kariyerindeki bu dikkat çekici dönüşüm ve evrim, bitmek bilmeyen bir öğrenme tutkusunun, farklı bilgi alanlarını ustaca birleştirerek daha dayanıklı, anlamlı ve etkili çözümler üretme arzusunun somut bir tezahürüdür. Onun nazarında yazılım, basit bir talimatlar bütünü olmanın çok ötesinde, mühendislik ilkelerinin hassasiyetiyle örülmüş, estetik bir duyarlılık taşıyan ve özen gerektiren bir zanaatkarlık alanıdır; karmaşıklığı yönetme ve zarafetle çözüm üretme sanatıdır.

Bu multidisipliner yolculuğun başlangıç noktası, İnşaat Mühendisliği alanındaki lisans eğitimi ve ardından, alanında öncü bir teknik üniversite olan İstanbul Teknik Üniversitesi (İTÜ)'de Deprem Mühendisliği üzerine tamamlanan tezli yüksek lisans çalışmasıdır. Bu köklü eğitim, Abdulkadir Güngör'ün problem çözme yeteneklerine sarsılmaz bir temel atmıştır. Yapıların son derece karmaşık dinamik davranışlarını modellemek, çeşitli yük senaryolarını titizlikle analiz etmek, malzemelerin mekanik özelliklerini derinlemesine değerlendirmek ve en kritik nokta olarak, kaçınılmaz belirsizlikler ve riskler altında dahi hem güvenli hem de uzun ömürlü tasarımlar ortaya koymak, soyut düşünme kapasitesini, detaylara gösterilen özeni ve analitik akıl yürütme becerilerini en üst düzeyde geliştirmiştir. Bu mühendislik formasyonu, devasa ve karmaşık sistemleri anlamlı alt bileşenlerine ayırabilme, bu bileşenlerin birbiriyle olan karmaşık etkileşimlerini kavrayabilme ve sistemdeki potansiyel zayıf noktaları veya hata modlarını proaktif olarak öngörebilme yeteneği kazandırır. Bu değerli yetenek seti, modern yazılım mimarilerini tasarlarken, karmaşık ve performans kritik algoritmalar geliştirirken veya yazılan kodun uzun vadeli sürdürülebilirliğini ve bakım kolaylığını planlarken doğrudan ve etkili bir şekilde transfer edilebilir niteliktedir. Yapısal mühendislikte aranan o mutlak titizlik ve sağlamlık, yazılım geliştirme dünyasında kod kalitesi, mimari bütünlük ve sistemsel dayanıklılık arayışına dönüşmüştür; bir nevi dijital mühendislik anlayışıdır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

İnşaat mühendisliği alanındaki pratik deneyimlerin ardından gelen İş Sağlığı ve Güvenliği (İSG) sahasındaki uzmanlık ve bu alanda Ahmet Yesevi Üniversitesi'nden alınan yüksek lisans derecesi, Abdulkadir Güngör'ün analitik temeline hayati bir boyut daha eklemiştir: kapsamlı risk yönetimi ve insan faktörünün sistemler üzerindeki etkisinin anlaşılması. İSG disiplini, doğası gereği potansiyel tehlikeleri proaktif olarak tanımlama, bu tehlikelerden kaynaklanabilecek riskleri sistematik olarak değerlendirme, kabul edilebilir seviyelere indirmek için önleyici ve koruyucu tedbirler tasarlama ve uygulanan sistemlerin sadece teknik yeterlilik açısından değil, aynı zamanda insan kullanımı, etkileşimi ve olası hataları açısından da güvenli ve ergonomik olmasını sağlama üzerine odaklanır. Bu bütüncül güvenlik ve risk odaklı bakış açısı, yazılım geliştirme süreçlerinde sıklıkla yeterince önem verilmeyen ancak son kullanıcı memnuniyeti ve sistem güvenilirliği için kritik derecede önemli olan kullanıcı deneyimi (UX) tasarımı, hata toleransı (fault tolerance), sistemin kötüye kullanıma karşı direnci (security hardening) ve genel siber güvenlik duruşu gibi konulara karşı doğal bir duyarlılık ve proaktif yaklaşım geliştirir. Bir yazılım sisteminin sadece beklenen işlevleri doğru bir şekilde yerine getirmesi değil, aynı zamanda beklenmedik girdi durumlarında, sistem arızalarında veya kasıtlı ya da kasıtsız hatalı kullanıcı davranışlarında dahi öngörülebilir, kontrol altında tutulabilir ve en önemlisi güvenli bir şekilde davranması gerektiği anlayışı, İSG disiplininin yazılım dünyasına taşıdığı paha biçilmez bir kazanımdır. Bu anlayış, yazılımın sadece işlevsel ("functional") değil, aynı zamanda son derece "sağlam" ("robust") ve "güvenilir" ("reliable") olmasını sağlama hedefiyle birebir örtüşmektedir. Bu, kodun sadece 'mutlu yol' senaryolarını değil, aynı zamanda potansiyel 'fırtınalı' durumları da zarafetle yönetebilmesi anlamına gelir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Yönetim Bilişim Sistemleri (MIS) alanında yine Ahmet Yesevi Üniversitesi'nden edinilen bir diğer yüksek lisans derecesi, Abdulkadir Güngör'ün teknik uzmanlığı ile iş dünyasının stratejik hedefleri ve operasyonel süreçleri arasındaki kritik bağlantıyı kurma yeteneğini önemli ölçüde pekiştirmiştir. MIS, teknolojinin sadece bir araç olarak değil, aynı zamanda bir organizasyonun genel hedeflerine ulaşmasında stratejik bir kaldıraç olarak nasıl etkin bir şekilde kullanılabileceğini, kurumsal bilgi akışının nasıl optimize edileceğini, veri yönetiminin nasıl yapılandırılacağını ve teknoloji odaklı projelerin (özellikle yazılım projelerinin) iş ihtiyaçları doğrultusunda nasıl başarılı bir şekilde planlanıp, yürütülüp ve değerlendirileceğini inceler. Bu eğitim, Abdulkadir Güngör'ün yazılım geliştirme sürecine sadece kod üreten teknik bir uygulayıcı gözüyle değil, aynı zamanda geliştirilen yazılım çözümünün hizmet ettiği daha büyük iş bağlamındaki stratejik yerini, operasyonel etkisini ve potansiyel katma değerini anlayan bütüncül bir profesyonel olarak yaklaşmasını sağlamıştır. Yazılımın sadece teknik mükemmelliğiyle (kod kalitesi, performans, mimari sağlamlık) değil, aynı zamanda karşıladığı spesifik iş ihtiyacı, süreçlere getirdiği verimlilik artışı veya yarattığı yeni iş fırsatları gibi iş metrikleriyle de ölçülmesi gerektiği bilinci, MIS perspektifinin temel bir getirisidir. Bu, geliştirme sürecinde alınan teknik kararların iş hedefleriyle sürekli olarak hizalanmasını ve sonuçta ortaya çıkan ürünün gerçek bir iş değeri yaratmasını sağlar. Bu anlayış, teknik ekip ile iş birimleri arasındaki iletişimi ve işbirliğini de güçlendirir ve projenin genel başarısı için kritik bir faktördür. Teknolojiyi iş stratejisinin bir parçası olarak görebilme yetisi kazandırır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Abdulkadir Güngör'ün zengin bilgi birikiminin ve uzmanlık alanlarının en dikkat çekici ve belki de en ayırt edici veçhelerinden biri de Siber Güvenlik alanındaki kayda değer derinleşmesidir. Bu alanda Ahmet Yesevi Üniversitesi'nden tamamladığı yüksek lisans derecesi, aldığı Etik Hacker Sızma Testi (Selçuk Üniversitesi), ISO 27001 Bilgi Güvenliği Yönetim Sistemi (TOBB Ekonomi ve Teknoloji Üniversitesi) gibi endüstri standardı eğitimler ve özellikle Linux İşletim Sistemi gibi temel sistemler üzerine Orta Doğu Teknik Üniversitesi Sürekli Eğitim Merkezi'nden aldığı eğitimler, teorik altyapısını sağlamlaştırmıştır. Ancak bu alandaki yetkinliğinin en somut kanıtları, "Windows İşletim Sistemlerinde Malware Analizi" (2022) ve "Linux İşletim Sisteminde Malware Analizi" (2021) başlıklarıyla yayınlanmış olan e-kitaplarıdır. Kötü amaçlı yazılım analizi gibi son derece teknik, spesifik ve sürekli evrilen bir konuda, farklı işletim sistemleri üzerinde iki ayrı eser yayınlamış olmak, işletim sistemlerinin iç işleyişine, bellek yönetimine, dosya sistemlerine, ağ protokollerine ve potansiyel saldırı vektörlerine dair derinlemesine bir bilgi birikimi ve analitik yetenek gerektirir. Bu siber güvenlik nosyonu ve pratik deneyimi, yazılım geliştirme pratiğine paha biçilmez bir katkı sağlar. Güvenli kodlama (secure coding) prensiplerine karşı doğal bir farkındalık ve yatkınlık geliştirmesini, yazılımın tasarım ve kodlama aşamalarında olası güvenlik zafiyetlerini (örneğin, buffer overflow, injection açıkları, yetkilendirme hataları, güvensiz veri depolama) proaktif olarak öngörme ve bunlara karşı etkin önlemler alma çabasını beraberinde getirir. Yazılımın sadece beklenen işlevleri yerine getirmesi ve performanslı olması değil, aynı zamanda günümüzün artan siber tehditlerine karşı dirençli ve güvenli olması gerektiği bilinci, Abdulkadir Güngör'ün bu güçlü siber güvenlik arka planından doğal olarak beslenir. Bu, geliştirdiği yazılımlara ek bir güvenilirlik katmanı ekler.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Tüm bu farklı ve birbirini tamamlayan disiplinlerden elde edilen kapsamlı bilgi birikimi ve pratik deneyimler, Abdulkadir Güngör'ün yazılım geliştirme alanındaki kararlı yolculuğunu besleyen son derece sağlam ve çok yönlü bir temel oluşturmuştur. Sektörde saygın bir kurumdan alınan kapsamlı .NET Yazılım Sertifikasyon Programı (özellikle belirtilen 320 saatlik süre, programın ciddiyetini gösterir), bu alandaki teknik yetkinlikleri en üst düzeyde pekiştirmiş ve modern yazılım geliştirme pratiklerine, araçlarına ve felsefelerine tam bir adaptasyon sağlamıştır. Bu yoğun eğitim programı, sadece C# programlama dilini ve .NET ekosisteminin temel yapı taşlarını (özellikle .NET Framework MVC'den modern .NET Core MVC ve Web API'ye geçişi kapsayacak şekilde) öğretmekle kalmamış, aynı zamanda yazılım mühendisliğinin temel prensipleri olan Nesne Yönelimli Programlama (OOP) kavramlarının (Kapsülleme, Kalıtım, Çok Biçimlilik, Soyutlama) derinlemesine anlaşılmasına, iyi yazılım tasarımının vazgeçilmezleri olan SOLID ilkelerinin (Tek Sorumluluk, Açık/Kapalı, Liskov Yerine Geçme, Arayüz Ayırma, Bağımlılık Tersine Çevirme) benimsenmesine, yazılım dünyasında sıkça karşılaşılan problemlere zarif çözümler sunan yaygın Tasarım Desenlerinin (Design Patterns) pratik kullanımına ve modern, büyük ölçekli uygulamaların temelini oluşturan N-Tier (N-Katmanlı) ve Onion (Soğan) gibi gelişmiş mimari yaklaşımların titizlikle uygulanmasına odaklanmıştır. Bu bütüncül ve derinlemesine eğitim, Abdulkadir Güngör'ün sadece belirli bir teknolojiyi kullanarak kod yazabilen bir teknisyen değil, aynı zamanda mühendislik prensiplerini uygulayarak iyi tasarlanmış, uzun vadede sürdürülebilir, değişime kolayca adapte olabilen, ölçeklenebilir ve etkin bir şekilde test edilebilir yazılımlar üretebilen yetkin bir geliştirici olmasını sağlamıştır. Bu, onu sadece bir "kodlayıcı"dan bir "yazılım mühendisi"ne dönüştüren kritik bir adımdır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Abdulkadir Güngör'ün yazılım geliştirme felsefesi, özgeçmişinin giriş bölümünde yer alan ve dikkatle kaleme alındığı belli olan metinde güçlü ve ilham verici bir şekilde ifade edilmiştir. "Yazılımın ruhu, kaçınılmaz karmaşıklığı bir zanaatkar sabrıyla yoğurmakta yatar." Bu başlangıç cümlesi, yazılım geliştirmeye karşı salt mekanik veya endüstriyel bir yaklaşımdan ziyade, büyük bir özen, derinlemesine dikkat, estetik bir duyarlılık ve adanmışlık gerektiren bir zanaat, bir ustalık alanı olarak yaklaştığının altını çizer. Karmaşıklık, modern yazılım sistemlerinin kaçınılmaz bir gerçeğidir; ancak asıl ustalık, bu içsel karmaşıklığı korkmadan kucaklayabilmek, onu sistematik olarak yönetebilmek, en temel mantıksal yapı taşlarına kadar dikkatle ve sabırla indirgeyebilmek ve ardından bu özleri, hem makinenin hatasızca işleyebileceği hem de gelecekteki insan zihinlerinin (diğer geliştiricilerin veya kendisinin gelecekteki halinin) kolayca anlayıp üzerinde çalışabileceği, açık, net ve sürdürülebilir bir yapıda, adeta bir sanat eseri gibi yeniden inşa edebilmektir. Bu özenli inşa süreci, sadece sistemin beklenen işlevselliğini sağlamayı değil, aynı zamanda kodun okunabilirliğini, bakım kolaylığını, test edilebilirliğini ve en önemlisi, gelecekteki kaçınılmaz değişikliklere ve evrimlere karşı adaptasyon yeteneğini de gözeten "estetik bir zarafeti" hedefler. İyi yazılmış, zarif bir kod, sadece makinenin anlayacağı kriptik bir dizi komut değildir; aynı zamanda diğer geliştiriciler için açık, net ve davetkar bir iletişim aracıdır; projenin kolektif aklının bir yansımasıdır. Bu felsefe, yazılımın sadece bir ürün değil, aynı zamanda bir süreç ve bir işbirliği platformu olduğunu kabul eder.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

"Kod, berrak, hassas ve geleceği gören bir bilgelikle katman katman, özenle örülmelidir." Bu cümle, Abdulkadir Güngör'ün yazılımı anlık, geçici çözümlerden ibaret görmediğini, aksine uzun vadeli bir vizyon ve stratejik bir planlama ile tasarlanması gereken kalıcı yapılar olarak ele aldığını güçlü bir şekilde vurgular. "Berraklık," kodun amacının, işleyiş mantığının ve bileşenler arasındaki ilişkilerin herhangi bir belirsizliğe yer bırakmayacak şekilde kolayca anlaşılabilir olması anlamına gelir; bu, isimlendirme standartlarından modüler tasarıma kadar birçok pratiği içerir. "Hassasiyet," gereksiz karmaşıklıktan, tekrardan ve verimsizlikten kaçınarak, problemi en doğru ve en etkili şekilde çözen, zarif ve optimize edilmiş çözümler üretmeyi ifade eder; "az ama öz" yaklaşımını benimser. "Geleceği gören bilgelik" ise, yazılımın statik bir varlık olmadığını, zaman içinde değişen iş gereksinimlerine, teknolojik ilerlemelere ve kullanıcı beklentilerine uyum sağlamak zorunda kalacağını öngörerek, onu en başından itibaren esnek, genişletilebilir ve modüler olarak tasarlama sanatıdır. Katmanlı mimariler (Abdulkadir Güngör'ün hakim olduğu N-Tier, Onion gibi) ve SOLID prensipleri, tam da bu felsefenin somut teknik yansımalarıdır. Çünkü bu modern yaklaşımlar, kodun mantıksal olarak farklı sorumluluklara ayrılmasını (separation of concerns), bileşenler arasındaki bağımlılıkların dikkatlice yönetilmesini (dependency management) ve yapılan değişikliklerin sistemin diğer bölümlerini minimum düzeyde etkilemesini (low coupling) sağlayarak kodun evrimleşmesini kolaylaştırır. Bu özenli, katman katman örme süreci, yazılımın sadece anlık kalitesini değil, aynı zamanda uzun vadedeki ömrünü, dayanıklılığını ve toplam sahip olma maliyetini doğrudan ve derinden etkileyen kritik bir faktördür. Bu, kısa vadeli hız yerine uzun vadeli sağlığı önceliklendiren bir yaklaşımdır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

"İyi kod, geçici bir mekanizmanın çok ötesinde bir anlam taşır; kalıcı bir değer vaat eder." Bu güçlü ifade, Abdulkadir Güngör'ün yazılımı sadece belirli bir anda belirli bir ihtiyacı karşılayan, kullanılıp atılan geçici bir araç olarak görmediğini, aksine doğru prensiplerle, özenle ve vizyonla yapıldığında uzun ömürlü bir kurumsal varlık, sürdürülebilir bir yatırım ve zamanla değeri artabilen kalıcı bir değer olabileceğini savunduğunu gösterir. Yapısındaki "sağlamlık," kodun sadece normal koşullarda değil, aynı zamanda beklenmedik hatalara, geçersiz girdilere veya aşırı yüklenmelere karşı da dirençli olması, zarif bir şekilde hata yönetimi yapabilmesi, kolayca çökmemesi ve en önemlisi tutarlı ve öngörülebilir bir şekilde çalışması anlamına gelir. Bu, Abdulkadir Güngör'ün mühendislik geçmişinden, özellikle deprem mühendisliğindeki "dayanıklılık" ve "güvenilirlik" kavramlarından doğrudan yazılım dünyasına aktardığı temel bir prensiptir; adeta dijital yapıların sağlamlığıdır. Tasarımındaki "düşünülmüş esneklik" ise, yazılımın zaman içinde ortaya çıkan yeni işlevsellik taleplerini eklemek veya mevcut iş mantığını değişen koşullara göre modifiye etmek gerektiğinde, minimum eforla ve sistemin genel yapısını bozmadan kolayca adapte olabilme yeteneğidir. Değişim, yazılım projelerinin ve dijital dünyanın kaçınılmaz bir gerçeğidir ve iyi tasarlanmış, esnek bir yazılım, bu değişimleri adeta "nazikçe kucaklar," yani büyük çaplı, maliyetli ve riskli yeniden yazımlara (rewrites) veya karmaşık yamalara (patches) gerek kalmadan, organik bir şekilde evrilebilir. Bu özellik, yazılımın yaşayan, nefes alan, dinamik bir varlık gibi zaman içinde gelişmesine, güncel kalmasına ve değerini korumasına olanak tanır. Bu, teknik borcun birikmesini önleyen proaktif bir yaklaşımdır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Bu arzulanan üstün niteliklere sahip yazılımlar yaratmanın yolu, Abdulkadir Güngör'ün ifadesiyle, "bulanıklıktan arınmış, kristal berraklığında bir zihin ve mimari inceliğe derin, köklü bir saygı" gerektirir. Zihinsel berraklık, ele alınan problemi tüm boyutlarıyla doğru ve eksiksiz bir şekilde anlamayı, paydaşlardan gelen gereksinimleri netleştirmeyi, varsayımları sorgulamayı ve ardından önerilen çözümü mantıksal, tutarlı ve doğrulanabilir adımlarla dikkatlice planlamayı ifade eder; analitik düşüncenin temelidir. "Mimari inceliğe derin, köklü bir saygı" ise, yazılımın sadece kod satırlarından ibaret olmadığını, onun genel yapısının, yani temel bileşenlerinin nasıl organize edileceğinin, bu bileşenlerin birbirleriyle nasıl etkileşimde bulunacağının (arayüzler, protokoller), veri akışının nasıl yönetileceğinin ve bağımlılıkların nasıl ele alınacağının projenin en başında dikkatlice ve stratejik olarak düşünülmesi gerektiği anlayışını yansıtır. Abdulkadir Güngör'ün N-Tier ve özellikle daha modern ve esnek olan Onion gibi mimari desenlere olan hakimiyeti, bu mimari bilince ve saygıya sahip olduğunun somut bir göstergesidir. Bu mimariler, yazılım mühendisliğinin temel ilkelerinden olan "separation of concerns" (sorumlulukların mantıksal olarak ayrılması) prensibini titizlikle uygulayarak kodun daha modüler, daha kolay test edilebilir, daha bağımsız geliştirilebilir ve sonuç olarak daha yönetilebilir olmasını sağlar. Örneğin, Onion mimarisi, en kritik varlık olan iş mantığını (domain logic ve domain model) uygulamanın tam merkezine yerleştirerek ve tüm bağımlılıkların (veritabanı erişimi, kullanıcı arayüzü, harici servis çağrıları gibi) bu merkezden dış katmanlara doğru tek yönlü akmasını sağlayarak, uygulamanın çekirdeğini dış dünyanın değişkenliklerinden ve teknolojiye özgü detaylardan tamamen bağımsız hale getirir. Bu, iş kurallarının korunmasını, test edilebilirliği ve teknoloji adaptasyonunu büyük ölçüde kolaylaştırır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

"Mimari bilgelik, kalıplara körü körüne bağlılık değil, her tasarım kararının getireceği ödünleri anlama ve bilinçli seçimler yapma sanatıdır." Bu son derece önemli nokta, Abdulkadir Güngör'ün yazılım geliştirmedeki dogmatik olmayan, pragmatik ve bağlama duyarlı yaklaşımını güçlü bir şekilde vurgular. Yazılım dünyasında "gümüş kurşun" yoktur; yani hiçbir mimari desen, hiçbir teknoloji veya hiçbir tasarım prensibi her durum, her proje veya her problem için mutlak en iyi çözüm değildir. Her teknik kararın, her mimari seçimin kendine özgü avantajları (örneğin, performans, ölçeklenebilirlik, geliştirme hızı) ve kaçınılmaz dezavantajları veya ödünleri (örneğin, artan karmaşıklık, öğrenme eğrisi, operasyonel yük, başlangıç maliyeti) vardır. Gerçek mimari bilgelik, popüler trendlere veya kişisel tercihlere körü körüne bağlanmak yerine, projenin spesifik gereksinimleri, kısıtları (zaman, bütçe, ekip yetkinliği), beklenen ömrü ve gelecek vizyonu bağlamında farklı tasarım alternatiflerini objektif olarak değerlendirebilmek, her seçeneğin getireceği potansiyel teknik borcu (technical debt), operasyonel zorlukları veya kazanılacak esneklik ve performans artışlarını öngörebilmek ve tüm bu faktörleri tartarak en bilinçli ve gerekçelendirilmiş kararı verebilme sanatıdır. Örneğin, monolitik bir mimari başlangıçta daha basit olabilirken, mikroservis mimarisi daha iyi ölçeklenebilirlik ve takım bağımsızlığı sunar ancak dağıtık sistemlerin getirdiği karmaşıklıkla başa çıkmayı gerektirir. Mimari bilgelik, bu tür kritik ödünleşmeleri (trade-offs) derinlemesine anlamayı ve projenin uzun vadeli hedefleri doğrultusunda en uygun ve sürdürülebilir dengeyi kurmayı gerektirir. Bu, deneyimle ve sürekli öğrenmeyle gelişen bir yetenektir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

"Kısa vadeli kazanımlarla uzun vadeli sürdürülebilirliğin o hassas, kırılgan dengesini kurabilmektir asıl maharet." Bu ifade, yazılım projelerinin yönetimindeki en yaygın ve en zorlu ikilemlerden birine doğrudan işaret eder: projeyi hızlı bir şekilde teslim etme baskısı ile üretilen kodun kalitesi, test edilebilirliği, bakım kolaylığı ve dolayısıyla uzun vadeli sürdürülebilirliği arasındaki kaçınılmaz denge arayışı. Proje takvimindeki sıkışıklıklar veya anlık ihtiyaçlar nedeniyle hızlı, ancak belki de yeterince düşünülmemiş veya "kirli" (dirty code) çözümler üretmek kısa vadede cazip görünebilir. Ancak bu tür aceleci yaklaşımlar, genellikle daha sonra katlanarak geri dönen, anlaşılması ve değiştirilmesi zor, hatalara açık ve projenin gelecekteki gelişimini engelleyen "teknik borç" (technical debt) birikmesine neden olur. Abdulkadir Güngör'ün felsefesi, bu hassas dengeyi tesadüflere bırakmak yerine bilinçli bir şekilde kurmayı, anlık kazanımlar uğruna uzun vadeli sağlığı feda etmekten kaçınmayı ve gerektiğinde biraz daha fazla zaman ve çaba harcayarak daha sağlam, daha temiz ve daha sürdürülebilir temeller atmayı savunur. SOLID prensipleri, temiz kod pratikleri ve iyi düşünülmüş mimari yaklaşımlar, tam da bu amaca hizmet eder. Çünkü bu prensipler ve pratikler, başlangıçta belki biraz daha fazla planlama ve disiplin gerektirseler de, uzun vadede kodun anlaşılmasını, test edilmesini, değiştirilmesini ve yeni özelliklerle genişletilmesini önemli ölçüde kolaylaştırarak, projenin toplam sahip olma maliyetini (Total Cost of Ownership - TCO) düşürür ve ömrünü uzatır. Asıl maharet, ne zaman hızın, ne zaman kalitenin önceliklendirilmesi gerektiğini doğru bir şekilde değerlendirebilmek ve bu kararları bilinçli olarak verebilmektir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Nihai hedef ise, Abdulkadir Güngör'ün vizyonunda, "hem bugünün ihtiyaçlarına cevap veren hem de yarının bilinmezliğini zarafetle karşılayan, sorumlulukla yaratılmış dijital eserler ortaya koymaktır." Bu kapanış cümlesi, yazılım geliştirmenin sadece teknik bir meydan okuma olmadığını, aynı zamanda önemli bir etik ve profesyonel sorumluluk taşıdığını güçlü bir şekilde vurgular. Geliştirilen yazılımın sadece işlevsel olması yetmez; aynı zamanda güvenilir olması, kullanıcıların verilerini en üst düzeyde koruması (gizlilik ve güvenlik), farklı yeteneklere sahip kullanıcılar için erişilebilir olması (accessibility) ve ideal olarak topluma veya hizmet ettiği organizasyona olumlu bir katkıda bulunması beklenir. "Yarının bilinmezliğini zarafetle karşılamak," yazılımın katı, kırılgan ve değişime dirençli yapılar yerine, adaptif, esnek ve evrimleşebilir olması gerektiği fikrini mükemmel bir şekilde özetler. Teknoloji dünyası ve iş gereksinimleri baş döndürücü bir hızla değiştiği için, bugünün mükemmel çözümü yarın yetersiz kalabilir. Bu nedenle, monolitik ve değiştirilmesi zor sistemler yerine, modüler, gevşek bağlı (loosely coupled) ve yeni durumlara, yeni teknolojilere veya değişen kullanıcı beklentilerine kolayca uyum sağlayabilen yazılımlar yaratmak esastır. Bu, sadece üstün bir teknik başarı değil, aynı zamanda geleceğe yönelik bir öngörü, stratejik bir planlama ve geliştiricinin taşıdığı derin bir sorumluluk anlayışının ürünüdür. Ortaya konan "dijital eserler," sadece bugünü kurtaran değil, yarını da inşa eden yapılar olmalıdır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Teknik yetkinlikler cephesine daha yakından bakıldığında, Abdulkadir Güngör'ün C# programlama diline ve modern .NET ekosistemine (özellikle .NET Core tabanlı MVC ve Web API framework'lerine) olan derinlemesine hakimiyeti, günümüzün talep gören backend geliştirme rolleri için son derece güçlü ve aranan bir temel oluşturur. C#, Microsoft tarafından geliştirilen, statik tipli, güçlü nesne yönelimli yeteneklere sahip, son derece çok yönlü (web, mobil, masaüstü, oyun, bulut, AI/ML gibi birçok alanda kullanılabilir), performans odaklı ve sürekli gelişen modern bir programlama dilidir. .NET Core (ve sonraki sürümleri .NET 5, 6, 7, 8 vb.), .NET Framework'ün mirasını devralan ancak onu açık kaynaklı, modüler, yüksek performanslı ve en önemlisi platformlar arası (Windows, Linux, macOS üzerinde sorunsuz çalışabilen) hale getiren devrim niteliğinde bir platformdur. Bu platform bağımsızlığı, geliştirilen uygulamaların farklı işletim sistemlerinde, lokal sunucularda, bulut ortamlarında (AWS, Azure, GCP vb.) veya konteynerize edilmiş (Docker gibi) ortamlarda kolayca ve tutarlı bir şekilde dağıtılabilmesini ve çalıştırılabilmesini sağlar. MVC (Model-View-Controller) deseni, web uygulamalarında kullanıcı arayüzü (View), iş mantığı (Controller) ve veri (Model) katmanlarını birbirinden ayırarak kodun organize edilmesini sağlayan köklü bir yaklaşımdır. Web API ise, özellikle RESTful (Representational State Transfer) prensiplerine uygun HTTP tabanlı servisler (API'ler) oluşturmak için tasarlanmış bir framework'tür. Bu API'ler, modern web uygulamalarının (Single Page Applications - SPA'lar gibi), mobil uygulamaların veya diğer servislerin backend ile iletişim kurmasını sağlar. Abdulkadir Güngör'ün bu temel teknolojilere olan derin hakimiyeti, günümüzün ihtiyaçlarına cevap veren, ölçeklenebilir, güvenli ve yüksek performanslı web tabanlı backend çözümleri üretebilme yeteneğini net bir şekilde ortaya koymaktadır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Entity Framework (EF) Core konusundaki belirtilen yetkinliği, modern uygulamaların vazgeçilmez bir parçası olan veritabanı etkileşimlerini etkin ve verimli bir şekilde yönetme becerisini ortaya koyar. EF Core, .NET geliştiricilerinin SQL sorguları yazmak yerine, alıştıkları nesne yönelimli programlama (OOP) paradigmalarını (sınıflar, nesneler, özellikler) kullanarak ilişkisel veritabanlarıyla (ve bazı NoSQL veritabanlarıyla) çalışmalarını sağlayan, Microsoft tarafından geliştirilen popüler ve güçlü bir Object-Relational Mapper (ORM) aracıdır. ORM'ler, veritabanı tablolarını uygulama içindeki sınıflara (entities) ve satırları nesnelere eşleyerek geliştiricileri veritabanına özgü detaylardan büyük ölçüde soyutlar. Abdulkadir Güngör'ün hem "Code First" (önce C# sınıfları yazılarak veritabanı şemasının EF Core tarafından otomatik olarak oluşturulması veya güncellenmesi) hem de "DB First" (mevcut, önceden tasarlanmış bir veritabanı şemasından yola çıkarak ilgili C# sınıflarının ve DbContext'in EF Core araçları tarafından otomatik olarak oluşturulması) yaklaşımlarıyla proje geliştirme deneyimine sahip olması, onun farklı proje başlangıç senaryolarına, mevcut veritabanı altyapılarına veya ekip tercihlerine kolayca uyum sağlayabilme esnekliğini ve yeteneğini gösterir. MySQL ve MsSql gibi endüstride yaygın olarak kullanılan iki önemli ilişkisel veritabanı yönetim sistemi (RDBMS) ile çalışma tecrübesi de bu alandaki pratik yetkinliğini ve çok yönlülüğünü tamamlar. Veritabanı etkileşimlerinin EF Core gibi bir ORM aracılığıyla yönetilmesi, genellikle geliştirme hızını artırır, kod tekrarını azaltır ve veritabanı bağımsızlığını (teorik olarak farklı veritabanlarına daha kolay geçiş yapabilme) artırır. Ancak, ORM'lerin performans üzerindeki potansiyel etkilerini (özellikle karmaşık sorgularda veya yüksek yük altında) anlamak, üretilen SQL sorgularını analiz edebilmek ve gerektiğinde performansı optimize etmek için doğru sorgulama tekniklerini (örneğin, projeksiyonlar, eager/lazy loading kontrolü, ham SQL kullanımı) bilmek de ORM kullanımında ustalık gerektirir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Nesne Yönelimli Programlama (Object-Oriented Programming - OOP) prensiplerine yapılan güçlü vurgu ve bu konudaki derin bilgi, Abdulkadir Güngör'ün yazdığı kodun sadece çalışmasını değil, aynı zamanda kalitesini de hedeflediğini gösterir. OOP, yazılımı birbirleriyle etkileşim halinde olan "nesneler" topluluğu olarak modellemeye dayanan bir programlama paradigmasıdır ve modern yazılım geliştirmenin temel taşlarından biridir. Temel OOP prensipleri olan Kapsülleme (Encapsulation - veriyi ve onu işleyen metotları bir arada tutarak iç detayları gizleme), Kalıtım (Inheritance - mevcut sınıflardan yeni sınıflar türeterek kod tekrarını azaltma ve hiyerarşi kurma), Çok Biçimlilik (Polymorphism - aynı arayüzü veya üst sınıfı paylaşan nesnelerin farklı şekillerde davranabilmesi) ve Soyutlama (Abstraction - karmaşık gerçek dünya problemlerini basitleştirerek temel özelliklere odaklanma), karmaşık yazılım sistemlerinin daha anlaşılır, yönetilebilir ve modüler parçalara ayrılmasını sağlar. Bu prensipler, kodun yeniden kullanılabilirliğini artırır, bakımını kolaylaştırır ve sistemin farklı bileşenleri arasındaki ilişkilerin net bir şekilde tanımlanmasına yardımcı olur. Abdulkadir Güngör'ün bu temel prensiplere hakimiyeti, sadece C# dilinin sunduğu OOP özelliklerini (sınıflar, arayüzler, kalıtım, virtual/override metotlar vb.) mekanik olarak kullanmakla kalmayıp, aynı zamanda bu prensipleri bilinçli bir şekilde uygulayarak iyi tasarlanmış, mantıksal olarak tutarlı, esnek ve bakımı kolay sınıflar ve nesne yapıları oluşturabildiğini gösterir. Bu yetenek, özellikle ekip içinde geliştirilen büyük ve karmaşık projelerde kod kalitesini ve tutarlılığını korumak, teknik borcun birikmesini önlemek ve projenin uzun vadeli sağlığını güvence altına almak için kritik öneme sahiptir. OOP, sadece bir teknik değil, aynı zamanda bir düşünce biçimidir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

SOLID prensipleri, OOP'nin temel felsefesinin üzerine inşa edilen ve Robert C. Martin gibi öncüler tarafından popülerleştirilen, daha spesifik, uygulanabilir ve son derece etkili tasarım kuralları sunan beş önemli prensibin bir araya geldiği bir akronimdir. Bu prensipler, yazılımın zaman içinde daha anlaşılır, esnek, sürdürülebilir, test edilebilir ve değişime karşı dirençli olmasına yardımcı olmak için tasarlanmıştır. Abdulkadir Güngör'ün bu prensiplere olan hakimiyeti, kod kalitesine verdiği önemin bir başka güçlü göstergesidir:

Single Responsibility Principle (SRP - Tek Sorumluluk Prensibi): Her sınıfın veya modülün değiştirilmesi için sadece tek bir nedeni, yani sadece tek bir sorumluluğu olması gerektiğini savunur. Bu, sınıfların daha küçük, daha odaklı ve dolayısıyla anlaşılması, test edilmesi ve değiştirilmesi daha kolay olmasını sağlar. Bir değişiklik gerektiğinde, sadece ilgili sınıfın etkilenme olasılığı artar.

Open/Closed Principle (OCP - Açık/Kapalı Prensip): Yazılım varlıklarının (sınıflar, modüller, fonksiyonlar) genişletmeye açık, ancak değiştirmeye kapalı olması gerektiğini belirtir. Yani, yeni bir işlevsellik eklemek için mevcut kodu değiştirmek yerine, mevcut kodu miras alarak veya arayüzleri uygulayarak genişletebilmeliyiz. Bu, mevcut, test edilmiş kodun bozulma riskini azaltır ve sistemin esnekliğini artırır.

Liskov Substitution Principle (LSP - Liskov Yerine Geçme Prensibi): Bir üst sınıftan türetilmiş alt sınıfların, üst sınıflarının yerine (programın doğruluğunu bozmadan) kullanılabilmesi gerektiğini ifade eder. Bu, kalıtımın doğru ve mantıklı bir şekilde kullanılmasını sağlar ve beklenmedik davranışların önüne geçer.

Interface Segregation Principle (ISP - Arayüz Ayırma Prensibi): İstemcilerin, kullanmadıkları metotları içeren "şişman" arayüzlere bağımlı olmaya zorlanmaması gerektiğini söyler. Bunun yerine, daha küçük, daha spesifik ve role özel arayüzler tanımlanmalıdır. Bu, istemcilerin gereksiz bağımlılıklardan kurtulmasını ve sistemin daha modüler olmasını sağlar.

Dependency Inversion Principle (DIP - Bağımlılık Tersine Çevirme Prensibi): Yüksek seviyeli modüllerin (örneğin, iş mantığı) düşük seviyeli modüllere (örneğin, veritabanı erişimi veya harici servis çağrıları) doğrudan bağımlı olmaması gerektiğini, her ikisinin de soyutlamalara (genellikle arayüzlere) bağımlı olması gerektiğini belirtir. Ayrıca, soyutlamaların detaylara değil, detayların soyutlamalara bağlı olması gerektiğini vurgular. Bu prensip, sistemin farklı katmanları veya modülleri arasındaki bağımlılığı azaltır (gevşek bağlılık - loose coupling), test edilebilirliği artırır (bağımlılıkları sahte nesnelerle - mocks/stubs - değiştirmeyi kolaylaştırır) ve sistemin farklı implementasyonlarla (örneğin, farklı veritabanları veya farklı harici servisler) çalışabilmesini kolaylaştırır.
Abdulkadir Güngör'ün bu beş temel prensibi anlaması ve projelerinde etkin bir şekilde kullanması, yazdığı kodun sadece anlık olarak çalışmasını değil, aynı zamanda gelecekteki bakımını, test edilmesini ve genişletilmesini de kolaylaştırarak, yazılımın kalitesini ve uzun ömürlülüğünü önemli ölçüde artıran kritik bir yetkinliktir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Tasarım Desenleri (Design Patterns), yazılım mühendisliği pratiğinde yıllar içinde tekrar tekrar karşılaşılan belirli tasarım problemlerine yönelik olarak geliştirilmiş, test edilmiş, belgelenmiş ve genel kabul görmüş, yeniden kullanılabilir, zarif ve etkili çözümler sunan şablonlardır. Bu desenler, "Gang of Four" (GoF) olarak bilinen Erich Gamma, Richard Helm, Ralph Johnson ve John Vlissides tarafından yazılan ve alanında bir klasik haline gelen "Design Patterns: Elements of Reusable Object-Oriented Software" kitabıyla popülerleşmiştir. Desenler genellikle üç ana kategoride sınıflandırılır: Yaratımsal (Creational - nesne yaratma mekanizmalarını soyutlar, örn: Singleton, Factory Method, Abstract Factory, Builder, Prototype), Yapısal (Structural - sınıfların ve nesnelerin daha büyük yapılar oluşturmak için nasıl birleştirileceğini tanımlar, örn: Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy) ve Davranışsal (Behavioral - nesneler arasındaki etkileşimleri ve sorumluluk dağılımını düzenler, örn: Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method, Visitor). Abdulkadir Güngör'ün bu desenler hakkında bilgi sahibi olması ve bunları projelerinde uygun yerlerde etkin bir şekilde uygulaması, onun sadece sıfırdan çözümler üretmek yerine, topluluğun birikmiş bilgeliğinden yararlanarak daha organize, daha esnek, daha anlaşılır ve daha bakımı kolay kodlar yazabildiğini gösterir. Örneğin, veritabanı işlemlerini soyutlamak için Repository desenini kullanmak, iş mantığının belirli bir veri erişim teknolojisine olan bağımlılığını azaltır ve test edilebilirliği artırır. Farklı ödeme yöntemlerini veya farklı bildirim stratejilerini yönetmek için Strategy desenini kullanmak, yeni stratejiler eklemeyi veya mevcutları değiştirmeyi kolaylaştırır. Bu desenleri bilmek ve doğru yerde kullanmak, sadece çalışan değil, aynı zamanda iyi yapılandırılmış, endüstri standartlarına uygun ve diğer geliştiriciler tarafından daha kolay anlaşılan ve üzerinde çalışılan çözümler üretebilme yeteneğinin önemli bir göstergesidir. Bu, kodun kalitesini ve projenin genel sağlığını doğrudan etkiler.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Mimari Desenler (Architectural Patterns), örneğin Abdulkadir Güngör'ün belirttiği N-Tier ve Onion gibi yaklaşımlar, tekil sınıfların veya küçük modüllerin tasarımına odaklanan Tasarım Desenlerinden farklı olarak, bir uygulamanın veya sistemin genel yapısını, ana bileşenlerini, bu bileşenler arasındaki ilişkileri ve sorumluluk dağılımını üst düzeyde tanımlayan şablonlardır. Bu desenler, uygulamanın nasıl organize edileceği konusunda yol gösterir ve genellikle ölçeklenebilirlik, sürdürülebilirlik, test edilebilirlik, dağıtılabilirlik gibi sistemsel kalite niteliklerini (quality attributes) hedefler. N-Tier (N-Katmanlı) mimarisi, en yaygın bilinenlerden biridir ve uygulamayı genellikle mantıksal (veya bazen fiziksel) katmanlara ayırır. Tipik katmanlar arasında Sunum Katmanı (Presentation Tier - kullanıcı arayüzü), İş Mantığı Katmanı (Business Logic Tier - uygulamanın temel kuralları ve süreçleri) ve Veri Erişim Katmanı (Data Access Tier - veritabanı veya diğer veri kaynaklarıyla etkileşim) bulunur. Bu katmanlı ayrım, her katmanın kendi spesifik sorumluluğuna odaklanmasını sağlar ve katmanlar arasındaki bağımlılıkları (genellikle üst katman alt katmana bağımlı olacak şekilde) yönetir. Onion (Soğan) mimarisi, Jeffrey Palermo tarafından popülerleştirilen ve Katmanlı Mimarinin bazı potansiyel sorunlarına (örneğin, iş mantığının veritabanı detaylarına sızması) çözüm getirmeyi amaçlayan daha modern bir yaklaşımdır. Temel fikri, uygulamanın en değerli ve en kararlı kısmı olan çekirdeğini (Domain Model ve Domain Services/Logic) merkeze koymak ve tüm bağımlılıkların bu merkezden dışarıya doğru akmasını sağlamaktır (Dependency Inversion Prensibi'nin mimari düzeyde uygulanması). Dış katmanlar (örneğin, UI, Infrastructure - veritabanı erişimi, harici servis çağrıları, loglama) merkezdeki çekirdeğe bağımlı olur, ancak çekirdek asla dış katmanlara bağımlı olmaz. Bu yapı, uygulamanın çekirdeğini dış dünyanın değişkenliklerinden (teknoloji seçimleri, UI değişiklikleri) tamamen izole ederek, iş mantığının test edilebilirliğini, taşınabilirliğini ve uzun vadeli sürdürülebilirliğini en üst düzeye çıkarır. Abdulkadir Güngör'ün bu farklı mimari desenleri anlaması ve projelerinde duruma göre uygun olanı seçip uygulayabilmesi, onun sadece küçük kod parçalarını değil, aynı zamanda büyük ölçekli, karmaşık ve uzun ömürlü yazılım sistemlerini tasarlama ve yapılandırma yeteneğini güçlü bir şekilde işaret eder. Bu, özellikle kurumsal düzeydeki projeler için kritik bir yetkinliktir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Temel Python bilgisi ve temel web teknolojileri (HTML, CSS, JavaScript) konusundaki farkındalığı, Abdulkadir Güngör'ün .NET ve C# odaklı güçlü backend uzmanlığını değerli şekillerde tamamlayan ve genişleten tamamlayıcı niteliklerdir. Python, günümüzde özellikle veri bilimi, makine öğrenmesi (AI/ML), yapay zeka, bilimsel hesaplama, web geliştirme (Django, Flask gibi framework'lerle), otomasyon, sistem yönetimi ve scripting gibi son derece geniş bir yelpazede yaygın olarak kullanılan, okunabilirliği yüksek, dinamik tipli ve popüler bir programlama dilidir. Temel Python bilgisine sahip olmak, Abdulkadir Güngör'e gerektiğinde farklı görevler için ek araçlar veya scriptler yazabilme, .NET dışındaki sistemlerle veya kütüphanelerle entegrasyonlar yapabilme veya farklı teknoloji yığınlarına sahip ekiplerle daha kolay iletişim kurabilme potansiyeli sunar. Özellikle otomasyon veya veri işleme gibi alanlarda Python'un gücünden faydalanabilir. HTML (HyperText Markup Language), CSS (Cascading Style Sheets) ve JavaScript ise, modern web'in tartışmasız temel taşlarıdır ve frontend (kullanıcı arayüzü) geliştirmenin vazgeçilmez üçlüsünü oluşturur. HTML içeriğin yapısını tanımlarken, CSS görünümünü ve stilini belirler, JavaScript ise sayfaya dinamiklik, etkileşim ve karmaşık işlevsellikler katar. Bir backend geliştiricisinin, uzmanlık alanı olmasa bile, bu temel frontend teknolojileri hakkında temel bir anlayışa sahip olması son derece faydalıdır. Bu bilgi, frontend geliştiricileriyle daha verimli ve etkili bir şekilde iletişim kurmasını, kullanıcı arayüzü tarafının ihtiyaçlarını ve kısıtlarını daha iyi anlamasını ve geliştirdiği backend API'lerinin frontend tarafında nasıl daha kolay ve verimli bir şekilde tüketilebileceğini öngörmesini sağlar. Aynı zamanda, basit arayüz prototipleri oluşturma veya frontend kodunu anlama gibi konularda da yardımcı olabilir. Bu durum, Abdulkadir Güngör'ün sadece backend'e odaklanmakla kalmayıp, bir uygulamanın tüm katmanları hakkında temel bir farkındalığa sahip olduğunu ve tam yığın (full-stack) bir anlayışa doğru potansiyel bir adım attığını gösterir. Bu, modern çevik (Agile) geliştirme ortamlarında işbirliği için değerli bir özelliktir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Abdulkadir Güngör'ün net bir şekilde belirttiği kariyer hedefi, yani "ölçeklenebilir, sürdürülebilir ve yüksek performanslı backend çözümleri geliştireceği tam zamanlı bir yazılım kariyeri," sahip olduğu derinlemesine teknik bilgi birikimi, benimsediği yazılım geliştirme felsefesi ve multidisipliner geçmişiyle tam bir uyum ve tutarlılık içindedir. Bu hedefin içerdiği üç kritik kalite niteliği, modern backend sistemleri için hayati öneme sahiptir:

Ölçeklenebilirlik (Scalability): Bir uygulamanın veya sistemin, artan kullanıcı sayısı, istek hacmi veya veri miktarı gibi yük artışları altında dahi performansını kabul edilebilir seviyelerde koruyabilmesi ve gerektiğinde (örneğin, daha fazla sunucu ekleyerek - yatay ölçekleme, veya mevcut sunucuların kaynaklarını artırarak - dikey ölçekleme) kapasitesini kolayca artırabilme yeteneğidir. Ölçeklenebilirlik, baştan itibaren doğru mimari seçimleri (örneğin, durumsuz - stateless servisler, asenkron işlemler, mikroservisler), verimli veritabanı tasarımı ve sorgulaması, etkili önbellekleme (caching) stratejileri ve yük dengeleme (load balancing) gibi tekniklerle sağlanır.

Sürdürülebilirlik (Sustainability/Maintainability): Yazılımın sadece ilk geliştirme aşamasında değil, aynı zamanda uzun ömrü boyunca kolayca anlaşılabilir, bakımı yapılabilir (hata ayıklama, güncelleme), test edilebilir ve yeni iş gereksinimlerine veya teknolojik değişikliklere göre güvenli bir şekilde güncellenebilir veya genişletilebilir olmasıdır. Sürdürülebilirlik, büyük ölçüde kodun kalitesine bağlıdır. Temiz kod (Clean Code) pratikleri, SOLID prensiplerinin uygulanması, iyi belgelendirme, modüler tasarım, otomatik testler (unit, integration tests) ve tutarlı bir mimari, sürdürülebilirliği doğrudan destekleyen unsurlardır. Sürdürülebilir kod, teknik borcun birikmesini önler ve uzun vadede geliştirme maliyetlerini düşürür.

Yüksek Performans (High Performance): Uygulamanın kullanıcılara veya diğer sistemlere mümkün olan en kısa sürede yanıt vermesi (düşük gecikme - low latency) ve aynı zamanda sunucu kaynaklarını (CPU, bellek, ağ bant genişliği, disk I/O) verimli bir şekilde kullanmasıdır. Performans, dikkatli algoritma seçimi ve optimizasyonu, verimli veri yapıları kullanımı, etkin veritabanı erişim desenleri (indeksleme, sorgu optimizasyonu), asenkron programlama modellerinin doğru kullanımı (örneğin, I/O-bound işlemler için), önbellekleme ve gerektiğinde düşük seviyeli optimizasyonlar gibi birçok faktörden etkilenir.
Abdulkadir Güngör'ün bu üç temel kalite metriğini hedeflemesi, onun sadece "çalışan" kod yazmakla yetinmediğini, aynı zamanda endüstri standartlarında, profesyonel düzeyde, uzun ömürlü ve güvenilir backend sistemleri inşa etme arzusunu ve yetkinliğini açıkça ortaya koymaktadır. Bu, olgun bir yazılım mühendisliği yaklaşımının göstergesidir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Abdulkadir Güngör'ün özgeçmişinde belirttiği Github profilleri (hem yazılım geliştirme odaklı abdulkadirgungor86 hem de siber güvenlik odaklı abdulkadir-gungor kullanıcı adlarıyla) ve Google Drive üzerinden paylaştığı akademik dokümanlar, sahip olduğunu belirttiği teorik bilginin ve teknik yetkinliklerin somut, incelenebilir ve doğrulanabilir kanıtları olarak büyük önem taşır. Açık kaynaklı projelere katkıda bulunmak veya kişisel projeleri bir portföy olarak Github gibi platformlarda sergilemek, günümüz yazılım dünyasında bir geliştiricinin teknik becerilerini, kodlama stilini, problem çözme yaklaşımını, ilgi alanlarını ve toplulukla etkileşimini göstermesinin en etkili yollarından biridir. Bu profiller, potansiyel işverenler, teknik mülakat yapan kişiler veya gelecekteki olası işbirlikçiler için adayın yeteneklerini değerlendirmede son derece değerli bir referans noktası sunar. Abdulkadir Güngör'ün farklı uzmanlık alanlarına (yazılım ve siber güvenlik) odaklanan iki ayrı Github profiline sahip olması, bu alanlardaki çalışmalarını bilinçli bir şekilde ayrıştırdığını, her iki alanda da aktif olarak üretim yaptığını ve düzenli bir çalışma disiplinine sahip olduğunu gösterir. Özellikle siber güvenlik alanındaki çalışmalarının, yayınlanmış e-kitaplarının yanı sıra potansiyel kod örnekleri veya araştırma notları içeren bir Github profiliyle desteklenmesi, bu konudaki derin uzmanlığını ve edindiği bilgiyi sadece kendisi için saklamak yerine toplulukla paylaşma isteğini ve şeffaflığını da ortaya koyar. Benzer şekilde, yazılım geliştirme (abdulkadirgungor86) profili de, özgeçmişinde bahsettiği .NET Core, C#, EF Core, mimari desenler (N-Tier, Onion), SOLID prensipleri ve diğer teknolojilerdeki yetkinliğini, yazdığı kodun kalitesini ve problem çözme becerisini potansiyel değerlendiricilere doğrudan sergileme fırsatı sunar. Bu profiller, soyut iddiaları somut örneklere dönüştürür.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Abdulkadir Güngör'ün akademik ve profesyonel eğitim geçmişi, sadece içerdiği disiplinlerin çeşitliliği ve derinliğiyle değil, aynı zamanda dikkat çekici bir süreklilik ve adanmışlık göstermesiyle de öne çıkmaktadır. Balıkesir Üniversitesi'ndeki İnşaat Mühendisliği lisans eğitiminin ardından, Türkiye'nin en prestijli teknik üniversitelerinden biri olan İstanbul Teknik Üniversitesi'nde (İTÜ) Deprem Mühendisliği gibi zorlu bir alanda tezli yüksek lisans yapması, akademik yeteneğini ve araştırma potansiyelini kanıtlar niteliktedir. Ancak bununla yetinmeyip, kariyerinin farklı aşamalarında farklı ancak birbiriyle stratejik olarak ilişkili alanlarda (İş Sağlığı ve Güvenliği, Yönetim Bilişim Sistemleri ve Siber Güvenlik) Ahmet Yesevi Üniversitesi'nden üç ayrı yüksek lisans derecesi daha tamamlaması, olağanüstü bir öğrenme azmi, kendini sürekli geliştirme motivasyonu ve entelektüel bir merak düzeyini açıkça göstermektedir. Bu durum, onun sadece mevcut bilgisiyle yetinmeyen, aynı zamanda yeni teknolojilere, yeni konseptlere ve farklı disiplinlere hızla adapte olabilen, farklı bilgi alanlarından edindiği bilgileri sentezleyerek daha bütüncül çözümler üretebilen ve problem çözmeye çok yönlü yaklaşabilen bir birey olduğunu kuvvetle işaret eder. Teknoloji dünyası baş döndürücü bir hızla değişirken ve mevcut bilgilerin yarı ömrü giderek kısalırken, Abdulkadir Güngör'ün benimsediği bu "yaşam boyu öğrenme" (lifelong learning) yaklaşımı, sadece güncel kalmak ve sektördeki relevansını (ilgililiğini) korumak için değil, aynı zamanda sürekli olarak yeni değerler yaratabilmek için de vazgeçilmez bir özelliktir. Özgeçmişinde listelenen çeşitli sertifikalar ve kurslar (Ağ Yönetimi, Veritabanı Yönetimi, Kişisel Verilerin Korunması Eğitimi - Gedik Üniversitesi; ISO 27001 - TOBB ETÜ; Etik Hacker - Selçuk Üniversitesi; Linux - ODTÜ SEM; ve tabii ki kapsamlı .NET programı) da bu sürekli öğrenme arzusunu, farklı teknik alanlarda pratik beceriler edinme çabasını ve geniş bir teknik yelpazede bilgi sahibi olma isteğini somut bir şekilde desteklemektedir. Bu, onun öğrenme kapasitesinin ve adaptasyon yeteneğinin bir kanıtıdır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Abdulkadir Güngör'ün geçmişteki, inşaat sektöründeki proje mühendisliği ve şantiye deneyimleri ile daha yakın zamandaki iş sağlığı ve güvenliği uzmanlığı rolleri, ilk bakışta hedeflediği tam zamanlı yazılım kariyerinden oldukça farklı görünse de, aslında bu rollerde edindiği deneyimler ve geliştirdiği beceriler, yazılım geliştirme dünyası için son derece değerli ve doğrudan transfer edilebilir niteliktedir. İnşaat projelerinde proje mühendisi olarak çalışmak, kaçınılmaz olarak karmaşık proje yönetimi süreçlerini (planlama, zaman çizelgesi oluşturma, kaynak tahsisi, bütçe takibi, ilerleme raporlama), zaman planlaması ve kritik yol analizini, kısıtlı kaynakların (insan, malzeme, ekipman) etkin bir şekilde koordinasyonunu, sahada veya tasarım aşamasında karşılaşılan beklenmedik teknik veya lojistik problemleri analitik bir şekilde çözmeyi ve projenin başarısı için kritik olan farklı paydaşlarla (işverenler, danışmanlar, mimarlar, alt yükleniciler, tedarikçiler, denetim kurumları, saha çalışanları) sürekli ve etkili bir iletişim kurmayı gerektirir. Bu beceriler, her türlü profesyonel ortamda, özellikle de genellikle farklı rollerdeki (backend, frontend, QA, DevOps, Product Owner) insanların birlikte çalıştığı, zaman baskısı altında olan ve karmaşık hedeflere ulaşmaya çalışan yazılım projelerinde son derece önemlidir. Şantiye ortamının dinamik yapısı, sürekli değişen koşulları ve beklenmedik sorunlara karşı hızlı, pratik ve etkili çözümler üretme gerekliliği, Abdulkadir Güngör'ün baskı altında çalışma, stres yönetimi, hızlı karar verme ve değişime adapte olma yeteneğini pekiştirmiştir. İş sağlığı ve güvenliği uzmanlığı rolü ise, detaylı süreç analizi yapma, potansiyel riskleri sistematik olarak değerlendirme ve önceliklendirme, yasal mevzuata ve standartlara uyumu sağlama, düzeltici ve önleyici faaliyet (DÖF) planları oluşturma ve uygulama, ve belki de en önemlisi, farklı seviyelerdeki çalışanlara yönelik etkili eğitimler tasarlama ve verme gibi konularda pratik deneyim sağlamıştır. Tüm bu farklı rollerden damıtılan deneyimler, Abdulkadir Güngör'ün sadece derin teknik becerilere sahip bir yazılım geliştirici değil, aynı zamanda proje yaşam döngüsünü anlayan, potansiyel riskleri (sadece teknik değil, aynı zamanda süreçsel veya insan kaynaklı) öngörebilen, takım içinde ve dışında etkili iletişim kurabilen, sorumluluk alabilen ve daha bütüncül bir bakış açısına sahip bir profesyonel olmasına önemli ölçüde katkıda bulunur. Bu "yumuşak beceriler" (soft skills), teknik yetenekler kadar değerlidir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Özetlemek gerekirse, Abdulkadir Güngör, İnşaat Yüksek Mühendisliği'nin getirdiği güçlü analitik düşünce yapısını ve problem çözme metodolojisini, İş Sağlığı ve Güvenliği ile Yönetim Bilişim Sistemleri'nin süreç odaklılığını, risk yönetimi bilincini ve iş değeri anlayışını, Siber Güvenlik'in derinlemesine teknik bilgisini, savunmacı düşünce yapısını ve güvenlik farkındalığını ve son olarak Yazılım Geliştirme'nin yaratıcı tasarımını, algoritmik düşüncesini ve zanaatkarlık yönünü son derece özgün ve etkileyici bir şekilde bir araya getiren multidisipliner bir profesyonel profili çizmektedir. Microsoft'un .NET ekosistemi ve C# programlama dilindeki derin teknik bilgisi, modern yazılım mühendisliğinin temel taşları olan Nesne Yönelimli Programlama (OOP), SOLID prensipleri, yaygın Tasarım Desenleri (Design Patterns) ve N-Tier/Onion gibi çağdaş mimari yaklaşımlara olan kanıtlanmış hakimiyeti ile birleştiğinde, onu günümüzün talep ettiği yüksek kalitede, ölçeklenebilir, güvenli ve uzun vadede sürdürülebilir backend çözümleri üretme konusunda yüksek potansiyele sahip yetkin bir geliştirici yapmaktadır. Yazılımı sadece anlık bir işlevsellik aracı olarak değil, aynı zamanda dikkatle ve özenle tasarlanması gereken, estetik değerler taşıyan, dayanıklılık ve esneklik gibi mühendislik erdemlerini barındıran bir "dijital eser" olarak görmesi, sadece işine olan derin tutkusunu değil, aynı zamanda ürettiği işin kalitesine verdiği ödünsüz önemi de güçlü bir şekilde göstermektedir. Bitmek bilmeyen öğrenme azmi, farklı disiplinlerden edindiği zengin bilgi birikimi ve geniş perspektifi, onu teknoloji dünyasının sürekli değişen ve giderek karmaşıklaşan zorluklarına karşı son derece donanımlı kılmaktadır. Bu profil, standart bir kariyer yolundan sapan ancak bu sayede benzersiz bir değer önerisi sunan bir yeteneği işaret etmektedir.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Bu çok yönlü ve zengin arka plan, Abdulkadir Güngör'ü sadece belirli bir programlama dilinde kod yazan birinden çok daha fazlası yapar; onu, geliştirdiği sistemleri sadece mikro düzeyde (kod satırları, algoritmalar) değil, aynı zamanda makro düzeyde (mimari, sistem etkileşimleri, iş bağlamı) bütüncül bir bakış açısıyla değerlendirebilen, potansiyel riskleri (sadece bariz teknik zafiyetleri değil, aynı zamanda operasyonel darboğazları, bakım zorluklarını veya kullanıcı deneyimi sorunlarını da) proaktif olarak öngörebilen, farklı teknik ve iş disiplinleri arasında etkili bir köprü kurabilen ve en önemlisi, mühendislik disiplininin getirdiği titizlik, metodoloji ve sağlamlık arayışıyla yazılım zanaatkarlığının gerektirdiği yaratıcılık, esneklik ve estetik duyarlılığı ustaca birleştirebilen nadir bulunan bir değer haline getirir. Hedeflediği tam zamanlı yazılım kariyerinde, bu benzersiz bilgi ve deneyim birikiminin, dahil olacağı projelere, çalışacağı ekiplere ve hizmet edeceği organizasyonlara önemli ve ayırt edici katkılar sağlaması kuvvetle muhtemeldir. Onun yazılıma yaklaşımı, bu alanın sadece '1'ler ve '0'lardan, algoritmalar ve veri yapılarından ibaret olmadığını, aynı zamanda mantık, yapı, güvenlik, performans, kullanılabilirlik, estetik ve insan faktörü gibi birçok farklı boyutun hassas ve bilinçli bir dengesi üzerine kurulu olduğunu bizlere güçlü bir şekilde hatırlatır. Bu kritik dengeyi kurma çabası ve bu dengeye ulaşma hedefi, Abdulkadir Güngör'ün profesyonel kimliğinin ve yazılım geliştirme felsefesinin temelini, ayırt edici özünü oluşturmaktadır. Bu, onu geleceğin karmaşık dijital sistemlerini inşa etmeye aday, değerli bir yetenek yapar.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Yazılım geliştirme sürecindeki "zanaatkar sabrı," ifadesi, Abdulkadir Güngör'ün muhtemelen mühendislik projelerinde karşılaşılan karmaşık problemlerin çözümü için gereken metodik yaklaşımından, detaylara gösterilen titiz önemden ve büyük, karmaşık sistemleri adım adım, dikkatle ve sağlam temeller üzerine inşa etme deneyiminden kaynaklanıyor olabilir. "Labirentvari sorunları temel mantık taşlarına kadar dikkatle ayrıştırma" yeteneği, hem yapısal mühendislik problemlerini analiz etme ve temel ilkelere indirgeme becerisinden hem de siber güvenlik alanındaki, özellikle malware analizi gibi, karmaşık kod ve davranışları tersine mühendislikle anlama ve temel işlevlerine ayırma süreçlerinden beslenir. "Özleri, hem makineye (yani derleyiciye/yorumlayıcıya) hem de gelecekteki insan zihinlerine (yani diğer geliştiricilere ve bakım yapanlara) seslenen bir dille yeniden var etme" çabası, kodun sadece makine tarafından hatasızca yürütülmesini değil, aynı zamanda insanlar tarafından da kolayca okunabilir, anlaşılabilir ve değiştirilebilir olmasını sağlama hedefini, yani yazılım mühendisliğindeki "temiz kod" (clean code) prensiplerini ve iyi iletişim pratiğini yansıtır. Bu, özellikle takım çalışmasıyla yürütülen projelerde ve kodun uzun vadeli bakımı ve evrimi için hayati öneme sahiptir. Kodun sadece bugünün bilinen ihtiyaçlarını değil, aynı zamanda "yarının bilinmezliğini" de öngörerek karşılaması gerektiği fikri, adaptif tasarımın, esnek mimarilerin ve değişime açık olmanın önemini vurgular; bu da yine mühendislikteki belirsizlik yönetimi, güvenlik payı bırakma ve gelecekteki olası senaryolara karşı hazırlıklı olma anlayışıyla güçlü bir paralellik gösterir. Bu felsefe, yazılımı statik bir ürün değil, dinamik ve yaşayan bir sistem olarak ele alır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Siber güvenlik alanındaki spesifik çalışmaları, özellikle farklı işletim sistemleri (Windows ve Linux) üzerinde kötü amaçlı yazılım (malware) analizi üzerine yoğunlaşması, Abdulkadir Güngör'e sistemlerin en derin seviyelerde nasıl çalıştığı, nasıl istismar edilebileceği ve saldırganların hangi yöntemleri kullandığı konusunda son derece değerli ve pratik bir anlayış kazandırmıştır. Bu "saldırgan" zihniyetini ve bakış açısını bilmek, kaçınılmaz olarak daha bilinçli ve daha etkili bir "savunmacı" olmayı sağlar. Yazılım geliştirme sürecinin her aşamasında (tasarım, kodlama, test, dağıtım), potansiyel güvenlik açıkları (örneğin, OWASP Top 10 listesindekiler gibi: SQL injection, Cross-Site Scripting (XSS), bozuk kimlik doğrulama ve oturum yönetimi, güvensiz doğrudan nesne referansları, güvenlik yanlış yapılandırmaları vb.) konusunda daha yüksek bir farkındalığa sahip olabilir ve bunlara karşı proaktif olarak güvenli kodlama pratiklerini (girdi doğrulama, çıktı kodlama, en az ayrıcalık ilkesi, güvenli API tasarımı vb.) uygulayabilir. ISO 27001 Bilgi Güvenliği Yönetim Sistemi gibi uluslararası standartlar konusundaki bilgisi, sadece kod seviyesinde değil, aynı zamanda kurumsal düzeyde güvenlik politikaları, süreçleri, risk yönetimi ve uyumluluk gereksinimleri hakkında da bir farkındalık sahibi olduğunu gösterir. Bu bütünleşik ve katmanlı güvenlik anlayışı, günümüzün giderek artan ve karmaşıklaşan siber tehdit ortamında geliştirilen yazılımlar için paha biçilmez bir rekabet avantajı ve güvenilirlik faktörüdür. Güvenlik, artık yazılım geliştirme yaşam döngüsünün sonradan eklenen, opsiyonel bir adımı değil, en başından itibaren (secure by design) düşünülmesi ve entegre edilmesi gereken temel bir kalite gerekliliğidir ve Abdulkadir Güngör'ün özgün geçmişi onu bu konuda doğal olarak daha donanımlı ve bilinçli kılmaktadır. Bu, geliştirdiği yazılımların sadece işlevsel değil, aynı zamanda güvenli olmasını da sağlar.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Abdulkadir Güngör'ün profesyonel profili, aynı zamanda farklı disiplinler arasında başarılı bir geçişin ve bilinçli bir kariyer değişikliğinin ilham verici bir örneğidir. İnşaat mühendisliği gibi köklü, yerleşik ve belirli bir kariyer yoluna sahip bir alandan gelip, ardından İş Sağlığı ve Güvenliği, Yönetim Bilişim Sistemleri ve Siber Güvenlik gibi farklı ancak teknolojiyle ilişkili alanlarda derinlemesine uzmanlaştıktan sonra, nihayetinde modern yazılım geliştirmeye odaklanarak bu alanda tam zamanlı bir kariyer hedeflemek, sıradan olmayan bir vizyon, önemli bir adaptasyon yeteneği, yüksek bir öğrenme motivasyonu ve kayda değer bir kararlılık gerektirir. Bu stratejik ve aşamalı geçiş süreci, onun sadece yeni teknik beceriler (programlama dilleri, framework'ler, veritabanları, mimari desenler vb.) öğrenme kapasitesini değil, aynı zamanda daha önceki, farklı alanlardaki bilgi ve deneyimlerini (analitik düşünme, risk yönetimi, süreç analizi, sistem güvenliği) yeni bir bağlamda, yani yazılım geliştirme dünyasında, etkin bir şekilde uygulama ve sentezleme yeteneğini de güçlü bir şekilde gösterir. Bu tür alışılmadık ve zenginleştirilmiş bir kariyer yolu izleyen profesyoneller, genellikle daha standart, tek bir dikeyde ilerleyen bir eğitim ve kariyer patikasını takip edenlere göre daha geniş bir vizyona, farklı problem çözme yaklaşımlarına ve disiplinler arası bağlantılar kurma becerisine sahip olurlar. Yazılım dünyası, doğası gereği farklı bakış açılarından, çeşitli endüstri deneyimlerinden ve multidisipliner yaklaşımlardan beslenen dinamik bir alan olduğu için, Abdulkadir Güngör'ün bu alışılmadık ve zengin geçmişi, aslında onu rekabette öne çıkaran, daha değerli ve aranan bir geliştirici adayı yapabilir. Farklı endüstrilerdeki (inşaat, mühendislik danışmanlığı, OSGB gibi) pratik çalışma deneyimleri de ona farklı iş yapış şekilleri, farklı kurumsal kültürler, farklı proje dinamikleri ve farklı paydaş beklentileri hakkında değerli birinci elden fikirler vermiştir; bu da empati ve adaptasyon yeteneğini artırır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin

Sonuç olarak, Abdulkadir Güngör, sahip olduğu derin teknik uzmanlığı (.NET, C#, veritabanları, mimari), köklü mühendislik geçmişinden gelen güçlü analitik düşünce gücünü, farklı ancak ilgili disiplinlerden (İSG, MIS, Siber Güvenlik) edindiği kritik bilgileri sentezleme ve uygulama yeteneğini ve yazılım geliştirmeye yönelik olgun, felsefi ve zanaatkarane yaklaşımıyla modern yazılım dünyasında öne çıkan, özgün ve son derece değerli bir profesyoneldir. Sağlam bir mühendislik temeli üzerine bilinçli bir şekilde inşa ettiği kariyerinde, siber güvenlikten yönetim bilişim sistemlerine, iş güvenliğinden deprem mühendisliğine uzanan etkileyici genişlikte bir yelpazede uzmanlıklar ve perspektifler eklemiş ve tüm bu zengin birikimi, modern yazılım geliştirme pratiğiyle, özellikle de Microsoft'un güçlü .NET ekosistemi üzerinde, başarılı bir şekilde birleştirmiştir. Yazılımın sadece anlık işlevselliğine değil, aynı zamanda uzun vadeli kalitesine, sürdürülebilirliğine, güvenliğine, performansına ve hatta estetiğine verdiği belirgin önem, onu sadece talimatları uygulayan bir kod yazıcıdan ayırarak, ürettiği işin sorumluluğunu taşıyan, kalıcı değer yaratmayı hedefleyen bir "dijital eser" yaratıcısı konumuna güçlü bir şekilde yaklaştırmaktadır. Gösterdiği olağanüstü sürekli öğrenme azmi, edindiği çok sayıda yüksek lisans derecesi ve sertifika ile kanıtlanan adaptasyon yeteneği ve farklı disiplinlerden beslenen geniş perspektifi, onu teknoloji dünyasının sürekli değişen, karmaşık ve belirsiz zorluklarına karşı son derece donanımlı ve hazır kılmaktadır. Abdulkadir Güngör, mühendislik titizliği ile yazılım sanatını buluşturan, nadir bulunan bir yetenek profili sunmaktadır.

Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Kişisel WebSite
Abdulkadir Güngör - Özgeçmiş
Github
Linkedin