Bilmek istediğin her şeye ulaş

Yazılım uzmanı ne iş yapar? Nasıl bir eğitimden geçmek gerekmektedir?

Tek basina 'Yazilim uzmani' kod yazar. Programcidir yani. Hani mektepli ve alayli diye bir ayrim vardir ya. Mektepli degilsen sana 'yazilim uzmani' derler. Hos bilgisayar muhendisligi mezunu olanlarina da yazilim uzmani deniyor. 'Ofis yazilimlari uzmani' gibi bir tabirde is degisiyor yanliz, o zaman o programi cok iyi kullanabilen kisi oluyor.
Egitime gelince. Resmi bir egitimi yok. Programlama dillerini ogrenmeye zaman ayirabilen herkes yazilim uzmani olabilir. Ne kadar iyi bir yazilim uzmani oldugunuzu belirleyen faktorler onemli bu noktada. Faktorlerin detaylarina girebiliriz ama gerek yok, bir isin bir dilde en dogru yapim seklini blme noktasinda birlestiriyorum ben. O faktorlerin hepsi de kod yazmayi ogrenmeye ve kod yazmaya ne kadar zaman ayirdiginizla ilgili. On yildir kod yazdigi halde temel duzeyde kalmis programci da olabilir, 5 yildir kod yazdigi halde cok kaliteli kod yazan da.
Kendi kendini egitmek istersen, 1. Surekli egitim videolari seyret 2. Ilgili sitelerde, ozellikle soru-cevap sitelerinde olan biteni takip et 3. Surekli kod yaz, seyrettigin videolarda anlatilan ve bildigini dusundugun seyler dahil. 4. Farkli farkli projeler yap. Surekli e-ticaret sistemi yazan bir programcinin tecrubesiyle 2 e-ticaret sistemi, 2 CMS, 2 blog yazilimi, 1 video izleme sitesi yazmis programcinin tecrubesi bir olmaz; 2ncisi daha tecrubeli olur. Cunku farkli isler yapmak zorunda kalmistir.
Eger kendi kendini egitmeyi dusunuyorsan, mutlaka bir 'mentor'un olsun, yoksa yillar harcar, ama ayni sureyi harcamis insanlardan geri kalirsin.
  • Paylaş
1

Şaman, Süper açıklamışsın uzmanım, ben de bir süredir türemiş bu uzmanlık mesleğini merak ediyordum. Muhtemelen bilgisayarla ilgili her dalın alaylı, tecrübeli ve/veya bilgilisine uzman deniyor. Yazılım geliştirme uzmanı o zaman algoritma yazıcı olmalı?

Öncelikle "Yazılım Uzmanı" ve "Programcı" kavramlarını birbirinden ayıralım. Her yazılım uzmanı kod yazabilir ama her programcı ortaya bir yazılım sunamaz. Yani bir yazılımı ortaya çıkaran kişidir yazılım uzmanı.

Gereksinimleri toplar, yazılım tasarımını yapar (burada grafik tasarımdan bahsetmiyorum tabi ki) , teknolojiyi seçer, gerekirse işi kendi yapar, gerekirse ekibe katılır ve gidişatı kontrol eder.

Programcıya ise "bana üyelik bölümünü şu, bu şekilde kodla denir ve o da kodlar. Test aşamalarını, kullanılabilirlik testlerini programcı yapmaz. Yazılımcı koordine eder ve programcıya yeni talimatlar verir. Burada araya kıdem veya uzmanlık ölçütü koymuyorum. Bazıları sadece kodlama yapmayı sever, işin diğer alanları ile ilgilenmek istemez. Tabir yerindeyse "hardcore coder" denilebilir bu tiplere. Onların yaptığı da katma değerli bir iştir ama "Yazılım Uzmanı" sadece kodlamayı düşünmez. Yazılımın pazarlanmasında yardımcı olacak bir işlevi yazılıma dahil eder.

Besteci ve virtüöz gibi. Eseri besteleyen yaylı enstrümanları müziğine dahil eder ama yaylı bir çalgı çalamıyordur. Burada eser önemlidir ama aynı zamanda onu icra edecek vitüöz de önemlidir. Mesela bir keman konçertosu düşünün. Kemanın yeteneği, eseri çalışı besteye değer de katabilir, sıradanlaştırabilir de.

Ama yazılım uzmanı olaya birçok yönden bakar. Eğer yazılımdaki bir işlev uzun bir süre ve yüksek iş gücü gerektiriyorsa, maiyeti düşünüp bunu iptal edebilir. Ama programcı için her yeni problem bir yarışma gibidir. O problemi çözer ve yeni problemi bekler. Yazılım uzmanı da programcı da teknolojileri çok iyi bilmelidir. Biri iş yapamaz, biri de koordine edemez yoksa.

Gel gelelim her programcı bir yazılım uzmanı adayıdır. Hem hardcore coder olup hem de kullanılabilirlik, pazarlama gibi konularda bilgisi olan çok programcı vardır. Aslında yazılım uzmanı da koltuğa oturup "sen şunu yap, sen bunu yap" demez. Kendi de bizzat geliştirmenin içindedir. Ayrıca programcılardan geri bildirim de alır. Bu karşılaştırma ne birini yermek ne de yüceltmek amaçlı değildir.

Yazılım uzmanı olmak için önce iyi bir programcı olmalı, daha sonra da yönetim, koordinasyon, teknik uzmanlık, pazarlama gibi konularda yetkin olmalıdır. Sonuçta pazarlama ürünle başlar. Bizim ürünümüz de yazılım olduğuna göre çok normal bu yeteneklere sahip olmak.
  • Paylaş
2

Necmettin Begiter, Teknik olarak gayet dogru ifadeler, fakat sirketlerde kimsenin kartvizitinde programci yazmiyor, hepsinde yazilim uzmani yaziyor. Yazilim uzmani sevmeyen programci diye birsey var bir de..

Gökhan Çancılar, Ya tabi ki Türkiye'de işler farklı yürüyor. Şimdi ofisteki son projenin grafiğini çizdim, css & js kodladım, veritabanını tasarladım, sunucu tarafını programladım. Bunların hepsini birden bir kişi yapmamalı. Ama benim yorumumda olması gerekenleri yazmaya çalıştım. Haklısınız herkes "Yazılım Uzmanı" yazdırıyor. Mesela ben burada unvana Bilgisayar Programcısı yazdım. :)

Yazılımda uzman olmak bence sadece kaliteli kod yazmak değildir. Kaliteli kod yazmak, bir sürecin son halkasıdır ve hiçbir zaman bitmez. Kaliteli kod, iyi algoritmadır. İyi algoritmada farklı düşünebiliyor olmandır. Basitçe anlatmak gerekirse, bir bardağın masadan alınıp, mutfağa konması işleminde, önce bardak var mı? Varsa hangi bardak? Alınacak bardak erişebileceğim yerde mi? Gibi soruları sorabilmendir. Bu düşünce yapısını benimsedikten sonra ancak, iyi bir yazılım uzmanı olunabileceğini düşünüyorum. Kısacası yazılım uzmanı bu süreci takip eden, kodlayan ve kodlanmasına yardımcı olan kişidir. Yazılımda kod yazmadan önce, yazılımcı gibi düşünebilmek gerekmektedir. Youtube ve forum siteleri sana genelde kodun doğru kullanımı aşamasında yardımcı olacaktır. Algoritma kurma becerisini zamanla kendin geliştireceksin ya da örnek aldığın kişilerin sorun çözümlerine hangi sorularla yaklaştıklarını inceleyeceksin. Sektördeki en iyi kişiler bile, bir yıl önceki yazdıkları kodu beğenmemektedir. Çünkü aynı işi daha basit, daha hızlı, daha akıllıca yapabilecekleri algoritmaları geliştirmişlerdir. Konuyu toparlamak gerekirse, yazılım uzmanı olabilmek için, doğru düşünmeyi, doğru sorular sorabilmeyi, kullanılacak teknolojilerin sınırlarını tanımanı ve forumlarda aktif olarak sorular sormanı tavsiye ederim. Amacın yazılımı uzmanı olmak istiyorum değil, belirlediğin bir yazılım projesini tamamlamak olsun. Bu projeler üst üste biriktiğinde, farklı deneyimler edindiğinde, yazılım uzmanı olabilirsin. Belli bir eğitimden çıkarak, direk ben yazılım uzmanı oldum diyen kimse görmedim. Zaten işin içine girince, kendine uzman demek çok zor bir hal alıyor. Öğrendiğin tek şey ne kadar az bildiğin oluyor ve UZMAN kelimesi artık öğrenilecek çok bir şey kalmadığı anlamına geliyor :) Açıkçası uzman olmak çok zor abi, 15 yıldır işin içindeyim hala kendime uzman sıfatını yakıştıramıyorum :)
  • Paylaş
Sonraki Soru
HESAP OLUŞTUR

İstatistikler

342 Görüntülenme6 Takipçi3 Yanıt