Neden herkes programcı değil?

Recep Baltaş

Technopat
Yönetici
Katılım
14 Ağustos 2010
Mesajlar
67.592
Makaleler
76
Çözümler
1.016
Yer
İstanbul
Hemen hemen herkes, hemen hemen her yaşta veya IQ düzeyinde, kod yazma kavramlarını öğrenebilirken, herhangi bir uzun vadeli başarı umuduyla istihdam edilebilir, profesyonel bir yazılım geliştiricisi olmak için, bir kişinin aşağıdakilere ihtiyacı vardır:
  • Mantıksal düşünme becerileri.
  • Mükemmel problem çözme becerileri.
  • Sorunları çözmek için metodik bir yaklaşım.
  • Yazılım geliştirme tutkusu.
  • Tüm kariyerleri boyunca yeni şeyler (örneğin, diller, paradigmalar, tasarım kalıpları, kütüphaneler, çerçeveler, veri yapıları, algoritmalar vb.) öğrenmeye devam etme istekliliği ve yeteneği. Bu işte öğrenme asla durmaz. Öğrenmeyi bırakırsanız, geride kalırsınız ve fırsatlarınızı sınırlarsınız.
  • Mükemmel yazım ve sözlü iletişim yetenekleri. Dokümantasyon veya kod yorumları yazmaktan kod incelemelerinde geri bildirim sağlamaya, sunum yapmaya ve tasarım kararlarınızı savunmaya kadar, iletişim bu işin anahtarıdır.
  • Sabır. Buna çok ihtiyacınız var. Sabrınızı deneyecek kişilerin ve durumların listesi burada listelemeye bile başlamak için çok uzun.
  • Sebat. Özellikle saatlerce veya günlerce zor bir hatayı kovaladıktan sonra buna çok ihtiyacınız var.
  • En küçük ayrıntıya bile dikkat edin. Bir ikili rakam (bit), bir şeyin nasıl çalıştığı veya çalışmadığı üzerinde büyük bir etkiye sahip olabilir.
  • Kaliteye dikkat etme.
  • Müşteri/kullanıcı ihtiyaçlarını, terminolojiyi, kavramları vb. daha iyi anlamak için, kod yazdığınız alana dalma ve hakkında bilgi edinme istekliliği ve becerisi. Örneğin, finansal sistemleri programlıyorsanız, finansal kavramlar hakkında bilgi edinin. İstatistiksel yazılım geliştiriyorsanız, ayrıntılı bilgi edinmeniz ve istatistikler hakkında bilgi edinmeniz gerekir. Simülasyon geliştiriyorsanız, kolları sıvamanız ve astrofizik, sicim teorisi, ekolojik sistemler vb. hakkında bilgi edinmeniz gerekebilir. Ağ yazılımı yazıyorsanız, ağ oluşturma hakkında bilgi edinmeniz gerekir. Endüstriyel kimyasal süreçleri yürütmek için yazılım yazıyorsanız, üzerinde çalıştığınız kimyasallar ve süreçler hakkında bilgi edinmeniz gerekir. Aygıt sürücüleri, donanım aygıtları hakkında bilgi sahibi olmayı gerektirir. İşlem kontrol yazılımı, kimyasal reaksiyonların öğrenilmesini gerektirebilir. Liste uzayıp gider.

    (Yazılım geliştirmeyle ilgili sevdiğim pek çok şeyden biri, tipik bilgisayar bilimi ve yazılım mühendisliği alanlarına ek olarak, on yıllar boyunca öğrenme şansı bulduğum diğer tüm alanlar.)
  • Kodunuzu okuması/sürdürmesi gereken bir sonraki geliştiriciye şefkat ve empati.
  • Geliştirmekte olduğunuz yazılımın kullanıcıları için şefkat ve empati.
  • Teknik bilgileri hızlı bir şekilde okuma ve yorumlama ve bunları eldeki göreve uygulama becerisi (Örneğin: Donanım veri sayfaları, algoritma açıklamaları, en iyi uygulamalar, vb.).
Bu, kapsamlı bir liste değildir, ancak size yazılım geliştirmede uzun vadeli başarı için ihtiyacınız olan nitelikler hakkında genel bir fikir verir.

Açıkçası, herkes bu özelliklerin tümüne sahip değildir. Bazıları öğrenilebilir/edinilebilir olsa da, bazıları bireyin kişiliği ve yaşam deneyimi için daha temeldir.

Tıpkı herkesin profesyonel bir beyin cerrahı, astronot, asker, havacılık mühendisi, hemşire, öğretmen, itfaiyeci, avukat, konser piyanisti, rock yıldızı, oyuncu, görüntü yönetmeni, marangoz, tesisatçı, mimar, heykeltıraş, roket bilimcisi, pilot vb. olamayacağı gibi herkes profesyonel bir yazılım geliştiricisi olamaz.

Bununla birlikte, hayatın her kesiminden insanlara yeni beceriler öğrenme, kendilerini geliştirme, kariyer değiştirme, kendilerini daha istihdam edilebilir hale getirme ve hayallerinin peşinden gitme fırsatına sahip olduklarına şiddetle inanıyorum. Bir yazılım geliştiricisi olmanın yanı sıra, pek çok hevesli yazılım geliştiricisine, pek çok çağ, ırk, ekonomik geçmiş, din, önceki kariyer vb. alanlarda yazılım mühendisliği ve bilgisayar bilimi dersleri verdim. Bazıları bu alanda başarılı oldu. Diğerleri, yazılım geliştirmenin kendileri için olmadığını keşfetme fırsatını kullandı. Yine de herkesin öğrenme fırsatı olması gerekir. ~Ken Gregg, 1977'den beri yazılım geliştirici.
 

EKAloji

Decipat
Katılım
25 Mayıs 2019
Mesajlar
1.823
Makaleler
4
Çözümler
3
Yer
Türkiye Cumhuriyeti
Gayet açıklayıcı olmuş.

  • "Api oyun yaparız yağ" kafasında olanlar.
  • "Deli para var api yağ" kafasında olanlar.
  • "Yattıkları yerden kazanıyorlar api yağ" kafasında olanlar.
  • "Kolay iş api yağ tak tak tak -klavyeye vurdu- işte yağ" kafasında olanlar.
 

The Executioner

Hectopat
Katılım
19 Ekim 2018
Mesajlar
7.405
Makaleler
6
Çözümler
36
Bence ülkemizde yeterli teşvik verilmiyor bunun için, yoksa bir çok yazılım şirketi kurulabilir gelecekte. Bu da ekonomimiz için iyi bir şey.
 
Katılım
4 Mart 2019
Mesajlar
3.508
Makaleler
11
Yer
Bahçelievler
Çok teşekkürler elinize sağlık.
 
Yukarı