yandexmetrica

Yazılım Mühendisiyiz Biz

Bugünün ve Yarının Mesleği


Yazılım Mühendisliği

Yazılım Mühendisliği Nedir?



Yazılım Mühendisliği, müşterinin ihtiyaç̧larını karşılayan, öngörülmüş bütçe ile zamanında teslim edilen ve hatasız bir yazılım geliş̧tirmek iç̧in teknik yö̈ntemler öngören bir mü̈hendislik disiplindir.

    Tarihsel gelişim açısından bakıldığında
    1950'ler ve 1960'larda yazılım mühendisliği sadece programcılık olarak ele alınmış̧tır."Yazılım Krizi" ifadesi ilk olarak 1968’de bir NATO Konferansında dile getirilmiştir.1990’lara kadar büyük projelerde başarı oranı çok düşük kalmış.
    Hedef: Yazılım Krizini çözmek...     1960'lardan itibaren yazılım ürünlerine artan talepler karşısında otomasyonu da içeren değişik çözümler uygulandıysa da yeterli üretim kapasitesine eriş̧ilemedi. Bu yetersizlik, "yazılım krizi" sö̈ylemiyle dünya literatüründe yerini aldı.
    Yazılım krizinin temel sebebi, üstel olarak artan talebe karşılık doğ̆rusal hızla artış̧ gösteren üretim kapasitesidir. Diğ̆er yandan yazılım projelerindeki baş̧arısızlık oranı da şaşırtıcı derecede yüksek olup bu krizi beslemektedir. Yazılım Mühendisliği kavramının ortaya çıkışında rol alan problemler;
• Ürünün geç teslim edilmesi.
• Öngörülen bütçeyi aş̧mak.
• Müşterinin ihtiyaçlarını tam manasıyla karş̧ılayamamak.

• Yazılım Gereksinim
• Yazılım Tasarım
• Yazılım Gerçekleştirme
• Yazılım Test
• Yazılım Bakım
• Yazılım Mühendislik Yönetimi
• Yazılım Konfigürasyon Yönetimi<
• Yazılım Mühendisliği Süreçleri
• Yazılım Mühendisliği Araç ve Yöntemleri
• Yazılım Kalitesi

Yazılım ürünü, müşterinin beklediği işlevsellik ve performansın yanı sıra, aşağıdaki özellikleri de taşımalıdır.
• Bakım Yapılabilirlik ("maintainability"): Yazılım, değişen ihtiyaçlara göre değişebilir olmalıdır.
• Güvenilirlik ("dependability"): Yazılım güvenilir olmalıdır.
• Etkinlik ("efficiency"): Yazılım sistem kaynaklarının israfına neden olmamalıdır.
• Kabul Edilebilirlik ("acceptability"): Yazılım, kullanıcıları tarafından kabul edilebilmelidir. (Diğer bir deyişle; anlaşılabilir ve kullanılabilir olmalı, diğer sistemlerle uyumlu çalışabilmelidir.

• Yazılım mühendisliği uygulamaya dayalı bir bilim dalıdır.
• Yazılım mühendisleri:
    Proje yönetimi ve planlamadan, sistem analizi ve tasarımından, kodlamadan ve yazılım testlerinden, yazılım ile ilgili bütün dokümantasyonlardan, kullanıcıların eğitiminden ve sistemin bakımından sorumludurlar.
    Yazılım mühendisi toplumun isteklerine karşı duyarlı olmalı ve toplumun yararını da gözeterek çalışmalarını sürdürmelidir.
    Yazılım mühendisi, müşterileri ve işverenlerine karşı sorumluluk sahibi ve her ikisi ile de iyi ilişkiler içerisinde olmalıdır. Müşteri ve çalıştığı işyerinin haklarını gözetmelidir.
    Yazılım mühendisleri öncelikle ürün geliştirmeye odaklanmakla beraber yazılımların maliyet analizi, zaman planlaması, bütünlüğü, verilerin gizliliği ve kalitesinden birinci derecede sorumludurlar.
    Yazılım mühendisi kanunlara ve mülkiyet haklarına aykırı hareket etmemeli, kullanıcı ve kurumun yasal haklarını da gözetmelidir.

    Bir yazılımın geliştirilmesi ve bakımı süresince icra edilen adımlar topluluğuna yaşam–döngü modeli denir.
Yazılım sektöründe yaygın olarak kullanılan yazılım yaşam-döngü modelleri: • Çağlayan Yaşam-Döngü Modeli
• Kodla ve Düzelt Yaşam-Döngü Modeli
• V Süreç Modeli
• Helezonik (Spiral) Model
• Evrimsel Geliştirme Yaşam-Döngü Modeli
• Artırımsal Geliştirme Yaşam-Döngü Modeli
    Yazılım yaşam-döngüsü herhangi bir yazılımın üretim ve kullanım aşaması birlikte olmak üzere geçirdiği tüm aşamalar olarak tanımlanır.
    Yazılım yaşam-döngüsü, yazılım işlevleri ve ihtiyaçları sürekli değiştiği ve geliştiği için mutlaka bir döngü biçiminde düşünülmelidir. Tek yönlü yani doğrusal olarak kesinlikle düşünülmemelidir.

    Teoride yazılım geliştirme, bir işe sıfırdan başlayarak, gereksinimler, analiz, tasarım ve gerçekleştirme adımlarının doğrusal olarak tanımlanmasıyla gerçekleşmektedir.
Pratikte yazılım geliştirme iki nedenden dolayı oldukça farklıdır. Bu nedenler;
• Yazılım geliştiricileri sonuçta insandır ve hata yapabilirler.
• Yazılım ürünü geliştirilirken, müşterinin gereksinimleri değişebilir.
  – Değişen hedef problemi...

Yazılım Yaşam Döngüsü Temel Adımları

  Gereksinim: Müşteri gereksinimlerinin elde edildiği ve fizibilite çalışmasının yapıldığı aşamadır.
  Analiz: Sistem gereksinimlerinin ve işlevlerinin ayrıntılı olarak incelendiği aşamadır. Var olan işler incelenir, temel sorunlar ortaya çıkarılır.
  Tasarım: Belirlenen gereksinimlere yanıt verecek yazılım sisteminin temel yapısının oluşturulduğu aşamadır.
Mantıksal tasarım; önerilen sistemin yapısı (modüller, akış şemaları...)
  Fiziksel tasarım: yazılımı içeren bileşenler ve bunların ayrıntıları (veri yapıları, ekran tasarımları...)
  Gerçekleştirme: Modüllerin kodlandığı, birleştirildiği test edildiği ve kurulum çalışmalarının yapıldığı aşamadır.
  Bakım: Hata giderme ve yeni eklentilerin eklendiği aşamadır (teslimden sonra).

    Yazılım geliştirme süreçlerinin en önemli adımları gereksinim ve analizdir.
    Gereksinim mühendisliği; müşterinin bir yazılımdan beklentilerini, operasyonel ve geliştirme esnasındaki kısıtları da dikkate alarak ortaya koyma ve gereksinimleri belgeleme işlemlerini sistematik olarak yapabilme disiplinidir.
    Sistem gereksinimleri tam ve doğru olarak ortaya konulamaz ise, daha sonrak süreçlerde bu aşamadan dolayı ortaya çıkacak problemlerin maliyeti göreceli olarak artacak ve ortaya çıkan yazılım kaynaklar açısından verimli olmayacaktır.
Bu sürecin mühendislik şeklinde ifade edilmesinin nedeni ise gereksinimleri elde etme esnasında ve analiz işlemlerinde siste- matik yaklaşımların yer almasıdır.
    Yazılım projelerinde hataların sayısı ve maliyeti arttıkça proje planına uygun olarak tam zamanında tamamlanan proje sayısı da gittikçe düşmektedir.
  − Sistematik yaklaşımların kullanılmaması nedeniyle bir çok proje zaman aşımına uğrayarak geç tamamlanabilmekte veya yarıda kalmaktadır.
    Gereksinimlerin yönetilmesi ve süreç olarak tanımlanması sonucu hata ve maliyet miktarları düşmekte, elde edilen somut veriler ışığında yazılım ön- kestirimlerindeki doğruluk yüzdeleri yükselmektedir.
    Gereksinim mühendisliği yazılım geliştirme sürecinin başında olması nedeniyle bundan sonraki tüm süreçleri de doğrudan etkilemektedir.
    Müşterinin gereksinimlerini doğru almak ve analiz etmek, projenin tamamlanmasında en önemli kriterdir.
Proje yönetiminde gereksinim mühendisliği süreçlerine yeterli zaman ve kaynak ayrılması, başarının anahtarı olacaktır.

    Yazılım testi, bir sistem veya uygulamanın denetlenebilir koşullar altında işletilmesi (veya çalıştırılması) ve elde edilen sonuçların değerlendirilmesidir.
    Yazılım testi, bir yazılımın sonsuz sayıdaki çalışma alanından, sınırlı sayıda ve uygun şekilde seçilmiş testler ile belirlenmiş gereksinimleri karşıladığının doğrulanması veya beklenen ile gözlenen sonuçlar arasındaki farkların belirlenmesini amaçlar. Bu süreçte dikkat edilmesi gereken durumları kısaca özetleyecek olursak ;
  − Yazılım mutlaka çalıştırılarak test edilmelidir.
  − Yazılımın çalışma alanlarının tümünün testi imkansız olacağından; kritiklik düzeylerine göre sıralanıp, yeterli görülen sayıda, en kritikleri test edilmelidir.
  − Yazılımın, kullanıcı beklentilerine, gereksinimlerine ve akla uygun, mantıklı beklentilere cevap verebildiği test edilmelidir.

Test Neden Gereklidir?

    İnsanlar hata yaparlar, bu hatalar kodda, yazılımda,sistemde ya da dokümanda "defect" oluşturur.
  − "Defect" olan kod çalıştırıldığında sistem beklenen fonksiyonları gerçekleştiremez ve başarısız olur.
Bu sebeplerden dolayı;
  − müşteriye sunmadan önce ürün kalitesinden emin olmak,
  − yeniden çalışma (düzeltme) ve geliştirme masraflarını azaltmak,
  − geliştirme işleminin erken aşamalarında yanlışları saptayarak ileri aşamalara yayılmasını önlemek, böylece zaman ve maliyetten tasarruf sağlamak amaçlarıyla ürün müşteriye sunulmadan önce test edilmesi gerekmektedir.

"Hatayı erken bulmak testin en önemli amacıdır."

Üniversite Fakülte Bölüm Puan Türü Kont. Yerl. Taban Puan Tavan Puan
BAHÇEŞEHİR ÜNİVERSİTESİ (İSTANBUL) Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 8 8 421,27135 475,44124
İZMİR EKONOMİ ÜNİVERSİTESİ Mühendislik ve Bilgisayar Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 5 5 410,94075 438,62286
IŞIK ÜNİVERSİTESİ (İSTANBUL) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 1 1 386,16037 386,16037
İSTANBUL AYDIN ÜNİVERSİTESİ Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 5 5 380,94290 418,07976
YAŞAR ÜNİVERSİTESİ (İZMİR) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 5 5 376,89356 403,42203
ATILIM ÜNİVERSİTESİ (ANKARA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 4 4 373,29848 407,50897
MALTEPE ÜNİVERSİTESİ (İSTANBUL) Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 4 4 370,80749 377,61440
BEYKENT ÜNİVERSİTESİ (İSTANBUL) Mühendislik-Mimarlık Fakültesi Yazılım Mühendisliği (Tam Burslu) MF-4 6 6 364,10853 374,26640
İZMİR ÜNİVERSİTESİ Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 5 5 363,04339 372,34846
İZMİR EKONOMİ ÜNİVERSİTESİ Mühendislik ve Bilgisayar Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 7 7 357,41916 391,13981
İSTANBUL SABAHATTİN ZAİM ÜNİVERSİTESİ Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (Tam Burslu) MF-4 4 4 354,70493 381,64465
DOĞU AKDENİZ ÜNİVERSİTESİ (KKTC-GAZİMAĞUSA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 2 2 314,22515 341,27079
CELÂL BAYAR ÜNİVERSİTESİ (MANİSA) Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği MF-4 44 44 313,39398 379,18700
TOROS ÜNİVERSİTESİ (MERSİN) Mühendislik Fakültesi Bilgisayar ve Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 10 10 302,87970 340,28759
İZMİR EKONOMİ ÜNİVERSİTESİ Mühendislik ve Bilgisayar Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (UOLP-SUNY Fredonia) (Ücretli) MF-4 1 1 295,44807 295,44807
KARADENİZ TEKNİK ÜNİVERSİTESİ (TRABZON) Of Teknoloji Fakültesi Yazılım Mühendisliği MF-4 44 44 291,15704 363,19909
CELÂL BAYAR ÜNİVERSİTESİ (MANİSA) Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği (İÖ) MF-4 44 44 289,06578 372,32003
YAŞAR ÜNİVERSİTESİ (İZMİR) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 35 35 286,12564 356,16823
İSTANBUL SABAHATTİN ZAİM ÜNİVERSİTESİ Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (%75 Burslu) MF-4 24 24 280,78827 337,47525
KARADENİZ TEKNİK ÜNİVERSİTESİ (TRABZON) Of Teknoloji Fakültesi Yazılım Mühendisliği (KKTC Uyruklu) MF-4 1 1 278,60205 278,60205
BAHÇEŞEHİR ÜNİVERSİTESİ (İSTANBUL) Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 60 60 271,63669 413,08422
BAHÇEŞEHİR ÜNİVERSİTESİ (İSTANBUL) Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (Ücretli) MF-4 10 10 266,93170 379,98269
CELÂL BAYAR ÜNİVERSİTESİ (MANİSA) Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği (KKTC Uyruklu) MF-4 1 1 265,77723 265,77723
CELÂL BAYAR ÜNİVERSİTESİ (MANİSA) Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği (M.T.O.K.) MF-4 19 19 262,39125 305,61111
YAKIN DOĞU ÜNİVERSİTESİ (KKTC-LEFKOŞA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 3 3 261,50612 287,78678
İZMİR ÜNİVERSİTESİ Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 20 20 260,53478 322,46108
KARADENİZ TEKNİK ÜNİVERSİTESİ (TRABZON) Of Teknoloji Fakültesi Yazılım Mühendisliği (M.T.O.K.) MF-4 19 19 259,07583 288,50360
YAŞAR ÜNİVERSİTESİ (İZMİR) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%25 Burslu) MF-4 10 10 257,28466 283,31532
FIRAT ÜNİVERSİTESİ (ELAZIĞ) Mühendislik Fakültesi Yazılım Mühendisliği MF-4 62 62 256,38080 323,59765
ATILIM ÜNİVERSİTESİ (ANKARA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 32 32 256,20052 311,68754
FIRAT ÜNİVERSİTESİ (ELAZIĞ) Teknoloji Fakültesi Yazılım Mühendisliği MF-4 66 66 252,66716 289,70799
CELÂL BAYAR ÜNİVERSİTESİ (MANİSA) Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği (M.T.O.K.) (İÖ) MF-4 19 19 249,38357 260,82780
LEFKE AVRUPA ÜNİVERSİTESİ (KKTC-LEFKE) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Tam Burslu) MF-4 4 4 248,85131 281,25452
İSTANBUL AYDIN ÜNİVERSİTESİ Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 45 45 244,55035 340,67281
İSTANBUL SABAHATTİN ZAİM ÜNİVERSİTESİ Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (%50 Burslu) MF-4 12 12 244,39682 280,44622
ATILIM ÜNİVERSİTESİ (ANKARA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%25 Burslu) MF-4 4 4 243,82482 252,85992
FIRAT ÜNİVERSİTESİ (ELAZIĞ) Teknoloji Fakültesi Yazılım Mühendisliği (İÖ) MF-4 66 66 242,87370 301,64184
İZMİR EKONOMİ ÜNİVERSİTESİ Mühendislik ve Bilgisayar Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (%25 Burslu) MF-4 32 32 242,86233 349,90890
FIRAT ÜNİVERSİTESİ (ELAZIĞ) Teknoloji Fakültesi Yazılım Mühendisliği (M.T.O.K.) MF-4 28 28 242,58776 252,20574
IŞIK ÜNİVERSİTESİ (İSTANBUL) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 10 10 240,16782 323,05313
MALTEPE ÜNİVERSİTESİ (İSTANBUL) Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 12 12 239,60902 305,03014
FIRAT ÜNİVERSİTESİ (ELAZIĞ) Teknoloji Fakültesi Yazılım Mühendisliği (M.T.O.K.) (İÖ) MF-4 28 28 234,82945 242,51704
LEFKE AVRUPA ÜNİVERSİTESİ (KKTC-LEFKE) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 21 1 229,97088 229,97088
DOĞU AKDENİZ ÜNİVERSİTESİ (KKTC-GAZİMAĞUSA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 10 1 228,85633 228,85633
İZMİR ÜNİVERSİTESİ Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%25 Burslu) MF-4 20 20 228,08003 258,97057
TOROS ÜNİVERSİTESİ (MERSİN) Mühendislik Fakültesi Bilgisayar ve Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 20 20 225,86412 285,90651
BEYKENT ÜNİVERSİTESİ (İSTANBUL) Mühendislik-Mimarlık Fakültesi Yazılım Mühendisliği (%50 Burslu) MF-4 54 54 224,44892 330,87810
İZMİR EKONOMİ ÜNİVERSİTESİ Mühendislik ve Bilgisayar Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (Ücretli) MF-4 10 10 220,20333 238,25976
FIRAT ÜNİVERSİTESİ (ELAZIĞ) Teknoloji Fakültesi Yazılım Mühendisliği (İngilizce) (UOLP-Sam Houston State) (Ücretli) MF-4 40 28 218,85060 305,40889
İZMİR ÜNİVERSİTESİ Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Ücretli) MF-4 5 5 217,43374 228,53467
YAKIN DOĞU ÜNİVERSİTESİ (KKTC-LEFKOŞA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%75 Burslu) MF-4 10 3 202,89044 233,52574
MALTEPE ÜNİVERSİTESİ (İSTANBUL) Mühendislik ve Doğa Bilimleri Fakültesi Yazılım Mühendisliği (İngilizce) (%25 Burslu) MF-4 17 7 202,60516 239,50274
DOĞU AKDENİZ ÜNİVERSİTESİ (KKTC-GAZİMAĞUSA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (Ücretli) MF-4 5 0 YOK YOK
TOROS ÜNİVERSİTESİ (MERSİN) Mühendislik Fakültesi Bilgisayar ve Yazılım Mühendisliği (İngilizce) (Ücretli) MF-4 10 0 YOK YOK
YAKIN DOĞU ÜNİVERSİTESİ (KKTC-LEFKOŞA) Mühendislik Fakültesi Yazılım Mühendisliği (İngilizce) (%50 Burslu) MF-4 17 0 YOK YOK

    Mesleğin eğitimine girebilmek için; Lise veya dengi okul mezunu olmak, Yükseköğretim Geçiş Sınavı (YGS) ve Lisans Yerleştirme Sınavına (LYS) girerek yeterli "MF-4" puanı almak, Öğrenci Seçme Yerleştirme Merkezi (ÖSYM) Tercih bildirim formunda "Üretim Mühendisliği" lisans programı ile ilgili en az bir yüksek öğretim programını tercih etmek gerekmektedir.
    Bu yükseköğretim programında öğrenim görmek isteyen adaylar liselerin Fen, Fen Bilimleri, Klasik Fen, Matematik ve Tabii Bilimler alanlarından mezun iseler YGS ve LYS sonuçlarına göre ÖSYM tarafından yapılan yerleştirme işleminde diğer alanlardan mezun olanlara göre daha yüksek bir ağırlıklı puan elde etmekte ve öncelikle yerleştirilmektedirler. (Kılavuz Tablo 3A)
    Ancak kendi alan/kol/bölümleri dışında bir yükseköğretim programını tercih eden adayların yerleşme şansları azalmaktadır.
    Bilgi Güvenliği Teknolojisi, Bilgi Teknolojileri, Bilgisayar, Bilgisayar Donanımı, Bilgisayar Operatörlüğü, Bilgisayar Operatörlüğü ve Teknikerliği, Bilgisayar Programcılığı, Bilgisayar Teknolojisi, Bilgisayar Teknolojisi ve Programlama, Bilgisayar ve Enformasyon Sistemleri, Bilişim ve İletişim Teknolojisi, İnternet ve Ağ Teknolojileri, ön lisans programını başarı ile bitirenler ÖSYM tarafından açılan Dikey Geçiş Sınavında başarılı oldukları takdirde Yazılım Mühendisliği lisans programına dikey geçiş yapabilirler.

    Çoğunlukla özel sektörde olmakla birlikte, kamu sektöründe de çalışmaktadırlar. Fikir üretimine dayalı bir iş olduğundan, parasal olarak fazla sermayeye ihtiyaç duyulmadığından yeni fikirler üretebilen yazılım mühendislerinin kendi işlerini kurma olanakları da mevcuttur. Yeni mezunlar genellikle ilk yıllarda programcı olarak görev alarak genel işleyişlerle ilgili tecrübe sahibi olurlar. Günümüzde birçok mühendislik mezunu yazılım mühendisliğinin eğitimini almamalarına rağmen bu mesleği sürdürmeye çalışmaktadır. Ancak, konularında yetkin kişilerin bu alanda çalışmalarına verilen önem hergeçen gün artmaktadır. Bilgisayar kullanımının yaygınlaşmasına paralel olarak kendini yenileyebilen yazılım mühendislerine büyük ihtiyaç vardır.
    Meslek eğitimi süresince kazanç söz konusu değildir. Ancak, koşulları uyan öğrencilerin Yüksek Öğrenim Kredi ve Yurtlar Kurumu'nca verilen krediden yararlanması mümkündür. Ayrıca başarılı öğrenciler burs alabilmektedir.
    Yazılım mühendisleri kamu kurum ve kuruluşlarında işe başlamaları halinde 657 sayılı Devlet Memurları Kanunu ya da 4857 sayılı İş Kanunu kapsamında devlet tarafından belirlenen ücret ile çalıştığı kurum için belirlenen tazminat ve mesai ücretini alırlar. Ücretleri asgari ücretin en az 4 katı kadardır. Özel Sektörde ise tecrübe ve çalışma süresine göre ücret değişikliği söz konusudur.
    Yazılım Mühendisleri lisans eğitiminden sonra akademik kariyer yapabilirler. Çalıştıkları kurum ve kuruluşlarda, mesleklerindeki gelişime ve verimliliklerine paralel olarak yönetim kademelerine yükselebilirler. Kendi işlerini kurabilirler.

İyi Bir Yazılım Mühendisi


Çalışkandır.

İyi değil en iyi olmak için uğraşır.

Zekidir.

Araştırır, bulur ve geliştirir.

Mantıklıdır.

Neyi nerede kullanacağını yapacağını bilir.

Moderndir.

Teknolojiyle birlikte ilerler, kendini geliştirir.

Ahlaklıdır.

Kurallara uyar, çevresine saygılı ve dürüsttür.

Girişimcidir.

Etrafına farklı bir bakış açısıyla bakarken görüp tespit ettiği fırsatları değerlendirir.


En Ünlü Yazılım Mühendislerinden Bazıları Diyor ki...


"Yeteneklerini kullanarak başarılı olan insanlarla bir sorunum yok, sadece başarının en üst hedef olmadığını düşünüyorum. Özgürlük, bilginin paylaşılması/genişlemesi başarının, kişiselliğin ötesinde şeyler. Kişisel başarı yanlış değil ama etkisi sınırlanmış, eğer gerektiği kadarını elde ettiyseniz hala bunun için açlık duymak ayıp, tabii doğruluk, güzellik ve adalet için durum tam tersi."


Richard Stallman

Özgür yazılım hareketinin kurucusu
Kişisel Web Sayfası

"UNIX temelde basit bir sistemdir, ama basitliği anlamak için dahi olmanız gerekir.
Her zaman daha iyisi için C gereklidir."


Dennis Ritchie

C programlama dili ve Unix işletim sisteminin yaratıcısı,geliştiricisi
Kişisel Web Sayfası

"Küçük bir grup düşünceIi, kendini adamış yurttaşIarın dünyayı değiştirebiIcekIerinden şüpheniz oImasın. AsIına bakarsanız, dünyayı değiştiren tek şey bu."


Margaret Hamilton

1969 Apollo11 uzay aracının 145,000 assembly kodunu yazan kadın yazılım mühendisi
Daha Fazla Bilgi

"Siz de insanların insan olduğu ve kendi aygıt sürücülerini yazdıkları günlerin özlemini çekmiyor musunuz?"


Linus Torvalds

Linux işletim sistemi çekirdeğinin geliştiricisi ve proje yöneticisi
Kişisel Web Sayfası

"Steve Jobs dahiydi ama her zaman için çok hoş bir adam değildi. İnsanlar onu her iki niteliğiyle de hatırlayacak".


Steve Wozniak

Steve Jobs ile birlikte Apple şirketinin kurucularından
Kişisel Web Sayfası

"Ben bazı derslerin sınavlarını geçemedim; ama arkadaşım hepsini geçti. O şimdi Microsoft'ta başarılı bir mühendis, ben Microsoft'un sahibiyim."


Bill Gates

Microsoft'un Kurucusu
Kişisel Web Sayfası

"Fikrinizi geliştirebilmek için 100 insan çalıştıran bir şirkete ihtiyacınız yok"


Larry Page - Sergey Brin

Google Kurucuları
Google

"İlerleyen zaman içerisinde her yıl, kendime dünyaya yönelik ilgilerimi genişletecek ve kendime daha büyük bir disiplin öğretecek bir hedef koymaktayım."


Mark Zuckerberg

Facebook Kurucusu
Facebook Sayfası

Amerikalı yazılım mimarı ve işadamı. Birçok kişi tarafından Twitter ve bir mobil ödeme şirketi olan Square'un kurucusu kimliği ile tanınır. 2008'de MIT Technology Review tarafından "35 yaşın altındaki en yenilikçi 35 kişi" den biri seçildi.


Jack Dorsey

Twitter Kurucusu ve CEO'su
Twitter

Popüler Programlama Dilleri







C, AT&T Bell laboratuvarlarında, Ken Thompson ve Dennis Ritchie tarafından UNIX İşletim Sistemi' ni geliştirebilmek amacıyla B dilinden türetilmiş yapısal bir programlama dilidir.





C++, Bell Laboratuvarlarından Bjarne Stroustrup tarafından 1979 yılından itibaren geliştirilmeye başlanmış, C'yi kapsayan ve çok paradigmalı, yaygın olarak kullanılan, genel amaçlı bir programlama dilidir. İlk olarak C With Classes (Sınıflarla C) olarak adlandırılmış, 1983 yılında ismi C++ olarak değiştirilmiştir.





C#, Microsoft'un geliştirmiş olduğu yeni nesil programlama dilidir. Yine Microsoft tarafından geliştirilmiş .NET Teknolojisi için geliştirilmiş dillerden biridir.Microsoft tarafından geliştirilmiş olsa da ECMA ve ISO standartları altına alınmıştır.





Java, Sun Microsystems mühendislerinden James Gosling tarafından geliştirilmeye başlanmış açık kodlu, nesneye yönelik, zeminden bağımsız, yüksek verimli, çok işlevli, yüksek seviye, adım adım işletilen (yorumlanan-interpreted) bir dildir.





Python, nesne yönelimli, yorumlamalı, birimsel(modüler) ve etkileşimli yüksek seviyeli bir programlama dilidir.Girintilere dayalı basit sözdizimi, dilin öğrenilmesini ve akılda kalmasını kolaylaştırır. Bu da ona söz diziminin ayrıntıları ile vakit yitirmeden programlama yapılmaya başlanabilen bir dil olma özelliği kazandırır.





Ruby, nesneye yönelik, dinamik, reflektif bir programlama dilidir. Ruby dili, Yukihiro Matsumoto tarafından Japonya'da tasarlanmaya ve geliştirilmeye başlanmıştır.Sözdizimi olarak, Ada, Perl, Smalltalk, Lisp, Eiffel gibi programlama dillerinden etkilenen Ruby; Python ile kimi ortak sözdizimi özelliklerine sahiptir.





JavaScript, yaygın olarak web tarayıcılarında kullanılmakta olan dinamik bir programlama dilidir. JavaScript ile yazılan istemci tarafı betikler sayesinde tarayıcının kullanıcıyla etkileşimde bulunması, tarayıcının kontrol edilmesi, asenkron bir şekilde sunucu ile iletişime geçilmesi ve web sayfası içeriğinin değiştirilmesi gibi işlevler sağlanır. JavaScript, Node.js gibi platformlar sayesinde sunucu tarafında da yaygın olarak kullanılmaktadır.





Cascading Style Sheets (Basamaklı Stil Şablonları ya da Basamaklı Biçim Sayfaları, bilinen kısa adıyla CSS), HTML'e ek olarak metin ve format biçimlendirme alanında fazladan olanaklar sunan bir Web teknolojisidir.İnternet sayfaları için genelgeçer şablonlar hazırlama olanağı verdiği gibi, bağımsız olarak harflerin stilini, yani renk, yazı tipi, büyüklük gibi özelliklerini değiştirmek için de kullanılabilir. Bu tekniğin en önemli özelliği kullanımındaki esnekliktir.





Hiper Metin İşaretleme Dili (İngilizce Hypertext Markup Language, ks. HTML) web sayfalarını oluşturmak için kullanılan standart metin işaretleme dilidir. Dilin son sürümü HTML5'tir.HTML, bir programlama dili olarak tanımlanamaz. Zira HTML kodlarıyla kendi başına çalışan bir program yazılamaz. Ancak bu dili yorumlayabilen programlar aracılığıyla çalışabilen programlar yazılabilir. Programlama dili denilememesinin nedeni tam olarak budur.





jQuery, John Resig tarafından 2006 yılında geliştirilmiş ve şu an geniş bir jQuery ekibi tarafından gelişimi sürdürülen bir açık kaynak JavaScript kütüphanesidir.jQuery en popüler çapraz-platform JavaScript kütüphanesi ya da farklı bir JavaScript web geliştirme çatısıdır denebilir. jQuery yoğun olarak animasyonlarda kullanılır. Flash'ın alternatifi olarak kullanılan bu teknolojiyle Flash galeri, Tab menü, Sayfa geçişleri gibi birçok işlem yapılmaktadır.





PHP : Hypertext Preprocessor(Üstünyazı Önişlemcisi) Aslen: Personal Home Page - Kişisel Ana Sayfa,internet için üretilmiş, sunucu taraflı, çok geniş kullanımlı, genel amaçlı, HTML içerisine gömülebilen betik ve programlama dilidir.İlk kez 1995 yılında Rasmus Lerdorf tarafından yaratılan PHP'nin geliştirilmesi bugün PHP topluluğu tarafından sürdürülmektedir.Ocak 2013 itibariyle 244 milyondan fazla web sitesi PHP ile çalışırken, 2.1 milyon web sunucusunda PHP kurulumu bulunmaktadır.





ASP.NET, Microsoft tarafından geliştirilmiş bir web uygulama gelişimi teknolojisidir. Özdevinimli (dinamik) web sayfaları, web uygulamaları ve XML tabanlı web hizmetleri geliştirilmesine olanak sağlar.Her ne kadar isim benzerliği olsa da ASP.NET, ASP'ye oranla çok ciddi bir değişim geçirmiştir.Yazılımcılar .Net çatısı tarafından desteklenen tüm dilleri ASP.NET uygulamaları geliştirmek için kullanabilirler. Yani, Java teknolojisinde olduğu gibi, yazılımcı tarafından yazılan kod, çalıştırılmadan önce sanal bir yazılım katmanı tarafından ortak bir dile çevirilmektedir.

Yazılım Mühendisiyiz Biz


Manisa Celal Bayar Üniversitesi

Yazılım Mühendisleri Yerleşkesi
Hasan Ferdi Turgutlu Teknoloji Fakültesi
Turgutlu/Manisa

(0236)314 10 10
mail@yazilimmuhendisiyiz.biz

Bize Ulaşın


Yanıtlamaktan, yardımcı olabilmekten mutlu olacağımıza emin olabilirsiniz.