Son zamanlarda PHP Yazılımcısı arayan firmalardan oldukça sık duyulan bir serzeniş var: “Ortalıkta PHP yazılımcısı olduğunu söyleyen çok ama ilanlara başvuran yok”. Bu serzenişe genelde iki tür cevap veriliyor: “Aslında iyi bilen yok” veya “Kendinize bakın önce” şeklinde. Bu sorun ve verilen cevaplar ne kadar yerinde birlikte inceleyelim.
PHP öğrenilmesi en kolay yazılım dillerinden biridir. Aslında “biriydi”. O yüzden onu bilen veya gerçekten bildiğine inanan insan sayısı oldukça fazladır. Ancak PHP yerinde saymadı ve nesne yönelimli programlamaya daldıkça, “coder”lar pıtır pıtır düşmeye başladı. Diğer taraftan 10 yıl önce PHP’yi bilinçli/bilinçsiz küçümseyen big brother dillerin kullanıcıları da isteyerek veya istemeyerek bu dilin kapsama alanına girmeye başladılar. Bu PHP’nin daha yaygın(!) ve saygın hale gelmesini sağladı. Yaygın ifadesinin yanına özellikle ünlem attım çünkü bu, Türkiye’de dünyaya paralel ilerlemedi. Prosedürel PHP yazanlar bir türlü Nesne Yönelimli PHP’ye adapte olamadılar. Sınıflar, nesneler ve frameworkler arasında boğulanlar, ilerlemeye bir türlü ayak uyduramayanlar çok fazlaydı. Diğer taraftan prosedürel PHP hala para kazandırıyor ki bence bunda bir sakınca yok. C de bir prosedürel dildir ve dillerin Pele’si olduğu konusunda itirazı olan olmaz sanırım. Prosedürel PHP kullananlara bu işi bilmiyor, en ufak şeyi framework ile yapanlara biliyor denildiği bir ortam yaratılmış durumda ve buna bizzat PHP dünyasının katkı sunması oldukça garip.
Altını çizerek belirteyim: Nesne yönelimli PHP yazan, framework konusunda bilgili, design pattern nedir ne değildir bilen, bootstrap dediğinizde aval aval bakmayan vs.. vs.. yazılımcılar mevcut sektörün yükünü kaldıramazlar. Firmalar paşa paşa prosedürel PHP yazılımcıları çalıştırmak zorundadırlar. Diğer taraftan bu tür yazılımcılar da çanların kendileri için çaldığının artık farkına varmalıdırlar. Çünkü sektör uyandı!
Yazımızın amacına dönersek, bir firma PHP yazılımcısı ararken hangi yöntemleri uygulamalı ve hangi yöntemlerden kaçınmalı? Bunları madde madde listeleyelim:
1. İhtiyacınız olmayanı talep etmeyin:
Senyor, uzman vb. PHP yazılımcısı ilanları verilip, o insanlara yalnızca html kodu değiştirmek, redaksiyon yaptırmak, imaj çizdirmek, css yazdırmak gibi işler yaptırıldığına çok tanık oldum ve bizzat ben de yaşadım. Açıkcası ücreti iyi olduktan sonra firmaya gerekli uyarımı yapar, yanlış yaptıklarını belirtir ama ısrar ederlerse devam eder(d)im. Bu konuda neye ihtiyacı olduğunu bilmesi gereken firmadır. Bir ilan hazırlanmadan önce varsa firmada bulunan bir uzmandan, yoksa tanıdık yazılımcılardan, hatta sosyal ağlardaki bağlantılarınızdan fikir almakla başlayabilirsiniz. Slogan oldukça basit: Tarla sürmek için Ferrari kullanmayın!
2. İhtiyacınız olanı talep edin:
Firmanın yürüttüğü projelerde spesifik çözümlere ihtiyaç duyuyorsanız bunu belirtmeniz gerekir. Bir PHP yazılımcısı, PHP ile ilgili tüm yan alanları, programları, veritabanlarını, içerik yönetim sistemlerini v.b. bilemez. Eğer bu tür spesifik ihtiyaçlarınız varsa bunları öğrenmesi için zamana ihtiyaçları olduğunu bilmeniz gerekir. Eğer bu zamanı verecek durumda değilseniz bunu baştan belirtmeniz gerekir. Örneğin Magento üzerine kurulu sisteminize modül geliştirmeniz gerekiyor. “PHP yazılımcısı arıyoruz” şeklinde verilen bir ilanın size getireceği başvurularda verim %5 ise “Magento için modül geliştirecek PHP yazılımcısı arıyoruz” ilanı %100′e yakın bir verim sağlayacaktır. Smarty, Zend Framework, Linux vs. projenizin sınırları varsa bunları mutlaka belirtin.
3. Tam-Zamanlı / Freelance
Çalıştırdığınız insanın bilgi birikimi, sağlayacağı verimi doğrudan etkilese de bazen ihtiyacınız olmayan bilgi brikimini de karşılamak zorunda kalabilirsiniz. Örneğin çalışmayı planladığınız yazılımcı, aynı zamanda bir Sistem Yöneticisi ise onunla tam zamanlı çalışmak istediğinizde, bu bilgisini de satın almanızı talep edecektir, ister kullanın ister kullanmayın! İşte bu noktada biz freelance/outsource çalışmayı keşfettik. Bu “İhtiyacın kadar öde” sisteminin oldukça güzel bir yansıması aslında. Madde 2′de yer alan ihtiyaç tablosu eğer size Freelance çalışma olanağı veriyorsa bunu mutlaka kullanın! Bu konudaki tüm önyargılarınızdan kurtulun. Diğer taraftan bu çalışma şekline uygun olmayan durumlarda, maliyetlerden kurtulmak için bu yönteme başvurmaktan da kaçının! 1 yıl sürecek kapsamlı bir proje için Freelance çalıştırmayın, 1 ay sürecek modül yazımı için tam zamanlı yazılımcı ilanı vermeyin.
4. Söz konusu maaşsa gerisi teferruattır:
Das Kapital’i okumuş olmaya gerek yok. Hiçbir çalışanınız firmaya karşı sizinle aynı duyguları beslemez, besleyemez. Bilgisini satarak geçinen insanlar için paranın değeri, diğer her türlü işçiden farklı değildir. Burada dengeyi kurması gereken yine firmadır. Vereceğiniz maaş, karşıdan almayı istediğiniz verime paralel olmalıdır.
5. Önce araştırın:
Zend Framework üzerine kurulu bir projede çalışacak bir PHP yazılımcısına ihtiyacımız var diyelim. Yapılan ilk şey hemen bir ilan hazırlayıp yayınlamak oluyor. Bu alışkanlığı değiştirelim ve yeni bir yöntem ekleyelim. Google Türkçe sayfalarda “Zend Framework” şeklinde arama yaparsak karşımıza belirli isimler/blog adresleri gelecektir. Bunların çoğunun laf kalabalığı olduğunu anlarsınız, eledikten sonra elinize birkaç isim geçer, örneğin: Elvin Şiriyev, Gökçe Yalçın, M.Ozan Hazer vs. Bu isimler ile direkt irtibata geçmeniz aradığınız yazılımcıya ulaşmanızı sağlayabilir. Belirli bir konunun uzmanları aynı konunun diğer uzmanlarını iyi tanır ve çoğunlukla iş durumlarını da bilirler.
6. İlan:
İlana bakış açınız, “ihtiyacım olan elemanı bulma” amacından ibaret ise yanlış yoldasınız demektir. Bir ilan, 3 ana amaca hizmet etmeli: 1. Aradığınız yazılımcıyı bulmak, 2. Markanızın / firmanızın / projenizin bilinirliliğini arttırmak, 3. Rakiplerinizi tedirgin etmek. Kötü hazırlanmış bir ilan ise bu 3 amacı bir kenara itmekle kalmayıp, hem firmanıza zarar verecek hem de eğer sosyal bir ortamdaysanız sürüsüyle tepki çekecektir.
PHP yazılımcı ilanlarına özgü yapılan bazı hataları listeleyelim, bunlardan uzak durmanız başarı şansınızı arttıracaktır:
Bunu hazırlarken kariyer.net teki PHP yazılımcı ilanlarından faydalanacağım.
Örnek: “Tercihen PHP, .NET, Smarty Template Engine konusunda min. 1 yıl deneyimli. CSS, HTML, JavaScript konularında bilgi sahibi”
PHP ve .NET’in ikisini de bilen yazılımcılar elbette mevcut ancak bu ilanı görünce aslında firmanın neye ihtiyacı olduğu belli olmuyor. .NET’in kullanım alanı neresidir? Smarty tasarım ve yazılım süreçlerini ayırmak için faydalanılan bir araçtır, css, html, js ve PHP’yi bu yazılımcı hazırlayacaksa kullanım amacı nedir? gibi. Bunların net olarak belirtiliyor olması gerekir aksi takdirde ne istediğini bilmiyor damgası yersiniz.
Örnek: “Üniversitemizin Bilgi İşlem Daire Başkanlığı’nda görevlendirilmek üzere;
* Üniversitelerin Bilgisayar, Elektrik – Elektronik Mühendisliği veya benzeri bölümlerinden mezun
* İleri seviyede “Nesne Yönelimli Programlama ve İlişkisel Veritabanı” konusunda bilgi ve tecrübesi bulunan
* PHP, PostgreSQL, MySQL, Javascript, AJAX, HTML ve CSS bilgisine sahip
* Tercihen C#, Flash, ActionScript ve Photoshop konusunda deneyimli
* Yüksek sunu ve iletişim becerisi olan
* Planlama, organizasyon ve motivasyon becerilerine sahip
* Yoğun çalışma temposuna ayak uydurabilecek
* Askerlik görevini tamamlamış
* Bay
Uzman PHP Geliştiricisi aranmaktadır.”
İlan her şeyden önce rahatsız edici bir ilan. Her şeyin en iyisini beklediğini belirtiyor ve açık kapı bırakmıyor size. Türkiye’nin en iyi PHP yazılımcıları dahi bu ilanın birkaç maddesinde takılıp düşeceklerdir. “Bay” ifadesiyle başlayalım. Neden bay istendiğine dair bir ifade yok, dolayısıyla ilan verenin önyargılı olduğunu varsayabiliriz sanırım. “Yoğun çalışma temposu”, yani fazla mesai; bunu belirtirken her ne kadar ayrı bir yanlış da olsa “yüksek maaş” gibi süspansiyonlar bile kullanılmamış. “PHP, PostgreSQL, MySQL, Javascript, AJAX, HTML ve CSS bilgisine sahip, tercihen C#, Flash, ActionScript ve Photoshop konusunda deneyimli”. İlanlarınızda ekstra diller ve programları saydırma amaçlı “tercihen” kalıbından kaçının. Olursa bal kaymak olur ama onu karşılamayız demektir bu. Son zamanlarda ilana gelebilecek eleştirileri engellemek amacıyla kullananlar da var. Bu kadar alana ihtiyacınız varsa bunları bir kişiye yükleyemezsiniz, alınacak personel sayısını arttırmak zorundasınız. Şansınız yaver gitti de “tercihen” dedikleriniz dahil hepsini bilen bir yazılımcı/tasarımcı/veritabanı uzmanı yaşıyor diyelim: BU İLANA BAŞVURMAYACAKTIR! O halde amacınıza engel koymayın. “Tercihen” kalıbını gerçekten gerekli ve amacına uygun yerlerde kullanın.
Örnek:
Grafik tasarım, web tasarımı ve uygulama konusunda en az 3 yıl deneyimli,
HTML, XHTML, XML, CSS, Javascript, ASP, PHP, Python konularında deneyim sahibi,
Photoshop, Flash, Fireworks, Freehand, Indesign, Dreamweaver uygulamalarını kullanabilen,
MySql, SQL Server veritabanlarını kullanarak uygulama geliştirebilen,
SEO Arama Motoru Optimizasyonları, Adwords ve Adsense konularında deneyimli,
Web raporlama yapabilen,
Yeni teknolojileri öğrenmeye meraklı, araştırma yapabilecek düzeyde İngilizce bilgisine sahip olan.
#!!@!!@%&#
Yok böyle biri, kariyer.net bu tür ilanlar sayesinde hala en çok kazanan sistemlerden biri. Bu ilandan kariyer.net dışında kimse çıkar sağlayamaz. Kendinizi komik duruma düşürmemek için ne hakkında konuştuğunuzdan haberdar olun.
Bu örneklerin sonu yok, kariyer sitelerinde arama yaparak diğer örnekleri de inceleyebilirsiniz. Peki doğrusu nedir?
İlan 4 kısımdan oluşmalıdır.
A. Başlık:
Net olmalı ve amaca hizmet etmelidir. “Zend Framework Uzmanı PHP Yazılımcısı”, “E-Ticaret sistemleri geliştirecek PHP Yazılımcısı”, “API uygulamarı geliştirecek PHP Yazılımcısı” vb.
B. İhtiyaçlarımız:
Zend Framework uzmanı,*
MySQL uzmanı,
Simple Cloud API konusunda deneyimli veya kendisini geliştirebilecek,
Tercihen askerliğini tamamlamış yazılımcı arıyoruz.
* Başlığa, arama motorları ve listemede dikkat çekmesi için, PHP ibaresini ekledik ama burası artık yazılımcıya hitap ettiğiniz bir alan olduğundan ayrıca PHP yazılımcısı gibi ibarelere gerek yoktur. OOP bilen, MVC bilen gibi ekstra laf kalabalığına hiç girmeyin. Zend Framework ifadesi bunların hepsini kapsamaya yeterlidir.
C. Çalışma Alanı: Yine aşırı ayrıntıya kaçmadan, yazılımcının ne yapacağı belirtilmeli.
Müşterilerimiz için hazırladığımız içerik yönetim sisteminin, cloud hosting üzerinde verimli çalışmasını sağlayacak modüller yazılması.
D. Firma ve Başvuru:
Eğer ilanımız kariyer sitelerinde değilse, ilanın sonuna firmanız hakkında bir bilgi yazısı, iletişim bilgileri ve bu ilan için başvuru yollarını belirtir notlar düşülmeli.
İlanımızın son haline bakalım:
Zend Framework Uzmanı PHP Yazılımcısı
Zend Framework uzmanı,*
MySQL uzmanı,
Simple Cloud API konusunda deneyimli veya kendisini geliştirebilecek,
Tercihen askerliğini tamamlamış yazılımcı arıyoruz.
Müşterilerimiz için hazırladığımız içerik yönetim sisteminin cloud hosting üzerinde verimli çalışmasını sağlayacak modüller yazılması.
Başvurular ik@abcde.com’a yapılacaktır.
ABCDE Şirketi
1999 yılında kurulan …. şu alanlarda faaliyet göstermektedir. Lorem Ipsum
+90 212 111 11 11
www.abcde.com
Bu tür bir ilan ile sadece aradığınız personele daha hızlı ulaşmış olmaz, diğer yazılımcıların gözünde de olumlu bir imaj çizmiş olursunuz. Ne istediğini bilen ve net bir firma! Bunun getirileri zamanla hiç ummadığınız kadar çok olabilir. Diğer taraftan, yazının başında ifade ettiğimiz sorunların çözümü de sağlanmış olacaktır. PHP yazılımcısı arıyorum dediğiniz bir ilana bilgi düzeyi ne olursa olsun çok geniş bir aralıkta başvurular olacaktır. Ancak yukarıdaki ilana bahsedilen istekleri bilmeyen biri başvuruyorsa büyük ihtimal bu yanlışlıkla olmuştur ve kendini hemen ele verir.
Diğer bir konu ise bizim ünvanımızın ne olduğu. “PHP yazılımcısı”. doğru kullanım budur, “uzmanı”, “programcısı” veya “geliştiricisi” de denilebilir. Ama “coder”, PHPci, “PHP bilen”, “PHP’den anlayan” gibi ibareleri kullanmayın.
7. İş görüşmesi:
İlan sonrası iş görüşmelerinde kaçınmanız gereken sadece birkaç konu var:
A. İş görüşmesinde yazılımcıya hisse önermeyin. (Verecekseniz bunu işi kabul ettikten sonra verin. İşi kabul etmesi için bir kriter olarak sunmayın)
B. Projenizin ne kadar süper olduğunu söyleyip, daha 10 dakika önce projenizi öğrenmiş birinden bunu onaylamasını beklemeyin.
C. İleride maaşın artar, bizimle büyürsün, kendini geliştirirsin gibi ifadeler kullanmayın.
D. Kişisel soru sormayın: Memleketi, ailesi, inançları, politik görüşleri.
E. Önyargılı olmayın: siz bir psikolog değilsiniz. Yazılımcının iş görüşmesindeki 30 dakikalık tavırlarını, “liderlik” kitaplarındaki saçmalıklar ile değerlendirmeyin. Örnek olarak disleksi kaynaklı konuşma sorunu yaşayan biri olarak bu tavırla çok sık karşılaştım.
8. İşe başladıktan sonra:
A. Yazılımcının tutkusu sizin işinize veya firmanıza değil, kendi yeteneğine ve bilgisine dayanır. Kira derdine düşen, faturasını ödeyemeyen birinden bu tutkuyu beklemeyin.
B. Kendisini geliştirmesi için fırsat tanıyın. Mesai sırasında eğer ekranda hep kod görüyorsanız artık o yazılımcıyı kaybetmişsiniz demektir. Arasıra herhangi bir IT makalesini okuduğuna tanık oluyorsanız işler doğru gidiyor demektir.
C. Kızıştırın. Oradan buradan yeni bir teknoloji hakkında konuşulduğunu duydunuz diyelim. Bu konuda araştırma yapmasını ve size sunmasını talep edin. İlk zamanlar yazılımcı açısından sıkıcı olacaktır ama bir süre sonra bunun meyvelerini birlikte toplarsınız.
D. Sadece bir yazılımcı ile çalışmaktan kaçının. Birden fazla yazılımcı oto-denetim yaratır ve psikolojik olarak rahatlama yaşarlar.
Not: Yazı henüz tamamlanmamıştır.