Kıdemli Yazılım Geliştirme Uzmanı (Java)
2 kadro
- •Bilgisayar mühendisliği, yazılım mühendisliği ya da bunlara denkliği/eşdeğerliği Yükseköğretim Kurulu'nca kabul edilmiş yükseköğretim kurumlarından mezun olmak.
- •Belgelendirmek kaydıyla lisans mezuniyetinden sonra yazılım geliştiricisi olarak en az 8 yıllık çalışma deneyimine sahip olmak.
- •Java ve Spring Boot kullanılarak geliştirilen uygulamaların geliştirme ve bakım çalışmalarında fiilen görev aldığını belgelendirmek.
- •Spring Security ve Spring Data bileşenleri hakkında bilgi sahibi olmak.
- •Oracle veya PostgreSQL ilişkisel veri tabanları konusunda bilgi ve deneyim sahibi olmak.
- •JPA ve Hibernate gibi ORM teknolojileri, ileri düzey SQL, veri modelleme ve sorgu performansı iyileştirme konularında bilgi sahibi olmak.
- •Web teknolojileri (HTML/HTML5, XHTML, CSS/CSS3, Javascript) konularında bilgi sahibi olmak.
- •Javascript framework veya kütüphanelerinden en az birinde (React, Vue, Angular vb.) bilgi sahibi olmak.
- •Web servisleri, SOAP, REST gibi teknolojiler hakkında bilgi sahibi olmak.
- •Yazılım geliştirme yaşam döngüsü (SDLC) ve çevik yazılım geliştirme (Scrum, Kanban) süreçleri hakkında bilgi sahibi olmak.
- •Versiyon Kontrol Sistemleri (Git, SVN vb.) hakkında bilgi sahibi olmak.
- •Nesne Yönelimli Programlama (OOP), Temiz Kod, SOLID prensipleri ve Tasarım Kalıpları hakkında bilgi sahibi olmak.
- •Birim testi (unit testing), entegrasyon testi ve test odaklı geliştirme (TDD) konularında bilgi sahibi olmak.
- •CI/CD süreçleri ve Jenkins, GitLab CI/CD veya benzeri sürekli entegrasyon ve dağıtım araçları hakkında bilgi sahibi olmak.
- •Docker kullanarak uygulamaları konteyner ortamında geliştirme ve çalıştırma konusunda bilgi sahibi olmak.
- •Mikroservis, Modüler Monolit ve dağıtık sistem mimarileri hakkında bilgi sahibi olmak.
- •Tercihen Alan Odaklı Tasarım (DDD) ve Hexagonal mimari konularında bilgi sahibi olmak.
- •Tercihen Keycloak veya benzeri kimlik ve erişim yönetimi araçları ile OAuth 2.0, OpenID Connect ve tek oturum açma yöntemleri hakkında bilgi sahibi olmak.
- •Kubernetes veya benzeri konteyner orkestrasyon platformları hakkında bilgi sahibi olmak.
- •Apache Kafka, RabbitMQ veya benzeri mesaj kuyruklama ve asenkron mesajlaşma teknolojilerinden en az biri hakkında bilgi sahibi olmak.
- •Redis, Memcached veya benzeri önbellekleme (caching) ve bellek içi veri yönetimi teknolojilerinden en az biri hakkında bilgi sahibi olmak.
