Yazılım denilince aklına ilk gelen şey muhtemelen kod ve yukarıdan aşağıya doğru akan 1 ve 0'lar. Peki aslında yazılım nedir ? Yazılımcı Ne İş Yapar ? Bu sorulara birlikte cevap arayalım. Hemen konuya giriyorum..
Yazılım Nedir ?
Temel itibariye bir tanım yapmam gerekirse yazılım, kurulu olduğu sisteme nasıl davranmasını gerektiğini söyleyen bir yönetim aracıdır. Yani ne demek istiyorum, iskelete ve organlara hareket etme, çalışma kabiliyeti kazandıran ruh gibi düşünebilirsin.
Şuanda bu makaleyi okuduğuna göre, bu alanla ilgili olduğunu kabul ediyorum. Bu profildeki insanların zihninde hep "ekrandan birşeylere basayım ve birşeyler olsun" kalıbı bulunuyor. Aslında tam da öyle değil. Yani öyle değil derken sadece o kadarla sınırlı değil demek istiyorum.
Mesela TV kumandasından ses açma tuşuna bastın ve TV'nin sesi açıldı ya da apartmanın merdivenlerinden çıkarken geldiğin kattaki ışık kendiliğinden yandı. İşte bunun gibi durumların da altında yazılım dediğimiz o ruh yatıyor.
Yazılım Türleri Neler ?
Yazılımları genel itibariyle ikiye ayırabiliriz. Bunlar gömülü yazılımlar ve uygulama yazılımlarıdır.
- Gömülü yazılımlar
Adından da anlaşılabileceği üzere donanıma özel yazılırlar ve donanımın içerisine gömülürler(yüklenirler). Bunlar çoğunlukla bir kullanıcı arayüzüyle değil bilgisayar arayüzüyle yönetilir ve denetlenirler. Yukarıda vermiş olduğum iki örnek ve onlara ek olarak bir hesap makinesini düşünebilirsin. Hesap makinelerinin ekrana yazılan rakamlarla işlem yapılmasını sağlayan çekirdek yazılımı hesap makinesinin entegresine gömülü olarak yazılmıştır.
- Uygulama yazılımları
Bu yazılım türü ise bir işletim sistemi sayesinde son kullanıcının girdi ve çıktılarına cevap verebilen cihazlarda kullandığımız yazılımlardır. Yani aslında yazılım denince ilk akla gelen yazılım türleridir. Bu yazılımları insanların yazılım olduğunu bilerek kullanmasından kaynaklı sanki gömülü yazılımlara kıyasla hayatımızda daha fazla yer kapladığı zannedilmektedir. Aslında göründüğü gibi değil tam tersine gömülü yazılımlar hemen hemen hayatımızdaki tüm elektronik cihazlarda bulunmaktadır.
Yazılımcı Ne İş Yapar ?
Bu sorunun cevabına geçmeden önce Yazılımcı Kimdir sorusunun cevabını vemeye çalışayım. Yazılımcı, yukarıda değindiğim yazılım türlerini farklı geliştirme ortamlarında kodlama yöntemiyle oluşturan, geliştiren kişilerdir. Bu kısa tanımdan sonra yazılımcının ne iş yaptığından da bahsederek yazımı sonlandırmak istiyorum.
Aslında iş dünyasında "Yazılımcı" adında bir pozisyon bulunmaz. Bunun yerine genellikle "Yazılım Uzmanı", "Yazılım Geliştirici", "Yazılım Geliştirme Uzmanı" vb. pozisyonları kullanılır. Bu pozisyonda çalışan kişilerin sorumlulukları, çalıştıkları firmanın kurumsallığına ya da iş yapma yöntemlerine göre değişebilir. Ben en çok bilinen ve normal olarak kabul edilenler üzerinden gideceğim.
Yazılımcı, kendisine amiri(şef, müdür, ekip lideri) tarafından iletilen teknik analiz çıktısına ve varsa UML diyagramlara bakarak bu verileri kodlama ortamına aktaran kişidir(development). Bu task(görev), bir önyüz(front-end) ya da bir arka plan(back-end) kodlaması olabilir. Burada da yazılımcının kendisini hangi alanda geliştirdiği ve hangi alana ilgi duyduğu belirleyici oluyor. Çünkü front-end ve back-end birbirine bağlı gibi görünse de aslında ayrı ayrı uzmanlıklar gerektiren alanlardır.
Task içeriğindeki kodu yazdıktan sonra varsa takım çalışması yapılan platforma gönderir(TFS, Git). Burada yazılımcının sorumluluğu bu task için tamamlanmış olur ve sonraki aşamada yazılan kodlar bir ekip lideri ya da şef tarafından gözden geçirilerek(code review) projeyle birleştirilir(merge). Test aşaması(testing) ve teslim(delivery) aşamlarından da geçtikten sonra task tamamen kapanmış olur.
Yukarıda bahsettiğim yazılım geliştirme süreçlerini(Software development life cycle) tüm detaylarıyla ileride yazı dizisi halinde yayınlayacağım.
Bu konuda anlatacaklarım bu kadar. Bir sonraki yazıda görüşmek üzere. Eğer faydalı bulduysan aşağıdaki paylaş kısmından daha fazla insana ulaşması için paylaşabilirsin. Ayrıca sormak istediklerini de yorum kısmından bana iletebilirsin.
İlgi gösterip buraya kadar okuduğun için teşekkürler
Görüşmek üzere.
Hilal A.
Çok açık ve net alatım olmuş. Teşekkürler ..
Yazılımcı
Yazılım örenmeye nasıl başlayblrm?