İyi bir yazılımcı olmak için 11 altın kural
İyi bir mobil uygulama yazılımcısı , web yazılımcısı yada backend yazılımcısı olmak bazı ortak temel özellikleri barındırıyor.
Bu ortak özellikler şu şekilde sıralanabilir. Elbette daha vardır ama bunlar ilk etapta aklıma gelenler ve önemli olanlar. Bunları hem yazılımcıların hem müşterilerin düşünmesi için yazıyorum. Umarım herkese faydalı olur.
- Her alanda çalışabilmeli (Mobil uygulama, web uygulaması, backend). Sadece hangisine yoğunlaşır ise onda daha hızlı sonuç elde eder.
- Konsantrasyonu iyi olmalı. Odaklandığı zaman işi (yada hedeflediği kısmı) bitirebilmeli.
- Pes etmemeli. Bazen geceler boyu sabahlamak gereksede pes etmeden devam etmeli.
- Çok iyi araştırmalı. Çözemediği konuları yada daha iyi ne yapabilirim gibi düşünerek araştırma yapmalı. Kendi kendine araştıran ve çözüm üretebilen biri olması çok önemli çünkü her zaman size yardımcı olacak birini bulamazsınız.
- Temel algoritmaları bilmeli. Günümüzde yazılıma yeni başlayan çoğu kişi algoritma çalışmadan yazılım öğrenmeye kalkıyor. Yazılım dilini öğrensede, zor problemeri algoritmalar kurarak çözemiyor. Önce bir programlama dili seçip (javascript, dart, php, c# gibi) burada algoritma çalışmak çok önemli.
- Dokümantasyon yapmalı. Hem kendi için hem kendisinden sonra kodlara girecek kişi için bunu yapmalı. Kodun için gelişigüzel yorumlar yazmak yerine düzgün yorumlar yazıp, bir readme dosyası hazırlayarak içine önemli konuları not etmeli (ör: nasıl build alınır , dev ve prod ortamına nasıl deploy edilir vs…)
- Versiyon kontrolü kullanmalı. Ekip halinde çalışmıyor bile olsa, yedek almak, ileride ben ne yapmıştım diye bakmak ve kodu düzgün teslim etmek için git sistemini biliyor olmalı.
- Etik olmalı. İşi eksiksiz ve gereken kişiye anlatarak ve dokümantasyonlar ile teslim etmeye özen göstermeli. Açılan bazı hesapları müşteri adına açmalı ve bunlara ait dokümantasyonları işe başlarken tutmaya başlayıp anında müşterisi ile veya işi yaptığı kişi ile paylaşmalı. Kendisine birşey olsa işe ne olacak düşünmeli. Para kazandığı yere ihanet etmemeli, dürüst ve ahlaklı olmalı.
- Devir alabilmeli. Başkasının yazdığı kodu incelemeyi çoğu yazılımcı sevmez. Kodu inceleyip sonra sorumluluğu üstlenerek yazan kişiden devir alabilmeli. Çoğu kişi maalesef anlamaya çalışmak yerine bu olmamış ben bunu baştan yazayım diyerek hem daha çok kendine iş çıkarma derdinde hem de öncesinde kodu yazan kişiye çamur atarak prim yapma derdinde oluyor. Düzgün devir almayı öğrenmek zorundayız. Bir kere karşınızdaki kişi işten anlamıyor diye bu olmamış demek bence dolandırıcılıktan başka birşey değildir.
- İyi debug yapabilmeli. Maalesef karşılaştığım çoğu yazılımcı debug yapmayı , kodu takip etmeyi bilmiyor. Yazdığınız kodu her durumu düşünerek debug yapmanız ve nasıl davrandığını incelemeniz gerekiyor.
- Tasarım gözü iyi olmalı. Tasarımcı olması gerekmiyor ama biraz da zevk olması lazım. Bunun içinde yapılan tasarımları incelemeli , trendleri takip etmeli. Bir iş yaparken ui (arayüz) tarafına özenmeli.
Sizde iyi bir yazılımcı olmak ve bu özelliklerin üstünde durup kendinizi geliştirmek istiyorsanız benimle irtibata geçebilirsiniz.