Yazılım Projeleri: Portfolyoya Eklenecek Seviyeye Göre 20 Proje Fikri
Yayın: · Son güncelleme:
· 8 dk okumaKısaca
Portfolyo için en iyi yazılım projeleri, seviyenize uygun, bitmiş, yayında ve size ait olan projelerdir. Başlangıçta komut satırı araçları ve küçük oyunlar, orta seviyede veritabanı ve API kullanan web uygulamaları, ileri seviyede ise kullanıcı girişi, test ve yayın süreci olan tam ürünler önerilir.

İçindekiler
- Proje seçerken neye bakılır?
- Başlangıç seviyesi: 7 proje fikri
- Kodlama ile oyun yapma: küçükten başlamak
- Orta seviyede hangi projeler yapılır?
- Kodlama örnekleri ile proje arasındaki fark
- İleri seviye için 6 tam ürün önerisi
- Yapay zekâ özellikli proje fikirleri
- Bir projeyi nasıl planlarsınız?
- Yazılım fikirleri tükendiğinde ne yapılır?
- Projeyi bir ekiple yapmak
- Bitmiş projeyi işverene nasıl sunarsınız?
- Bu hafta hangi projeyle başlamalısınız?
Portfolyo için en iyi yazılım projeleri, seviyenize uygun, bitmiş, yayında ve size ait olan projelerdir. Başlangıç seviyesinde komut satırı araçları ve küçük oyunlar, orta seviyede veritabanı ve dış veri kullanan web uygulamaları, ileri seviyede ise kullanıcı girişi, test ve yayın süreci olan tam ürünler önerilir. Her projenin size hangi beceriyi kazandırdığını bilmek, hangisini seçeceğinize karar vermeyi kolaylaştırır.
Aşağıda üç seviyeye ayrılmış 20 proje fikrini, her birinin öğrettiği beceriyle birlikte bulacaksınız. Ardından bir projeyi nasıl seçeceğinizi, kapsamı nasıl küçük tutacağınızı ve bitmiş bir projeyi işverene nasıl sunacağınızı anlatıyoruz.
Proje seçerken neye bakılır?
İyi bir proje, mevcut seviyenizin biraz üstünde olan ve bitirilebilir büyüklükteki projedir. Çok kolay bir proje yeni bir şey öğretmez; çok büyük bir proje ise yarıda kalır. Yarım kalmış bir proje, portfolyoda hiç olmamasından daha iyi bir sinyal vermez.
Seçim yaparken üç soru sorun.
Bu proje bana hangi yeni beceriyi öğretecek? İki ila dört hafta içinde ilk çalışan sürümü çıkarabilir miyim? Hedeflediğim iş ilanlarında bu beceri isteniyor mu? Üç soruya da evet diyebiliyorsanız proje uygundur.
Kendi kullanacağınız bir araç yapmak motivasyonu artırır. Bir kulübün etkinlik listesi, ailenizin market alışveriş listesi ya da kendi kitap okuma takibiniz, gerçek bir kullanıcısı olan projeye dönüşür. Gerçek kullanıcı, gerçek geri bildirim demektir. Uygulamanızı kullanan tek bir kişinin bile söylediği "şu düğmeyi bulamadım" cümlesi, size bir kursun öğretemeyeceği şeyi öğretir.
Başlangıç seviyesi: 7 proje fikri
Başlangıç seviyesi projeleri, temel kavramları birleştirmeyi öğretir: değişken, koşul, döngü, fonksiyon ve basit veri yapıları. Bu projeler genellikle tek dosyadan oluşur ve komut satırında ya da çok basit bir arayüzde çalışır. Amaç, bir programı baştan sona kendi başınıza yazabildiğinizi görmektir.
| No | Proje | Öğrettiği beceri |
|---|---|---|
| 1 | Sayı tahmin oyunu | Döngü, koşul, kullanıcı girdisi |
| 2 | Not ortalaması hesaplayıcı | Liste, fonksiyon, hesaplama |
| 3 | Yapılacaklar listesi (komut satırı) | Listeye ekleme ve silme, dosyaya kaydetme |
| 4 | Basit harcama takipçisi | Dosya okuma-yazma, kategoriye göre toplama |
| 5 | Adam asmaca | Metin işleme, oyun döngüsü |
| 6 | Birim dönüştürücü | Fonksiyonlar, girdi doğrulama |
| 7 | Kişisel tanıtım sayfası | HTML, CSS, sayfa yapısı, yayına alma |
Bu listede yapılacaklar listesi ve harcama takipçisi en öğretici olanlardır, çünkü veriyi bir dosyada kalıcı olarak saklamayı gerektirir. Program kapandığında verinin kaybolmaması, ileride veritabanı kavramını anlamanın ilk adımıdır.
Kodlama ile oyun yapma: küçükten başlamak
Kodlama ile oyun yapma, temel kavramları eğlenceli biçimde çalıştırmanın iyi bir yoludur. Sayı tahmin oyunu ve adam asmaca, metin tabanlı oldukları için grafik bilgisi gerektirmez. Bir sonraki adım olarak yılan oyunu ya da tuğla kırma gibi basit iki boyutlu oyunlar, döngüler ve koordinatlarla çalışmayı öğretir.
Daha büyük oyunlar için bir oyun motoru öğrenmek gerekir. Oyun motoru, fizik, çizim ve ses gibi işleri hazır olarak sunar ve sizin oyun mantığına odaklanmanızı sağlar. Yapay zekâ araçlarının oyun geliştirmeye nasıl yardım edebileceğini yapay zekâ ile oyun yapmak yazısında ele aldık.

Orta seviyede hangi projeler yapılır?
Orta seviye projeler, birden çok parçanın birlikte çalışmasını öğretir: bir arayüz, bir veritabanı ve dış bir veri kaynağı. Bu projelerle ilk kez gerçek bir uygulamanın yapısını görürsünüz. Çoğu web tabanlıdır ve yayına alınabilir.
| No | Proje | Öğrettiği beceri |
|---|---|---|
| 8 | Hava durumu uygulaması | Dış bir API ile veri çekme, JSON işleme |
| 9 | Kitap ya da film takip uygulaması | CRUD işlemleri, veritabanı tasarımı |
| 10 | Bağlantı kısaltıcı | Sunucu tarafı yönlendirme, benzersiz kod üretme |
| 11 | Blog sistemi | Kullanıcı girişi, metin kaydetme, sayfalama |
| 12 | Döviz ya da birim çevirici web uygulaması | API kullanımı, form işleme, hata yönetimi |
| 13 | Kulüp etkinlik kayıt sistemi | Form, veritabanı, e-posta bildirimi |
| 14 | Basit anket uygulaması | Veri toplama, sonuçları grafikle gösterme |
Bu seviyede en sık yapılan hata, her şeyi aynı anda eklemeye çalışmaktır. Bir blog sisteminin ilk sürümünde yalnız yazı ekleme ve listeleme yeterlidir. Yorum, etiket ve arama özellikleri sonraki sürümlere bırakılabilir. Önce çalışan en küçük sürümü bitirmek, yani bir MVP çıkarmak, projenin yarıda kalmasını önler.
Kodlama örnekleri ile proje arasındaki fark
Kodlama örnekleri, tek bir kavramı göstermek için yazılmış kısa kod parçalarıdır: bir listeyi sıralamak, bir dosyayı okumak, bir API'ye istek atmak. Proje ise bu parçaları bir araya getirip gerçek bir ihtiyacı karşılayan, baştan sona çalışan bir bütündür. Kurslarda yazdığınız örnekler öğrenme için gereklidir, ama portfolyoda tek başına pek bir şey anlatmaz.
Örnekleri projeye dönüştürmenin yolu, onlara bir kullanıcı ve bir amaç eklemektir. Dosya okuma örneğini, bankadan indirdiğiniz harcama dosyasını kategorilere ayıran bir araca çevirmek; API örneğini, bulunduğunuz şehrin hava durumunu gösteren bir sayfaya dönüştürmek gibi. Bu küçük adım, bir alıştırmayı anlatılabilir bir projeye çevirir.
İleri seviye için 6 tam ürün önerisi
İleri seviye projeler, bir ürünü baştan sona yayına almayı ve sürdürmeyi öğretir. Kullanıcı yönetimi, güvenlik, test, yayın süreci ve hata izleme bu seviyede devreye girer. Bu projelerden biri, junior başvuruda portfolyonun merkezi olabilir.
| No | Proje | Öğrettiği beceri |
|---|---|---|
| 15 | Randevu yönetim sistemi | Rol bazlı yetki, takvim mantığı, çakışma kontrolü |
| 16 | Küçük işletme stok takibi | İlişkisel veritabanı, raporlama, dışa aktarma |
| 17 | Gerçek zamanlı sohbet uygulaması | Anlık iletişim, oturum yönetimi |
| 18 | Kişisel finans paneli | Veri görselleştirme, kategori analizi, güvenli veri saklama |
| 19 | İş ilanı toplayıcı | Veri çekme, zamanlanmış görevler, filtreleme |
| 20 | Mobil alışkanlık takip uygulaması | Mobil geliştirme, yerel bildirimler |
Bu seviyede projeye birim testi eklemek önemli bir fark yaratır. Junior adaylar arasında test yazan az kişi vardır ve birkaç anlamlı test, kod kalitesine önem verdiğinizi gösterir. Yayın sürecini de otomatikleştirebilirseniz, ekip ortamına hazır olduğunuza dair güçlü bir sinyal verirsiniz.
Yapay zekâ özellikli proje fikirleri
Son dönemde birçok aday, projelerine bir yapay zekâ modeliyle çalışan bir özellik eklemeyi tercih ediyor. Örneğin kişisel finans panelinde harcama açıklamalarını otomatik kategorilere ayıran bir özellik ya da blog sisteminde yazı özetini çıkaran bir buton. Bu tür özellikler genellikle bir modelin API'si üzerinden eklenir.
Burada dikkat edilecek iki nokta var. Birincisi, API anahtarınızı kodun içine yazıp herkese açık bir depoya yüklememek; anahtarı ortam değişkeninde tutun. İkincisi, yapay zekâ özelliğinin projenin tek değeri olmaması; asıl uygulama mantığını sizin yazmış olmanız beklenir. Bu yaklaşımın ayrıntıları için yapay zekâ ile uygulama yapmak yazısına bakabilirsiniz.
Bir projeyi nasıl planlarsınız?
Bir projeyi planlamak, onu küçük ve bitirilebilir parçalara bölmekle başlar. Kod yazmaya geçmeden önce kâğıda üç şey yazın: proje ne yapacak, kim kullanacak ve ilk sürümde hangi özellikler olacak. Bu üç cümle, projenin dağılmasını önler.
Örnek olarak randevu yönetim sistemini ele alalım. Hedef kullanıcının küçük bir kuaför olduğunu varsayalım. İlk sürüm için üç özellik seçilir: müşteri randevu oluşturabilir, kuaför günlük randevuları listeler, aynı saate iki randevu verilemez. Hafta hafta plan şöyle olabilir:
- Birinci hafta: Veritabanı tablolarını tasarlayın, randevu ekleme ve listeleme işlevini yazın.
- İkinci hafta: Çakışma kontrolünü ekleyin ve bunun için testler yazın.
- Üçüncü hafta: Basit bir arayüz hazırlayın ve kuaför için giriş ekranı ekleyin.
- Dördüncü hafta: Uygulamayı yayına alın, README dosyasını yazın, ekran görüntüleri ekleyin.
Dört haftanın sonunda çalışan bir ürün çıkar. Hatırlatma mesajı, ödeme ya da çoklu şube desteği gibi özellikler sonraki sürümler için not edilir. Bu yöntem, büyük bir fikri yönetilebilir bir projeye çevirir.
Yazılım fikirleri tükendiğinde ne yapılır?
Yazılım fikirleri tükendiğinde mevcut bir uygulamanın küçük bir parçasını yeniden yapmak iyi bir alıştırmadır. Kullandığınız bir uygulamanın tek bir özelliğini, örneğin bir alışveriş uygulamasının sepet mantığını, kendi yönteminizle yeniden yazmayı deneyin. Amaç kopyalamak değil, o özelliğin arkasındaki mantığı anlamaktır.
Projeyi bir ekiple yapmak
Tek başına yapılan projelerin eksik bıraktığı bir beceri vardır: başkasıyla aynı kod üzerinde çalışmak. İki üç kişilik küçük bir ekip kurup bir proje yapmak, iş hayatındaki günlük akışa çok yakın bir deneyim sunar. Görevleri bölüşmek, birbirinizin kodunu incelemek ve aynı dosyada çakışan değişiklikleri birleştirmek bu sırada öğrenilir.
Ekip projesinde rolleri baştan netleştirin: biri arayüzü, biri sunucu tarafını, biri test ve yayın sürecini üstlenebilir. Her değişikliği ayrı bir dalda yapıp birleştirme isteğiyle ana koda eklemek, profesyonel ekiplerin çalışma biçimini taklit eder. Hackathonlar ve okul kulüpleri, böyle bir ekip kurmak için uygun ortamlardır. CV'de ekip projesini anlatırken kendi katkınızı açıkça belirtin.
Bitmiş projeyi işverene nasıl sunarsınız?
Bitmiş bir projeyi sunmanın ilk adımı, iyi yazılmış bir README dosyasıdır. Bu dosyada projenin ne yaptığı, hangi teknolojilerle yazıldığı, nasıl çalıştırılacağı, ekran görüntüleri ve canlı bağlantı yer alır. İşveren çoğu zaman kodu satır satır okumaz; önce README'yi ve çalışan sürümü inceler.
İkinci adım, projeyi GitHub profili sayfanızda sabitlemektir. Profilinizde en iyi iki üç projenin üstte görünmesi, ziyaretçinin onları ilk bakışta bulmasını sağlar. Commit mesajlarınızın açıklayıcı olması da düzenli çalıştığınızı gösterir.
Üçüncü adım, projeyi anlatmaya hazırlanmaktır. Mülakatta "neden bu teknolojiyi seçtiniz", "en zor kısım neydi", "bugün olsa neyi farklı yapardınız" gibi sorular gelir. Bu sorulara verilecek dürüst ve somut cevaplar, projenin kendisi kadar değerlidir. Portfolyo hazırlığının başvuru sürecindeki yerini junior yazılımcı olarak ilk iş yazısında ayrıntılı anlattık.
Bu hafta hangi projeyle başlamalısınız?
Bu hafta yapılacak en somut iş, bulunduğunuz seviyeye uygun tablodan tek bir proje seçmek ve ilk sürümün özelliklerini üç maddeyle yazmaktır. Seviyenizden emin değilseniz başlangıç tablosundan seçin; kolay gelirse hızla bitirip bir üst seviyeye geçersiniz.
Projeyi seçtikten sonra bir GitHub deposu açın ve ilk commit'i bugün yapın, boş bir README dosyası bile olsa. Projeyi hangi dille yazacağınıza karar vermediyseniz yazılım dilleri yazısındaki karar tablosuna, genel çalışma planı için yazılım nasıl öğrenilir yazısına bakabilirsiniz. Dört hafta sonra hedef, yayında ve çalışan bir ilk sürümdür.
Sıkça Sorulan Sorular
Yazılım projesi fikri nasıl bulunur?
En iyi fikirler günlük hayatta tekrar eden küçük sorunlardan çıkar: bir harcama listesi, bir kulübün etkinlik kaydı, bir aile işletmesinin randevu defteri. Kendi kullanacağınız bir araç yapmak, projeyi bitirme motivasyonunu artırır. Listelerden fikir alıp ona kendi kullanım senaryonuzu eklemek de işe yarar.
Kodlama örnekleri portfolyoya eklenir mi?
Kurs sırasında yazdığınız küçük kodlama örnekleri öğrenme için faydalıdır, ama portfolyoda öne çıkarılmaları önerilmez. İşveren herkesin aynı kursta yaptığı alıştırmaları ayırt edemez. Portfolyoda kendi fikrinizle, baştan sona yaptığınız projeleri öne çıkarın.
Kodlama ile oyun yapma nereden başlar?
İlk adım olarak metin tabanlı ya da tek ekranlı basit oyunlar iyi bir başlangıçtır: sayı tahmin oyunu, adam asmaca ya da yılan oyunu. Bu oyunlar döngü, koşul ve kullanıcı girdisi gibi temel kavramları eğlenceli biçimde çalıştırır. Daha büyük oyunlar için Unity ya da Godot gibi bir oyun motoru öğrenmek gerekir.
Portfolyoda kaç proje olmalı?
Junior başvuru için iki üç iyi hazırlanmış proje çoğu zaman yeterlidir. Proje sayısından çok her birinin bitmiş, yayında ve iyi açıklanmış olması önemlidir. On yarım projeden oluşan bir profil, üç tamamlanmış projeden daha zayıf bir izlenim bırakabilir.
Yapay zekâ ile yazılmış proje portfolyoya konur mu?
Yapay zekâ araçlarından yardım almak yaygın bir uygulamadır, ama projenin her satırını açıklayabilmeniz gerekir. Mülakatta projeniz hakkında ayrıntılı sorular gelir ve anlaşılmadan kopyalanmış kod hemen fark edilir. Aracı kullandıysanız bunu README'de belirtmek dürüst bir yaklaşımdır.
İlgili terimler
İlgili yazılar
Yapay Zekâ ile Oyun Yapmak: Basit Bir Oyunu Baştan Sona Üretme
Yapay zekâ ile oyun yapmak, oyunun kurallarını tarif edip kodu ChatGPT gibi bir asistana yazdırmak, görsel ve sesleri yapay zekâ araçlarıyla ya da lisanslı kaynaklardan üretmek ve sonucu deneyerek düzeltmekle olur. Tarayıcıda çalışan basit bir oyun birkaç akşamda çıkabilir; mobil mağaza ve ticari kullanım için lisans, test ve emek gerekir.
Yazılım Nasıl Öğrenilir? Sıfırdan İlk İşe Gerçekçi Yol Haritası
Yazılım, tek bir hedef seçip o hedefe uygun bir dille temel kavramları öğrenmek, ardından küçük projeler yaparak ve kodu Git ile paylaşarak öğrenilir. Düzenli çalışan biri için temel seviye birkaç ay, işe başvurabilecek seviye çoğu zaman bir yıl ve üzeri sürer; süre kişiye ve haftalık çalışma saatine göre çok değişir.
Yazılım Dilleri Nelerdir? Hangi Hedef İçin Hangi Dili Öğrenmelisiniz
Yaygın yazılım dilleri arasında Python, JavaScript, TypeScript, Java, C#, Kotlin, Swift, C++, Go, PHP ve SQL bulunur. Doğru dil, yapmak istediğiniz işe göre seçilir: web için JavaScript, veri ve otomasyon için Python, mobil için Kotlin ya da Swift, oyun için C# veya C++ yaygın başlangıçlardır.
Junior Yazılımcı Olarak İlk İş: Portfolyo, Başvuru ve Mülakat Hazırlığı
Junior yazılım mühendisi iş ilanlarına başvurmadan önce iki üç bitmiş ve yayında olan proje, düzenli bir GitHub profili ve tek sayfalık bir CV hazırlamak gerekir. Başvurular ilana göre kişiselleştirilmeli; mülakatlar için temel veri yapıları, kendi projelerinizi anlatma ve davranışsal sorulara hazırlık yapılmalıdır. Süreç çoğu zaman aylar sürer ve çok sayıda ret içerir.

