2
yazılımcı olmak isteyenlere!
- yazılımcı olmak istiyorum. ne yapmalıyım?

- bazı internet projelerim var, onları hayata geçirmek istiyorum. nereden başlamalıyım?

- programlama öğrenmeyi çok istiyorum. hangi dille programlamalıyım?

- yazılım mühendisi olmak istiyorum. henüz lisedeyim, şimdiden nasıl hazırlanabilirim?

- başka bir sektörde çalışıyorum. yazılımcı olmak istiyorum. nasıl bir yol izlemeliyim?

*
açıkçası son dönemde daha sıkça karşılaştığım bu tür sorulara yanıt olarak net bir yazı yayınlamamış olduğumu fark ettim ve o yüzden bu yazıyı yazmaya koyuldum.
ilk olarak belirli terimleri oturtmaya çalışalım istiyorum. nedir bunlar?
- web programcısı
- yazılımcı
- programcı
- veritabanı yöneticisi
- veritabanı programcısı
- analist
- yazılım mimarı
- proje yöneticisi
- …

bence başlamadan önce ilk olarak bunları kafamızda oturtmalıyız. çok bilinen bir mühendislik alanından örnekleyerek anlatacağım, bire bir örtüşmeler olmayacak ama yine de sektörün dışındakiler için daha aydınlatıcı olur diye düşünüyorum.

yazılımı bir mühendislik olarak düşündüğünüzde, bu inşaat mühendisliği gibidir. bina, köprü, tesis birçok farklı şey inşa edebilirler. ama bu işi tek başına inşaat mühendisi yapmaz. bir alışveriş merkezi yapılacağını düşünün. projenin çizimi, çalışanların yemek ve yatacak yerlerinin sağlanması, temel atma, sıva, tuğla örme, boya/badana, su tesisatı, vb. ne kadar farklı ustalık/uzmanlık alanları var değil mi?

işte yazılım mühendisliği de böyle bir alan. henüz inşaat mühendisliği kadar taşlar yerine oturmuş değil. ama yazılım dendiğinde ya da yazılımcı dendiğinde asıl büyük resim yukarıda anlattığım çaptadır. siz olaya sadece kod yazan yazılımcı açısından bakarsanız, bu inşaattaki sıva ustası, ya da katları atan ustayla eşleşebilir belki…

bu durumdan varacağımız sonuç; yazılım mühendisliği programlamadan çok çok daha büyük bir şeydir. bununla ilgili http://www.chip.com.tr/blog/kadi ... rme-sureci_524.html bağlantısındaki “yazılım geliştirme süreci” isimli yazımdan biraz daha ayrıntı öğrenebilirsiniz. yazılım mühendisliğine daha tanımsal bir bakış içinse “yazılım mühendisliği nedir?” başlıklı yazımda, http://www.chip.com.tr/blog/kadi ... igi-nedir_1488.html bağlantısına bir göz atın.

şimdi gelelim asıl konuya: nereden başlamalısınız?

nereden ve nasıl başlayacağınızı, neyi hedeflediğiniz belirleyecektir. siz eğer bir kariyer meslek olarak, “birinci ligde” bir yazılım mühendisi olmak istiyorsanız yolunuz farklı; hobi olarak programlama yapmak istiyorsanız yolunuz farklı olacaktır.
öncelikle hedefinizi; ne olmak, ne yapmak istediğinizi belirleyin.
diyelim ki ne olmak, ne yapmak istediğinizi belirlediniz. şimdi aşağıdaki reçetelerden size uygun olanını seçin. unutmayın, bunlar başlangıç reçeteleridir.

*

a - bazı projelerim var, bunları hayata geçirmek istiyorum:
eğer bir internet projeniz ya da sektörel çözüm fikriniz varsa bunu hayata geçirmek için yazılım öğrenmek, kafanızdaki evi hayata geçirmek için inşaatçılığı öğrenmekten farklı olmaz. hem sıvacı hem boyacı, hem su hem elektrik tesisatçısı, hem iç mimar hem mimar hem çeşitli hesaplamalar için mühendis, hem marangoz ve hem vb. olmanız gerekecektir.

ilk bakışta sadece bir programlama dili öğrenmek gibi duran yapılacak işler listenize, hemen aklıma gelen birkaç başlıkla yardımcı olayım.

- herhangi bir programlama dilinde uzmanlık
- veri tabanı tasarımı ve programlama
- veri tabanı yönetimi
- kullanıcı arayüzü (web grafik arayüzü) tasarımı
- web programlama (bu herhangi bir dilde programlamayı bilmekten farklıdır)
- web sunucu yönetimi
- yazılım mimarlığı
- sistem/yazılım analistliği
- test uzmanlığı
- teknik doküman yazarlığı
- …

açıkçası bu liste uzar gider.

benim bu şıktakiler için önerim, siz nasıl bir proje olması gerektiğine odaklanın. yazılım mühendisliğiyle ilgili temel kavramları öğrenin. özellikle yazılım isterleri alanında kendinizi geliştirin ve bırakın gerisini sizin için uzmanlar yapsın. inanın böylesi daha ucuza mal olur ve daha kısa sürede biter.

sizin için önerim yazılım mühendisliği kitaplarını okumanız. burada yazılımın gerçekte ne olduğu hakkında genel bir kavrayış edinirsiniz. daha sonra yazılım kalitesi ve yazılım isterleri üzerine biraz daha vakit harcayın. sonra asıl zaman ve enerjinizi projenizi gerçekleştirecek iyi bir yazılım ekibi bulmaya ve onlarla çalışmaya ayırın.

“arada hasta olduğunuzda kendi reçetenizi kendiniz yazasınız diye gidip de tıp okumayın!”

b – başka bir alanda eğitim aldım ve şu an yazılım dışında bir sektördeyim. ancak yazılımcı olmak istiyorum.
özel sektörde bilişim akademilerindeki on yıllık tecrübem esnasında çok net olarak gözlemlediğim bir durumdur bu. birçok arkadaşın başarıyla yazılımcı olduğuna şahit oldum. hatta bazıları ortalama bir yazılımcının ötesine geçip, yazılım alanında danışmanlık ve eğitmenlik yapmaya kadar ilerlediler. sektörde işverenler tabii ki eğitiminize ve diplomanıza bakıyorlar. ancak kendinizi gerçekten yeterince iyi yetiştirirseniz, gerekli sertifikasyonla da bilginizi belgelerseniz diploma pek de sorun olmuyor. en azından sektörde kendinize yer bulabiliyorsunuz. bu konuda sektörde isim yapmış birçok insan tanıyorum.

yani isterseniz, yaparsınız!

eğer böyle bir düşünceniz var ve yolun çok çok başındaysanız, henüz hiçbir şey yapmadıysanız size önerim şudur: kendinizi test edin.

başlangıç seviyesindekiler için yazılmış programlama kitaplarından birini alın ya da internetten adım adım anlatılmış örnek program makaleleri bulun. en kolay öğrenilebilecek programlama dillerinden olduğu için visual basic iyi bir tercih olabilir. sonra bunu uygulamaya çalışın. zor bir başlangıçtır, ama eğer yılmaz ve ilerleme gösterirseniz bu bir işarettir. yazılımcılık eğer hasbelkader bu konuda lise, meslek yüksekokulu ya da üniversite okumadıysanız (tesadüfen kazanılmış ya da başlanmış olmasını kastediyorum) sevmeden yapılacak bir iş değildir.

bu dediğimi test etmenin daha kolay bir yolu, eğer yaşadığınız yerde bilişim akademileri varsa bunların tanıtım eğitimlerine katılmaktır.

eğer yapabileceğinizi düşünüyorsanız bundan sonrası ne kadar zaman ve para ayırabildiğinizle ilgilidir. ne hızlı ve kesin çözüm sertifikalı bir eğitim merkezinde bu işin ustalarından eğitim almaktır. eğer böyle bir imkanınız varsa çevrenizdeki yetkili eğitim merkezlerine gidin, programlarını inceleyin, hocalarıyla tanışın. derslerine misafir olarak katılın. ödeme şartlarına bakın. sizin için uygun olanını seçin.

tabii bu aşamada aynı zamanda sizin hangi dilde ya da teknolojide uzmanlaşacağınız hakkında da karar vermeniz gerekecektir. yazılımcı olmak istemenizin nedeni bu işten para kazanmak olduğu için, hangi dili seçeceğinizi de sektör belirleyecektir. şu an piyasaya bakarsanız en çok aranan yazılımcılar java ya da c sharp bilenler. yani karşınızda iki temel alternatif var: microsoft teknolojileri ve açları ya da sun teknolojileri ve araçları. ikisinin de sektörde farklı yerleri var. seçim sizin.

bir kere tarafınızı seçtikten sonra bu hep orada kalmanız gerekecek anlamına gelmiyor. ama mümkün olduğu kadar bir tarafta kalmak uzmanlığınızı daha kısa sürede belirli bir seviyeye taşıyacaktır.

eğer kursa gidemiyorsanız iş size kaldı demektir. kitaplar ve internet kaynaklarıyla kendinizi geliştirmelisiniz. bir kitapçıya gidin ve size okunması ve anlaşılması en kolay gelen kitaptan başlayın. bitirdiğinizde her şeyi anlamış olmanız gerekmez. ama bir şeyler yapıyor olmalısınız.

yazılımla ilgili mümkün olduğunca yazıları ve blogları takip edin. bu sizin yazılım alanındaki görüşünüzü zenginleştirecektir. vaktiniz oldukça hem programlama hem de genel olarak yazılım mühendisliği konularında kendinizi geliştirin.
başlangıç için bu blogdaki “kaynak kitaplar” http://www.chip.com.tr/blog/kadi ... -kitaplar_1480.html ve “çevrimiçi kaynaklar” http://www.chip.com.tr/blog/kadi ... kaynaklar_1368.html bağlantılarına bakabilirsiniz.

bu gruptakiler için en önemli konu: mutlaka ama mutlaka sürekli olarak uygulama geliştirin!
“merhaba dünya “ ile başlayın ve her seferinde yeni öğrendiğiniz bir şeyleri uygulayarak yeni uygulamalar geliştirin. programlamayı öğrenmenin en iyi yolu programlama yapmaktır.
ödülü bir yazılımcıdan (ki şimdilerde aynı zamanda bir yazılımevi sahibi) “iyi bir yazılımcı olmanın reçetesi” için http://www.chip.com.tr/blog/kadi ... -recetesi_1322.html bağlantısına bakabilirsiniz.

c – hobi olarak programlama yapmak istiyorum.
size de önerim öncelikle kendinizi test etmeniz yönündedir. b grubundakiler için yazdığım ilgili paragrafa bir göz atın. eğer testte başarılı olursanız yolunuz açık demektir.

siz bu işi zevk olarak yapacağınız için, sizin şartlarınız b grubundakilerden farklıdır. zevk için herhangi bir programlama dili seçebilirsiniz. istediğiniz zaman çalışır istediğiniz zaman bırakırsınız. ama bilin ki yabancı diller gibi programlama dilleri de nankördür. eğer sürekli kodlamazsınız, çok çabuk unutursunuz.
sizler için önerim kolay dillerle ilerlemeniz yönünde olacaktır. visual basic bu konudaki en iyi seçimlerden biridir. belki çok yoğun olmayan bir yazılım kursu ya da kitaplar ve internet kedinizi geliştirmeniz için kullanabileceğiniz araçlar olarak düşünülebilir.

ne yapmak istediğiniz tam olarak netleştirmek için bir eğitim merkezine gidin ya da yazılım alanından biriyle konuyu tartışın. belki de yapmak istediğiniz şey yazılım geliştirmek değil de web tasarımcılığıdır. aralarındaki ince çizgiler, kendinizi geliştirme sürecinde size gereksiz para ve zamana mal olabilir. buna mutlaka dikkat edin.

d – yazılım okuyorum/okuyacağım, mezun olup sektöre çıkana kadar bir şeyler yapmak istiyorum.
meslek liseleri, yüksek okul ve üniversitelerde yazılım alanıyla ilgili eğitim alanlar doğal olarak yukarıdaki şıklardan daha şanslılar. ama şunu bilin ki diploma tek başına hiçbir işe yaramayacaktır. en az b grubu kadar çaba göstermelisiniz.
okul size teorik olarak birçok şey verir. ama uygulama kısmında sizin ayrıca zaman harcamanız gerekecektir. bol bol uygulama yapın. öğrendiğiniz programlama dillerinde uygulamalar geliştirin, mühendislik konularını anlamaya çalışın ve patrik olarak nasıl kullanabileceğiniz üzerine çalışmalar yapın.

siz de kendinize bir alan seçin (örneğin: web programlama, microsoft teknolojileri). okul bunun dışında bir şeyler gösterse bile siz bu seçtiğiniz konuda kendinizi geliştirin. böylece sektöre çıktığınızda hem güncel ve sektörde kolaylıkla iş bulabileceğiniz bir birikimle hem de okulda öğrendiklerinizin kattığı zenginlikle daha çok tercih edilir bir eleman olursunuz.

size de “iyi bir yazılımcı olmanın reçetesi” başlıklı yazıyı okumanızı tavsiye ediyorum. bunun dışında madem bu işin okullususunuz, mühendislik konusuna özellikle eğilin.
siz de yolun daha çok başında olduğunuz için kendinize fazla yüklenmeyin. en basitinden başlayın. ama mutlaka kodlayın. iş yapın.

*

sonuç olarak yaptığınız ya da yapacağınız şeyin ne olduğunu anlamanız önemli. yazılım mühendisliği başlıklı yazıda kuş bakışı bir fotoğraf çekmeye çalıştım. bunu okuduktan sonra işin programlamayla ilgili genel bakışı için de http://www.chip.com.tr/blog/kadi ... sel-bakis_1006.html bağlantısındaki “programlamaya bütünsel bakış” yazısını okuyun. bunlar size seçimlerinizi yapabilmeniz için gerekli olan bilgiyi sağlayacaktır.

tabii ki yazılımcı olmak isteyen herkes için hedefi, birikimleri, arka planı farklı farklıdır ve bu kadar genellemeyle herkes için çözüm üretmek mümkün değildir. ama en azından bir fikir oluşturabildiğimi düşünüyorum.

yazılımcı olmak istiyorsanız ve aklınıza takılan sorularınız varsa bunları bu yazıya yorum olarak gönderin. hepsine teker teker cevap vereceğimden emin olabilirsiniz.

gerçekten istediğiniz bir hedefiniz olursa, başaramayacağınız hiçbir şey yoktur!

hoşça kalın.
kadir çamoğlu
kadir.camoglu@hotmail. com

yazı alıntıdır arkadaslar
duru bir sekilde okunması adına alıntıladım
alıntı
  • 1
    sogansizcucuk 4 ay önce
    yazılımcı olunmaz doğulur
    1
    canki 4 ay önce
    öyledir muhtemelen :d
    bu arada hoşgeldin ilk oyun benden olmus :)
    1
    sogansizcucuk 4 ay önce
    hoşbuldum :d güzel ortammış ya sevdim ben :) sağol oy için :dd
    1
    canki 4 ay önce
    evet öyledir umarım kalıcı olursun bizde gelişmesi için elimizden geleni yapıyoruz
    puivi nasıl kesfettin ? reklamlar ile mi
    0
    sogansizcucuk 4 ay önce
    arkadaşım bahsetti merak ettim sonra devam işte :d


  • teknoloji

    8 takipçi

  • abone ol

  • moderatörler

    uye

popi yükleniyor...

popi yükleniyor...

pupu yükleniyor...

pupu yükleniyor...

tepe yükleniyor...

tepe yükleniyor...