Bu belgeden dikkatimi çeken birkaç alıntıyı da burada sizinle paylaşmak istiyorum:
Bilgisayar Bilimi
İngilizcesi 'Computer Science' olan bu bilim dalı, veri barındırıp bunun üzerinde işlem yapmayı sağlayacak yapılarda, belirli amaçlara ulaşmak için verilerin nasıl işlemleneceği ile ilgilenir. Genel kanının aksine:
Bilgisayar Biliminin ilgi alanına girebilmesi için, işlem yapacak yapının fiziksel gerçekliğinin olması gerekmez.
Bu gerçekten ötürü, disiplinin adında yer alan 'Bilgisayar' sözcüğünü dar anlamı ile algılamak yanlıştır. Her ne kadar bu isim gündelik kullanım bakımından eskiden odalar büyüklüğünde, şimdilerde ise masalarımızın üzerinde yer alan, elektrikle çalışır, bir ekran, bir klavye ve bir işlem ünitesini barındıran cihazın adı ise de, bilim dalı olarak algılandığında 'Bilgisayar' sözcüğü fiziksel bir yapıdan çok 'veri işleme yeteneği olan herhangi bir yapı' anlamındadır. Bu yapı, elektrikle çalışmak zorunda da değildir. Örneğin, Dünyamız canlılığındaki veri işlemleme organının temel ögesi olan 'nöron hücresi' ve bundan oluşan canlı beyni elektrik akımı ile çalışmamaktadır, ancak bu tür veri işlemleme Bilgisayar Biliminin ilgi alanına fazlasıyle girmektedir. Veri işleyen yapının işlemleme kurallarının sağlıklı tanımlanmış olması koşulu ile, bu yapının varlığı yalnızca kağıt üzerinde bile olabilir.
Yazılım Mühendisliği
Bir yazılım mühendisi ile müşteri arasında geçen diyalog:
Y.M.: Peki, bu depodan günde ortalama kaç sipariş sevk edilir?
Müşteri: Hiç belli olmaz ki, hep değişir!
Y.M.: En fazla kaç olur?
Müşteri: 5 de olduğu olur, bazen 500 de olur.
Y.M.: Peki burada kaç eleman yükleme yapıyor?
Müşteri: 2.
Y.M.: 500 siparişi 2 adam nasıl yüklüyor peki?
Müşteri: Beyim, o zaten kırk yılda bir olur, o zaman da siparişler bir iki gün gecikir haliylen!
Yazılım Mühendisi için belli ki çok kritik olan ortalama sipariş adedi bilgisini, gördüğünüz üzere, doğrudan öğrenmek olanaklı olmadı. Yazılım Mühendisi bunu yeteği ile buldu, çıkardı. Her zaman da şans böyle yaver gitmeyecektir.
Dolayısıyle bir Yazılım Mühendisinin:
1. zeki olması,
2. sosyal iletişim yeteneğinin çok yüksek olması,
3. titiz olması
gerekir. Bunlardan birisindeki bir eksiklik sonradan gecikmeler, milyarlık zararlar, davalar, kötü ün olarak geri döner. Yeri gelmişken şunu da belirtelim:
Genel kanının aksine Yazılım Mühendisi gününü (gecesini) bilgisayar karşısında geçiren, çoğunlukla karikatürize edildiği üzere sosyal iletişim özürlüsü, garip bir dille konuştuğu için ne dediği bir türlü anlaşılamayan bir kişi hiç değildir.
Bu durumdaki kişi yukarıda anılan nedenlerden ötürü kaybetmeye mahkumdur, genel profil de hiç böyle değildir zaten. Bu bakımlardan Yazılım Mühendisliğinin pek benzeri Endüstri Mühendisliğidir. Hatta denebilir ki Yazılım Mühendisinin iletişimde olması gerekebileceği kesim bir Endüstri Mühendisininkinden daha yaygındır ve muhatap olacağı müşterinin kendi terimlerine (Yazılım Mühendisinin) vakıf olması ise daha az olasılıktadır.
Yazılımın yazılması:
Sıkı durun, beklentinizin aksine olduğunu tahmin ettiğimiz, çarpıcı bir gerçek geliyor:
Gerçek profesyonellikte yazılımın fiilen yazılması Yazılım Mühendislerince yapılmaz.
Bu aynen planı çizilmiş bir inşaatın İnşaat Mühendislerince harç karılarak, kalıp çakılarak, kazma kürekle inşaa edilmesine, veya tasarımı yapılıp şeması çizilmiş yeni televizyonun üretim hattında bir Elektronik Mühendisinin lehim yapmasına benzer. Bu aşama aslında 'programcı' olarak adlandırılan, kendi başına tasarım yapacak bilgisi olmayan ancak yapılmış bir tasarım dökümanına bakarak yazılımı yazabilecek elemanlarca gerçekleştirilir. Bu 'programcıların' 'kodlamaları' da aynen bir inşaat sahasındaki şantiye mühendisinin inşaatın yapılmasını her aşamada denetim altında tutması gibi bir Yazılım Mühendisi tarafında sıkı biçimde denetlenir. Hatasızlığı kontrol edilir. Yeri gelmişken bir gerçeğin altını çizip, genel bir yanlış kanıyı düzeltelim:
Yazılım Mühendisliği yoğun bilgisayar kullanımı gerektiren, kişinin hayatını program yazarak geçirdiği bir meslek değildir.
Ülkemizdeki Durum
Ülkemiz yazılım üretimi konusunda ne yazık ki daha tam profesyonelleşememiştir. Eksiklik, gerekli kadroların ve iş gücünün oluşmasındadır. Yazılım Mühendisi sayımızda azlık olduğu gibi, bu disiplinin ara elemanı durumunda olan 'programcı' sayısı ihtiyacın çok çok altındadır. Pek az üniversitede 2 yıllık 'programcılık' eğitimi verilmektedir. Kaldı ki 'programcılık' üniversite çatısı altında olmaktan çok 'meslek yüksek okulu' çatısı altında yer alması gereken bir meslek eğitimidir. (Profesyonel) 'programcı' boşluğu ne yazık ki ülkemizin bir gerçeği olarak iki kaynaktan doldurulmaktadır:
1. Kendini hasbel kader programcılık alanında (kısmen) yetiştirmiş, halk deyimi ile 'alaylı' farklı disiplerin insanları. Bu kişiler genellikle ufak programlar yazmışlar, hatta bir denetim mekanizması da olmadığından bunları satabilmişlerdir de. Bununla edindikleri öz güven kendilerine 'kendinden menkul' programcı sıfatı yakıştırmalarına neden olmuştur. Bu kategorideki kişiler evvelki bölümde anlatılan 'tasarım dökümanlarını' çözümlemek konusunda eğitim almamışlardır. Ayrıca, yılların deneyimi ile elde edilmiş, yazılım 'kodlama' nın kurallarından da pek haberli değildirler. Her boyutta 'alaylı' iş görürler.
2. Diğer grup, ne yazık ki Yazılım Mühendislerinin kendileridir. (1) gruptan kişilerle acı deneyimler yaşamış ihtiyaç sahiplerinden imkanı olanları (büyük yazılım şirketleri, parasal kısıtı az olan bankalar, holdingler,
) Yazılım Mühendislerine dönüp, 'kodlama' evresinin de onların tarafından gerçekleştirilmesini istemektedirler. Bu durum belki Yazılım Mühendisinin piyasa ederini ülkemizde artırmakta ancak öte yandan onların (yüksek ücretler karşılığında) yeteneklerine göre düşük kalitede bir iş yapmalarına ve sıkıntı duymalarına neden olmaktadır. Bu, ülkemiz Yazılım Mühendisleri arasında yaygın bir yakınma konusudur. Patlayan bilgisayarlaşma talebinin bir sonucu olarak önümüzdeki on yıl içerisinde ülkemizde bu sorunun çözülmesi ve dengelerin daha sağlıklı olarak oluşması beklenmektedir.
Bilgisayar Mühendisi için iş imkanları nedir, kaç para kazanır?
Yurtiçinde:
* Şirketlerin bilgi-işlem birimleri:
Çeşitli bankalar, holdingler, büyük ölçekli sanayii kuruluşları kendi faaliyetleri ile ilgili bilgisayar(laşma) etkinliklerini kendi çatıları altında gerçekleştirmekteler. Buralardaki etkinlikler çoğunlukla çeşitli tecimsel (ticari) işlerin ve işlevlerin otomasyonu olmaktadır. Veritabanı uygulamaları (stok, süreç denetimi, muhasebe, vb.), ağ eksenli uygulama geliştirilmesi, ofis otomasyonu, WEB esaslı e-tecim, etkinliklerin büyük kısmını oluşturmaktadır.
Bilgisayar Mühendislerine en yüksek ücret bu şirketlerin bünyesinde ödenmektedir. Bulunulan şehre göre değişmekle birlikte yaklaşık 1000-1200 USD ile başlayan başlangıç ücreti bir yıllık başarılı bir çalışma sonucunda 2000 USD'a tırmanmaktadır. Piyasa 4-5 yıllık bir deneyimin alacağı ücret 2500 USD üzeri olmaktadır.
* Yazılımevleri:
Ülkemizde artan sayıda, çeşitli ölçekte, yazılım üreten şirket açılmaktadır. Bunlara yazılımevi diyoruz. Bu yazılımevleri kendi stratejilerine uygun olarak yatay veya dikey pazara yönelik ürün üretmektedirler. Yatay pazarda bir yazılımın değişikliğe uğratılmadan birden fazla farklı müşteriye satılabilmesi amaçlanmaktadır, yani bir tür 'konfeksiyon' üretim söz konusudur. Düşey pazarda ise amaç belirli bir müşteriye (veya dar bir kesime) yönelik yazılım üretmektir. Ufak yazılımevleri genellikle düşey pazardan pay almak istemektedirler. Son yıllarda bu tür yazılımevlerinin sayısı yazılım gereksinimlerine koşut olarak artmaktadır. Bu yönde devlet teşvikleri ve banka kredi destekleri de vardır. Çoğunlukla mezuniyetinin ertesinde bir yazılım kuruluşunda çalışan Bilgisayar Mühendisinin, belirli bir alanda 'alan bilgisi' ve ilişkilerini oluşturup, bulunduğu kurumdan ayrılıp, bir iki ortaklı yazılımevi şirketi kurması ve söz konusu dikey pazara yazılım üretmesi en yaygın gerçekleşme türüdür. Bu tür yazılımevleri ilk bir iki yıl finansal yönden zorlanmakta, ancak ilk birkaç ürünlerinin satılamasını izleyen zaman diliminde (bu ürünün başarısı oranında) piyasada tutunabilmektedirler.
Yazılımevlerindeki Bilgisayar Mühendisi çalışanların aylıkları bir önceki başlıkta anılandan daha azdır. Bazı yazılımevleri ürün satışı üzerinden ortaklık önermekte ve rakamı daha da düşük bir düzeye çekmektedir. Buralarda geliştirilen yazılımın 'çekiciliği' ne yazık ki, Bilgisayar Mühendisinin ücretine (-) bir faktör olarak etkimektedir.
* Savunma sanayii:
ASELSAN, HAVELSAN, STM gibi bir grup, sayıları çok kısıtlı olan, devlet ortaklı şirket, iyi bir alıcı olan savunma sektörüne yazılım üretmektedirler. Ülkemizde çok az bulunan AR-GE içeren yazılım etkinliklerinin önemli bir kısımı da bu çatılar altında gerçekleşmektedir. Daha çok Ankarada konuşlanmış bu şirketlerdeki üçret politikası, ilk maddede belirtilmiş boyutta olmamakla birlikte yine de tatmin edicidir. Genellikle işe koşut Yüksek Lisans eğitimine izin verirler (uzun süreli ortandan kaybolmamanız koşulu ile). Zaman kaynağınızda bir sıkışma doğması durumunda, sizden beklenilen, iş yerine öncelik tanımanızdır. Yani bu eğitiminizin işi aksatmasına izin verilmez.
Ücretler genellikle 1000 USD civarında başlar ancak zaman içinde çok fazla da tırmanmaz.
* Akademik yaşam:
Öğrenimin lisans sonrası eğitim (master, doktora dercelerine yönelik) sürdürmek kararında olan lisans mezunları için bir alternatif de 'üniversitede asistan olarak kalmaktır'. Bu eski deyim 80 li yıllarda Araştırma Görevliliği olarak yeniden adlandırılmıştır. ODTÜ Bilgisayar Mühendisliği Bölümünde her yıl 8-10 araştırma görevlisi göreve başlamaktadır. İyi bir not ortalaması ve bilgi düzeyi, akademik çalışma yönünde motivasyon bu yolu seçmenin ön koşuludur. Araştırma görevlileri, görevlerinin bir parçası olarak bir yandan sınıf karşısında bilgi aktarma imkanı bulmakta ve eğitmenliğin tadına varmakta diğer yandan ise bilimsel araştırmanın nasıl yapıldığını öğrenmekte, bilime katkıda bulunabilmektedirler. Yayınlanan bir bilimsel çalışmanın kapağında kişinin kendi adını görme olanağı yalnızca bu yaşamı seçmekle gerçek olabilir.
<
Ne yazık ki devlet üniversitelerinde verilen ücretler memur ücreti olup, her disiplin için aynıdır. Bazen dalgalanma göstermekle birlikte araştırma görevlisinin alacağı maaş 400 USD dolaylarındadır. Buna karşın kendisinden beklenen iş yükü özel sektördekinin yarısı gibidir. Bazı projeler çerçevesinde yapılabilecek eş işler aracılığı ile bu rakamın yükseltilmesi de olanaklıdır. Ayrıca, akademik ortamda kişiye tanınan özgürlük verilen görevlerin aksamaması sınırlarına kadar genişlemektedir. Özel sektörde durum bunun tam aksidir. İş saatleri, giyim-kuşam, iş ortamındaki kişisel özgürlükler çok daha kısıtlanmıştır.
Türk bilgisayar mühendisleri ne zaman yerli bilgisayar yapacak?
Bu soru bir eksikliğin ifadesi ile sorulmakta ise bu tümüyle yanlış bir yaklaşım. Türkiye Kuzey Denizinde petrol de aramıyor, Palmiye yağı üreticisi de değil, Çikita muz ve kahve de yetiştirmemekte, ancak bunları yoğun biçimde tüketmekte. Günümüz açık pazar ekonomisine dayalı Dünya düzeninde her ülkenin her ihtiyacını kendisinin gidermesi olanaklı değildir. Ülkemiz ileri bir sanayi ülkesi olacaksa bunu hangi doğrultuda gerçekleştireceğini belirlemiş durumda. Ülkemiz, beyaz eşyada, belirli türden elektronik kontrol cihazlarında (örneğin telefon santralları), ileri teknolojiye dayalı inşaat sektöründe, tekstil alanında, uluslararası konaklama organizasyonlarında (ki bir alt kümesi turizmdir), Motorlu taşıt üretiminde Dünya çapında gelişmeyi seçmiş durumda. Tercihini bilgisayar üretimi doğrultusunda yapmamış olmasının yatırım sermayesi, zamanlama, karlılık gibi karmaşık nedenleri vardır. Büyük olasılıkla ileride de bu yönde bir tercih olmayacaktır. Anlaşılması gereken bu tercihin nedeninin 'teknik bilgi eksikliğinden' kaynaklanmadığı, tamamen ticaret dünyasının kendine özgü kurallarından kaynaklandığıdır. Ülkemiz, bu teknolojileri gerekirse üretebilecek bilgi düzeyini çeşitli kurumları aracılığı ile sağlamakta ve bu bilgiyi de güncel tutmaktadır. Bir örnek vermek gerekirse ASELSAN'ın ve üniversitelerimizin bilgi birikimi bu sektörde üretim yapmaya yeterdir. Yapmayışının nedeni ticaridir. Yani yukarıdaki sorunun yanıtı şudur:
Türk ticaret dünyası tamamen ticari çıkarlarla bilgisayar ithalini değil, üretimini karlı gördüklerinde.
Bilgisayar Mühendisinin ne yaptığını çok iyi biliyorum. Hayatta edinmek istediğim yegane meslek. Ancak ÖSYM başarım düşük, ne yapmalıyım?
Cevabımız hiç duraksamadan şu olacaktır: Ne yapın edin bu öğrenimi yapın. Ülkemizde en yüksek puandan başlayan ve daha mazbut puanlara doğru uzanan bir dizi Bilgisayar Mühendisliği Bölümü var. Şüphesiz, sizin gibi çok istekli ve bilinçli bir bireyi aramızda görmek isteriz. Ancak puanınız bu bölüme yetmiyor ise bu dünyanın sonu değil. Eğer bu mesleği belirttiğiniz kadar çok edinmek istiyorsanız en kötü Bilgisayar Mühendisliği eğitimi başka bir dalı okumak durumunda kalmaktan yeğdir. Dört yıl boyunca (ve ondan sonra) kendinizi eğitmek elinizde. Nasıl olsa zamanınızı vermeniz gereken konularla, bilgi edinmek istediğiniz konular aynı, gerisi size kalmış durumda.
Yapmamanız gereken en önemli şey, başka bir disipline gidip bir yandan da kendinizi Bilgisayar Mühendisliği konusunda eğitebileceğinizi sanmanız. Ne kadar iradeli de olsanız buna zaman bulamayacaksınız. Ayrıca size temel teşkil edecek bir bilgi de almıyor olacaksınız. Bu hata, pek çok kişi tarafından yapılmaktadır. Deneyimimiz, bu usulle başarıya ulaşabilen insan sayısının ihmal edilebilecek kadar az olduğudur. Ayrıca bu durumda elinizde diploma olmayacak ve hep 'alaylı' muamelesi göreceksiniz.
Eminim bu siteyi takip eden insanlardan bir kısmı genç arkadaşların sorduğu "ya, hocam ben bilgisayar okumak istiyorum, bilgisayar mühendisi olacağım, ne dersin?" şeklindeki sorulara maruz kalmıştır. Bu tür sorulara kapsamlı ve sistematik olarak cevap vermek, genç (ya da yaşlı) insanları "bilgisayar mühendisliği/bilgisayar bilimleri" nedir, ne değildir konusunda aydınlatmak kolay değildir. Ancak geçen gün sundance arkadaşımın bana gönderdiği bir belge bu konuya son noktayı koymuş durumda: ODTÜ'den Dr. Göktürk Üçoluk'un BİLGİSAYAR MÜHENDİSLİĞİNE İLİŞKİN SIKÇA SORULAN SORULAR başlıklı yazısı sanırım konu ile ilgili hemen herkesi aydınlatacak nitelikte.