Uygulama Geliştirme Mühendisi ( Java Backend) İş İlanı

İşveren Hakkında

GENEL NİTELİKLER

Genel Tanımı:

Dijital Çözümler Birimi’nin sorumluluk alanına giren ürün ve hizmetler için yazılım geliştirme süreçlerindeki teknik analiz, mimari tasarım, yazılım geliştirme, birim/entegrasyon test, kurulum ve teknik dokümantasyon aşamalarının, şirket prosedürlerine uygun olarak sonuçlandırılmasından sorumludur.


Beklenilen Nitelikler:

· Üniversitelerin Bilgisayar Mühendisliği, Yazılım Mühendisliği veya Bilgisayar Bilimleri Mühendisliği bölümlerinden mezun,

· Java (J2SE&J2EE) programlama dilinde en az 4 yıl yazılım geliştirme deneyimi olan,

· Java Spring Core, MVC ve Spring Boot teknolojileri konusunda deneyimli,

· Object oriented tasarım ve uygulama geliştirme süreçlerine hakim,

· Web Servis, SOAP, Restful API servis geliştirme konusunda deneyim sahibi,

· Microservice kavramını bilen ve bunların yönetimi için kullanılan Consul benzeri sistemler üzerinde daha önce çalışmış,

· Temel düzeyde HTML ve JavaScript proje deneyimi olan,

· Relational (Oracle, MySQL) ve NoSql (Redis, MongoDB gibi) veri tabanları ile proje deneyimi olan,

· Git gibi versiyon kontrol araçları ile çalışmış,

· Jenkins gibi CI/CD araçları kullanımı konusunda bilgi sahibi,

· Linux işletim sistemi kullanım bilgisine sahip,

· Teknik dokümanları, yayınları ve çeşitli kaynaklardan içerikleri takip edip anlayabilecek ve sözlü iletişim kurabilecek düzeyde İngilizce’ye hakim,

· Analitik düşünme becerisine sahip,

· Sorun bulma ve çözme konularında yetenekli,

· Araştırma ve öğrenme merakı olan,

· Takım çalışmasına yatkın,

· İletişimi güçlü

Başvuran kişinin,

· Apache Kafka gibi pipeline teknolojilerini kullanmış,

· Kubernetes, Openshift, Docker gibi Container teknolojileri konusunda deneyimi olması,

· Apache HTTP Server, Caddy, Nginx veya Tomcat gibi runtime platformlarını bilmesi,

· JQuery gibi JavaScript kütüphanelerini kullanmış olması,

· Vue.js, React gibi önyüz teknolojilerinde deneyimi olması,

· Scrum, Kanban gibi Agile methodolojiler ile daha önce çalışmış olması

artıdır.

Temel Sorumluluklar:

· Sorumlu olduğu uygulama ve sistemlere yönelik kurulum, iyileştirme, yazılım geliştirme faaliyetlerini, tanımlı politika, prosedür ve standartlarına uygun olarak yürütmek.

· Ürünün veya uygulamanın geliştirilmesi, devreye alınması ve bakımına dek tüm proje hayat döngüsüne katılmak.

· Proje taleplerine yönelik uygulama ve sistem gereksinimlerinin tanımlanması sürecinde ilgili birimlere destek olmak.

· Sorumluluk alanında olan projelere yönelik proje hazırlık, fizibilite, iş ve teknik isterlerin hazırlanması çalışmalarına destek olmak.

· Geliştirilen kaynak kodlar üzerinde gerekli birim testlerini ve hata ayıklama (“debugging”) çalışmalarını gerçekleştirmek, gereken aksiyonları almak.

· Geliştirilen ürün ve hizmetler konusunda iletilen problemleri araştırıp çözümlemek, teknik soruları yanıtlamak ve dışarıya hizmet olarak sunulan servisler için entegrasyon desteği vermek,

· Yüksek kalite standartlarında ve ürün yol haritasına uyumlu bir şekilde uygulamaları geliştirmek, projeleri hayata geçirmek.

· İç veya dış kaynaklar tarafında geliştirilmiş, kaynak kodu bulunan uygulamaların görevler ayrılığı prensipleri dahilinde kaynak kod incelemesini yapmak, gereken aksiyonların alınmasını sağlamak.

· Uygulamalarda kullanılan 3. parti kütüphanelerin sürümlerini takip etmek, gerektiğinde bu kütüphanelerin son sürümlerini kullanılması için uygulamaları düzenlemek.

· Ürünün sürdürebilmesi için gerçekleştirilen çalışmaları doküman haline getirmek,

· Efektif ve verimli kod geliştirebilmek için diğer ekip üyeleriyle uyumlu çalışmak,

· Test ve devreye alım gibi adımların başarılı olarak tamamlandığını izlemek ve bu adımlardaki olası sorunları çözmek için gereken aksiyonları almak veya gerektiğinde bayrak kaldırıp farkındalık yaratmak,

· Java ile ilgili ilgili yeni yazılım teknolojilerini araştırmak, yeni fikir ve teknolojileri paylaşmak,

· Sorumluluk alanına giren, uygulama geliştirme dışındaki periyodik bakım faaliyetlerini yürütmek.

· Güvenli kod geliştirme süreçlerine uygun şekilde yazılım geliştirmek, periyodik yapılan güvenlik denetimlerinde tespit edilen bulguların giderilmesini sağlamak,

· Çevik yöntemleri uygulamak ve olgunluk seviyesinin artması için katkıda bulunmak.

· Sorumluluk alanındaki ürün ve hizmetlerin gelişimi, güncel tutulması ve yaygınlaşması konusunda ilgili iş birimleri ile uyum içinde çalışmak, gerekli desteği vermek.

· Müşteri memnuniyeti sağlamak, müşteri odaklı bir yaklaşım sergilemek.