Oracle’ın Java Sertifikaları I

4-5 sene tecrübeli bir Java programcısının, Java’da nesnelerin metotlara referanslarıyla geçilirken, ilkel tiplerin (primitives) değerlerinin kopyalandığını bilmediğini görürseniz ne düşünürsünüz? Benim aklıma hemen, 2002 dünya kupasındaki Brezilya maçında Roberto Carlos’a atraksiyonlu (!) bir çalım atmaya çalışıp, sonraki hayatında kendine bakmadığı için, onca yeteneğine ve özellikle de güzel son vuruşlarına rağmen futbol dünyamızdan silinen İlhan Mansız, gelir. Problem aynı: Eksik bilgi ve eğitim üzerine bina edilmeye çalışılan yetenekler. Bu bizim programlama dünyamızda da, uzmanı olduğunu söylediği programlama dilindeki veri tiplerini bile sayamayan ama heyecanlı ve zeki programcılara karşılık geliyor. Bu durumun sebebini biraz daha açıkça yazarsak, gerek futbolda gerek ise BT’de, temelden başlayan, sistemli bir öğrenmeden geçmeden, alaylı bir yaklaşımla işleri yapıyor olmamız. Alaylı derken, BT’de çalışanların üniversite mezunu olmadıklarını kastetmiyorum; aksine pek çoğu üniversitelerin Bilgisayar Mühendisliği ve benzeri bölümlerinden mezun olmuş kişiler. Hatta daha ötesi, pek çoğu ülkemizin başarılı liselerinden gelmiş, üniversiteye giriş sınavlarında ciddi dereceler yakalamış, üniversite eğitimi boyunca da çok çalışmış ve derslerini başarmış ve mezun olmuş kişiler. Sonuçta ben de aynı yollardan geçtim, onlardan biriyim. Dolayısıyla bu durum bir tespit. Konumuz da bunun neden böyle olduğu değil; bunu başka bir yazıda ele alırız. Bu yazının konusu bunun nasıl düzeltilebileceği.

Java sertifikaları, değişik konu ve seviyelerde çalışan Java’cılar için oluşturulmuş ve başarmak için, o konu ve seviyedeki en temel bilgileri bilmeyi gerekli kılan bir dizi sınavdan oluşuyor. Bu sınavlar önceden Sun tarafından yönetiliyordu ama artık Oracle bünyesindeler. Detaylı bilgiye ulaşmak için bu sayfaya bakabilirsiniz. (Gelen sayfadan ülkenizi seçip devam edin.)

Uzatmadan söyleyeyim: “Java Certified” olmak, “tecrübeli değilim ama temel bilgim sağlamdır” demenin en güzel yolu belki. Yani yukarıda bahsettiğim temel bilgi eksikliğini gidermenin yollarından birisi. Şahsen ben, iş görüşmesi için karşıma gelen adayın jJava sertifikasına sahip olduğunu öğrendiğimde bir kaç şey düşünüyorum: Ona olan saygım artıyor, bu bir. Sonra diyorum ki “bu adam saçma sapan sorular sormaz, sordukları sorular daha seviyeli olur, çünkü en temel soruların cevaplarını zaten sertifikasyon sürecinde öğrenmiştir.”, bu iki. Ve belki de en güzeli, “bu adam doğru yolda, bilgiye önem veriyor, zaman ayırmış, kariyerinde nasıl ilerlemesi gerektiğine kafa yormuş ve sertifikanın sıkıntılı sürecine girmiş ve başarmış.” diye düşünüyorum. Bu, saygı duyulacak bir konum. Dolayısıyla, örneğin işe alımlarda sınav yaparken, sertifikalı kişilere sınav yapmıyorum, doğrudan görüşmeyi tercih ediyorum.

Peki, şimdi de Oracle’ın Java sertifikalarına bir göz atalım. Oracle’ın Java sertifikaları, temelde “Oracle Certified Professional, Java Programmer” isimli sertifika üzerine kurulu. “Java sertifikalı” derken ülkemizde daha çok bu sertifikayı kastediyoruz, çünkü diğerlerini alan o kadar az ki. Aslında bu sertifikanın bir alt sertifikası olarak “Oracle Certified Associate, Java SE 5/SE 6” setifikası da var ama bu sertifika sonradan kondu ve Java’ya daha giriş seviyesinde olanlara uygun bir pozisyonu ifade ediyor. İşin açıkçası bu sertifikayı alan “Java’yı biliyorum” diyemez. Biraz teşvik edici bir sertifika yani. Aslolan, “OCP, Java Programmer” sertifikası, çünkü bununla hem temel Java yani Java SE bilginizi ispat ediyorsunuz hem de diğer, daha yukarıdaki sertifikalar için bir şartı yerine getiriyorsunuz. Bu sertifkayı almadan diğer sertifikaları almanız mümkün değil.

Oracle’ın Java sertifika patikası şöyle:

JavaCertifications

Şekilden de görüldüğü gibi sertifikalar genel olarak Java SE ve Java EE için hem 5 hem 6 versiyonları var.  fakat Java SE 5 için var olan “Oracle Certified Master, Java SE 6 Developer” ile “Oracle Certified Master, Java EE 5 Enterprise Architect” Java EE 6 için yok. Belki henüz yok belki de hiç olmayacak. Bu iki sertifika aslında hem bilgiyi hem de beceriyi gösteren sınavlardan oluşuyor. Örneğin ilkinde hem bir programlama projesi gerçekleştiriliyor hem de bu proje ile ilgili bir yazı yazmanız gerekiyor. Diğerinde yani architect olanında ise yukarıda developer için olanlara ek bir de sınav var, yani 3 parçadan oluşuyor.

Bu sertifikalarla ilgili küçük bir Excel dosayı oluşturdum. Sertifikaların hedefleri ve sınavları ile ilgili bilgilerden oluşuyor, buradan ulaşabilirsiniz. Arkadasımız ve Java SE 6 sertifikasını almış olan genç arakdaşımız Levent de sayfasında bu konuda güzel bilgiler veriyor.

Sertifika (OCP, Java Programmer) alıp, daha iyi bir Java’cı olmak isteyenler için güzel bir kaynağı da burada önerebilirim: Khalid Mughal ile Rolf Rasmussen’in A Programmer’s Guide to Java SCJP Certification: A Comprehensive Primer (3rd Edition) kitabı. Kitabın elektronik halini Internet’te rahatlıkla bulabilirsiniz. Kitabın 1000 küsur sayfadan oluşması ve çok detaylı bilgi içeriyor olması gözünüzü korkutmasın. Planlı bir çalışmayla, bilgi seviyenize ve tecrübenize göre, 2-3 ay ile 1 sene arasında bir çalışmayla bu kitabı çalışıp, sınavını geçebilirsiniz.

Java sertifikalarında da sadece programmer sertifikasıyla da yetinmemeliyiz, OCP, Java Programmer olanlar, arzularına ve ilgi alanlarına göre diğer sertifikalara da yönelmeliler.

Genel olarak sertifikalara önem verip, çalışanlarımızın sertifikalı olmalarını teşvik etmeliyiz. (Bu arada sertifikalı olalım derken “ISO sertifikası” kültürünü kastetmiyorum 🙂 ) Özellikle yazılım evleri, çalışanlarının sertifika almaları karşılığında sınav ücretlerini onlara geri ödeyebilir ya da değişik yollarla bütün yazılımcılarının sertifikalı olmalarını teşvik edebilir. Sertifikalı olmak tabi ki her şeyi çözmez ama Javacılarımızın yazdıkları kodun kalitesini arttıracağı kesindir.

Bol sertifikalı günler diliyorum.

Toplam görüntülenme sayısı: 11810