TEKNOLOJİ ŞİRKETLERİ
YÖNETİM DANIŞMANLIĞI VE EĞİTİM
HİZMETLERİ
TEKNOLOJİ TABANLI
GİRİŞİMCİLER İÇİN İŞ GELİŞTİRME
MENTORLÜĞÜ
PROFESYONEL
YAZILIM
GELİŞTİRME
SANAYİDE
DİJİTAL DÖNÜŞÜM
TEKNOLOJİ TRANSFER
OFİSLERİ & TEKNOPARKLAR İÇİN
İŞ GELİŞTİRME
YATIRIMCI
BULMA & DEVLET
DESTEKLERİ
YAZILIM-BİLİŞİM
SEKTÖRÜNDE SATIŞ PAZARLAMA
& İŞ GELİŞTİRME
KURUM İÇİ
MENTORLUK &
İÇ GİRİŞİMCİLİK
KEY OF CHANGE

2020-21 Yılları Popüler Yazılım Meslekleri

Bilgi ve İletişim Teknolojileri Sektörünün, ülke ekonomisinin büyümesinde, istihdamın ve dünya pazarlarındaki rekabet gücünün artmasında kaldıraç görevi gördüğü ve Türkiye için stratejik sektör olarak konumlandırılması gerektiği dillendirildikçe, bilişim kariyerlerinin cazibesi daha da öne çıkmaktadır. Bu nedenle üniversitelerin bilişim bölümlerine olan ilgi ve bilişim sertifikasyon programlarının önemi artmaktadır. Dünyanın karmaşıklığı ve eğitimde çoklu disiplin yaklaşımı, meslek adlarının karışmasına, mesleğe ait ana görev veya işlemlerin bazen meslek olarak da tanımlanmasına ve bazen de mesleğe ait alt sektörlerin ana meslek gibi addedilmesine neden olmaktadır.

Bilişim Teknolojileri alanında gelecekte mesleklerin birçok alt mesleklere bölüneceğini ve daha kapsamlı eğitim gerektirdiğini görüyoruz. Teknolojiler öyle hızlı değişiyor ki, önümüzdeki bir kaç yılın en önemli yetkinlikleri; çok yönlülük, hızlı öğrenme ve adaptasyon kabiliyeti olacak. Eskiden çok uzak olan disiplinler ve teknolojiler artık içiçe, bu sebeple özellikle mühendislerin multi-disiplin çalışmaları çok önemseniyor. Eski uzmanlık alanlarının yerini artık  “uzmanlık kombinasyonları” alıyor.

* Softtech Teknoloji Raporu 2019

Softtech Teknoloji Raporu 2019‘da ;

– Önümüzdeki yıllarda yalın müşteri deneyimleri ve tasarım odaklı düşünmenin öne çıkacağı,
– Arttırılmış Gerçekliğin geç ama güçlü geleceği,
– Yapay Zekanın ana eğilim olacağı ve insansı yapay zekanın hala uzak bir ihtimal olduğu,
– Siber güvenliğin ulusal bir güvenlik olmaya devam edeceği,
– Otonom araçlara olan güvenlik algılarının azalacağı,
– Fintech’lerin globalleşerek, güçlü ve istikrarlı bir şekilde büyüyeceği,
– Açık Bankacılık eğilimlerinin regülasyon desteği ile olgunlaşacağı,
– Kripto para teknolojisindeki köpüğün geçmesiyle blok zincir teknolojilerinin ayağı yere basan olgun çözümler üreteceği,
– İş birliği modelleri ve insan gücünün yönetiminde daha dinamik yapılara geçileceği,
– Bulut hizmetleri sayesinde kurumların karlılık ve verimliliklerini artırabilmek amacıyla iç yetkinliklerini tekrar dışarıya açmaya başlayacağı söylenmektedir.

Gelişmekte olan teknolojilerin, 2020-2021 yılları arasında görmeyi beklediğimiz talep edilen işler için kilit katalizör olacağı aşikardır. Blok Zincir teknolojileri ve aracısızlaştırma, arttırılmış gerçeklik, yapay zeka, nesnelerin interneti ve otomasyon, sanal gerçeklik, ülke genelinde gerçekleşen dijital dönüşümü desteklemek için mühendislik, ürün, veri bilimi, pazarlama ve satış alanlarında iş talebi artmaya devam edeceği düşünülmektedir.

2012’den beri hazırladığımız Bilişim Meslekleri araştırmasını Tübider Bilişim Sektörü Derneği 20. Yıl Kutlamaları çerçevesinde 2020 Şubat ayında yenileyerek topluma duyuracağız. Farklı endüstrilerdeki, sağlık hizmetlerinden finansmana, otomotiv sektöründen akıllı evlere ve daha fazlasına kadar çeşitli alanlarda işverenlerin iş akışını kolaylaştırmak ve işleri artırmak için yeni teknolojileri uygulamaya başladıkça, teknik/teknolojik bilgiye dayalı ve iletişim becerisi, takım çalışması, problem çözme gibi yumuşak beceriler (Soft Skills) dengesi olan birinci sınıf çalışanlara olan talep artmaya devam edecek. Bu gerçeklikten hareketle bu makale dizisinde 2020-2021 yılları arasında popüler olacak bilişim meslekleri ve sorumluluk alanlarını irdeledik. Makale dizimizin ilk bölümünde 2020-2021 yılları arasında popüler olacak Yazılım Mesleklerini ele alıyoruz.

2020-21 Yılları Popüler Yazılım Meslekleri

Yazılım geliştirmede deneyim önemlidir ve işverenlerin sizi tam zamanlı bir pozisyon için değerlendirmeden önce deneyim kazanmanız için birkaç küçük, bağımsız iş almanız gerekebilir. Bu işin görev ve sorumluluklarını yerine getirmek, ölçeklenebilir kod yazmanın bilgisi, yazılımda hata ayıklama ve dahili ekiplerle koordine etme, değişiklikleri takip etme ve uyum sağlama ve özellik isteklerini değerlendirme gibi ek beceriler gerektirir. Açık Kaynak “Stalwart Git” benzeri versiyon kontrolü/Git yazılımları kullanmayı bilmeyen birinin yazılım geliştirici olarak kabul edilmesi günümüzde zordur.

Java Geliştirici

Java geliştiricileri, yüksek hacimli, düşük gecikmeli uygulamalar tasarlayıp geliştirerek kullanıcı bilgi sistem çözümleri oluşturur. Sorumluluklar arasında kullanıcı gereksinimlerinin belirlenmesi ve tanımlanması, şartnamelerin yazılması ve çözümler geliştirilmesi, test edilmesi ve uygulanması yer almaktadır.

Önde gelen birçok dijital platform tarafından yapılan son anketlere göre Java en çok talep edilen teknoloji olarak kabul edilir ve aslında bir geliştirici ortamı çerçeveleri (FrameWork) ile bir bütünüdür.

Yapay Zeka ve Makine Öğrenimi, Java geliştirici becerilerini eşit derecede talep eden teknolojilerdir. Java geliştiricilerinin Blockchain’e de yeterince ilgisi vardır. Geliştirme çerçeveleri (FrameWork) arasında Spring oldukça tercih edilenlerdendir.  Java Geliştiricileri için özel önem taşıyan farklı yeni FrontEnd frameworks geliştirme ortamları da bulunmaktadır.

Java Geliştiricileri Beceriler ve Deneyim

  • JSP / Servlet Bilgisi,
  • Struts / Spring-Beans gibi Web Framework bilgileri,
  • Aspect-Oriented programming (AOP),
  • Hibernate Query Language (HQL),
  • Servis Odaklı Mimariler / Web Servisleri – SOAP / REST,
  • HTML, CSS, Javascript ve JQuery gibi Web Teknolojileri,
  • XML ve JSON gibi Biçimlendirme (Markup) Dilleri,
  • İlişkisel veritabanları bilgisi, SQL ve ORM teknolojileri
    (https://www.whizlabs.com/blog/top-java-developer-skills/)

JavaScript Geliştirici

Bir web uygulamasının görsel ögelerinin davranışını tanımlayan ön uç (FrontEnd) mantığını uygulamaktan bir JavaScript geliştiricisi sorumludur. Bir JavaScript geliştiricisi, bunu arka uçta (BackEnd) yer alan hizmetlere bağlamaktan da sorumludur.

JavaScript geliştiricileri bir web sitesinin programlanmasından, geliştirilmesinden ve uygulanmasından sorumludur ve kendilerini web sitelerinin oluşturulmasına giren çeşitli programlama görevlerinde hokkabazlık olarak bulabilirler. Bir sitenin tamamından veya bir veya daha fazla web sitesinin yalnızca belirli yönlerinden veya sayfalarından sorumlu olabilirler.

JavaScript geliştiricileri, herhangi bir üst seviye dilden daha fazla platformu hedefleyebilir, çünkü JavaScript mevcut en zengin OSS modülü ekosistemine sahip popüler programlama dilidir. JavaScript Geliştiricisi etkileşimli web sayfalarını, kullanıcı deneyimi ve duyarlı ön uç (FrontEnd) tasarımı oluşturmak için kullanır. Bir kullanıcının bir web sitesinde tıkladığı, girdiği, düzenlediği veya çektiği herhangi bir süreç JavaScript ile mümkündür.

Web geliştirme, iş birliği, iletişim ve teknik yazı da dahil olmak üzere çeşitli beceriler gerektiren çok zor bir iştir. Bu kariyerde başarılı olmak için aşağıdaki niteliklere ihtiyaç vardır.

JavaScript Geliştiricileri Beceriler ve Deneyim

  • HyperText Markup Language (HTML),
  • CSS (Cascading Style Sheets) ve jQuery bilgisi,
  • AngularJS ve Bootstrap gibi CSS ve JavaScript Frameworks bilgisi,
  • Sass, LESS, veya Stylus gibi CSS Preprocessing bilgisi,
  • Responsive Tasarım ve tarayıcı geliştirme ortamları bilgisi.
    (https://skillcrush.com/2017/03/20/front-end-developer-skills/)

Python Geliştirici

Sunucu tarafı web uygulaması mantığını yazmaktan bir Python Geliştiricisi sorumludur. Python geliştiricileri genellikle arka uç (BackEnd) bileşenler geliştirir, uygulamayı diğer (genellikle üçüncü taraf) web servislerine bağlar ve çalışmalarını Python uygulamasına entegre ederek ön uç (FrontEnd) geliştiricilere destek verir.

Python geliştiriciler uygulama oluşturabilir, kodun çerçevesini (FrameWork)  tasarlayabilir, işin yapılması için gerekli araçları oluşturabilir, web siteleri oluşturabilir veya yeni hizmetler yayımlayabilirler. Python geliştiricileri, sorulara faydalı cevaplar oluşturmak ve en çok ihtiyaç duyulan yerleri sağlamak için genellikle veri toplama ve analizlerle çalışır. Çoğu programlama pozisyonunda olduğu gibi, bu işin özellikleri de işvereninin ihtiyaçlarına göre değişir.

Bir Python geliştiricisi olmak için birincil nitelikler arasında bilgisayar bilimi veya mühendisliği alanında lisans derecesi, problem çözme becerileri, takım odaklı bir zihniyet ve Python’un en popüler çerçevelerinden (FrameWork) en az biriyle uzmanlık yer alıyor.

Pyhton Geliştiricileri Beceriler ve Deneyim

  • Core Python ve kütüphaneleri deneyimi (Requests, NumPy, Pillow, Pandas, Matplotlib, SciPy, Nose..vs)
  • Django, Turbo Gears, Pyramid, Flask, Web2py, Bottle, Tornado, Dash, ve CherryPy benzeri FrameDwork bilgisi,
  • SQLAlchemy, Django ORM gibi ORM (Object Relational Mapper) kütüphaneleri deneyimi,
  • HTML5, CSS3, JavaScript Web Altyapıları ve Nesne İlişkisel Eşleştiricileri,
  • Veri Bilimi ilgisi ve bilgisi,
  • Makine Öğrenme, Derin Öğrenme, ve Yapay Zeka deneyimi, (TensorFlow, Pytorch, Sonnet, Keras, Mxnet, Gluon, Swift, Chainer, DL4J, Onnx)
  • Çoklu İşleme mimarisi bilgisi.
    https://www.merixstudio.com/blog/8-skills-you-need-be-good-python-developer/

Sanal ve Arttırılmış Gerçeklik Yazılım Mühendisi

Başarılı VR / AR (Virtual Reality / Augmented Realty) Yazılım Mühendisleri bilgisayar grafikleri ve sanal / artırma / karışık gerçeklik konularında deneyime sahiptir. Uygulama geliştirme, yazılım mimarisi ve tasarım alanlarında uzmandırlar. Ek olarak, kullanıcı arayüzlerini çekici ve kullanımı kolay bir şekilde sunabilirler. Gelişen teknolojileri kullanan çok çeşitli görevler üzerinde çalışmak ve teknik becerileri tasarım duyarlılıklarıyla birleştirme yetileri vardır. Mükemmel zaman yönetimi ve iletişim becerileri sayesinde hızlı bir ortamda hızlı bir şekilde öğrenebilirler. Sanal ve Arttırılmış Gerçeklik Yazılım Mühendislerinin mühendislik, matematik veya eşdeğeri bir alanda lisans veya yüksek lisans derecesi beklenir.

Sanal ve Arttırılmış Gerçeklik Yazılım Mühendisi Beceriler ve Deneyim

  • Unity, OpenGL, DirectX veya benzeri ile 3D grafik programlama deneyimi,
  • Pix4D, Photoscan, RealityCapture benzeri 3D modeller oluşturmak için temel fotogrametri deneyimi
  • Maya / 3ds Max / Blender veya benzeri programlar kullanarak temel 3D modelleme deneyimi,
  • Artırılmış veya Sanal Gerçeklik geliştirme deneyimi,
  • Kinect, Leap Motion, Jest tanıma deneyimi,
  • Kullanıcı arayüzü ve hızlı prototip oluşturma deneyimi,
  • C / C ++ / C # / Objective C veya Java ile çalışma deneyimi,
  • SDK’ları kodlayarak veya oyun motorları kullanarak yeni teknolojileri hızlı bir şekilde prototipleme yeteneği.
    https://blog.pusher.com/how-you-can-become-an-ar-vr-developer/

 

Site Güvenirliği ve DevOps Mühendisleri

DevOps Mühendisleri, var olan sistemleri ve süreçleri otomatik hale getirir ve hızlandırır. Ayrıca dağıtım, işlemler ve izleme sistemleri için araçlar oluşturur ve sürdürür. Geliştirme, test ve üretim ortamlarındaki sorunları tanılar ve giderir. DevOps Mühendisleriden Bash, Ant, Python, Gradle, Maven ve Ruby gibi dillerde kod yazma becerileri, nesne yönelimli tasarım, veri yapıları ve çok kanallı algoritmalar  (multithreaded algorithms) tecrübesi, bulut tabanlı altyapı ortamları ile tecrübe, bir proje sunmak için birden fazla fonksiyonel / teknik ekip arasında işbirliği becerileri aranır.

Site Güvenilirliği Mühendisleri uygulamaların performansını izler, bu amaçla uygulama ve kodun tam olarak anlaşılması gerekir. Ayrıca, herhangi bir yazılım geliştiricisi gibi kod yazabilirler. Temel olarak uygulama üretimindeki gelişme ve işlemler arasındaki boşluğu kapatırlar. Genellikle teknik destek ekipleri içinde çalışırlar ve acil durum desteğinin yanı sıra destek başvurularına veya uygulama kusurlarının çözümüne yardımcı olurlar.

Site Güvenirliği ve DevOps Mühendisleri Beceriler ve Deneyim

  • Google’s Golang ve C++,
  • Bash, Ant, Python veya Java Object Oriented diller,
  • JavaScript, PHP, CSS & HTML deneyimi,
  • Gradle, Maven, Ruby, Scheme, Perl gibi dillerde deneyim,
  • AWS, Azure veya GCP bulut platformu bilgisi,
  • Puppet, Ansible, Chef, Terraform..vb Yapılandırma Yönetimi ve Dağıtım Araçları (Configuration Management and Deployment) deneyimi,
  • Komut dosyası oluşturma konusunda, Git ve Git iş akışlarında deneyim,
  • UX tasarımı vb. gibi gelişmiş alanlarda deneyim.
    https://www.edureka.co/blog/devops-engineer-role

Full Stack Geliştirici

Full Stack bir web geliştiricisi, hem uygulamanın arka (BackEnd) hem de ön ucunda (FrontEnd) çalışabilecek bir teknoloji uzmanıdır. Kişi, 3 aşamalı bir modelin her katmanına aşina olmalıdır. 3 katmanlı oluşum;

1- Sunum katmanı (Kullanıcı arayüzü ile ilgilenen ana ön uç (FrontEnd) kısım), 2- İş Mantığı Katmanı (veri doğrulama ile ilgilenen herhangi bir uygulamanın arka uç (BackEnd) kısmı) 3- Veri Tabanı Katmanı

şeklindedir. Bir Full-Stack Geliştirici, tüm teknolojilerde uzman değildir. Ancak, bu profesyonelin sunucu tarafında olduğu gibi müşteri üzerinde de çalışması ve bir uygulama geliştirirken neler olup bittiğini anlaması beklenir. Tüm yazılım teknolojilerine gerçekten ilgi duymalıdır.

Full Stack Geliştirici kullanıcı gereksinimlerini genel mimariye ve yeni sistemlerin uygulanmasına dönüştürme, projeyi yönetme ve müşteri ile koordine etme, Ruby, Python / Java, PHP dillerinde arka uç (BackEnd) kodunu yazma, Optimize edilmiş ön kod HTML ve JavaScript yazma, veritabanı ile ilgili sorguları anlama, sorgu oluşturma ve hata ayıklama, başvuruyu müşteri ihtiyacına göre doğrulamak için test kodu oluşturma görevlerini yerine getirir. Web uygulamalarının ve altyapının performansını izler ve hızlı ve doğru çözünürlükte web uygulamasıyla ilgili sorunları giderir.

Full Stack Geliştiricileri Beceriler ve Deneyim

Ön uç (FrontEnd) teknolojisi

  • Full Stack Geliştirici HTML5, CSS3, JavaScript gibi temel ön uç (FrontEnd) teknolojilerin ustası olmalıdır.
  • JQuery, LESS, Angular ve React Js gibi üçüncü parti kütüphanelerin bilgisi arzu edilir.

Geliştirme Dilleri

  • Full Stack Geliştirici Java, Python, Ruby veya .NET gibi en az bir sunucu tarafı programlama dilini bilmelidir.

Veritabanı ve önbellek

  • Çeşitli DBMS teknolojisi bilgisi, Full Stack geliştiricinin bir diğer önemli ihtiyacıdır.
  • MySQL, MongoDB, Oracle, SQLServer bu amaç için yaygın olarak kullanılmaktadır.
  • Vernik, Memcached, Redis gibi önbellekleme mekanizmalarının bilgisi bir artıdır.

Temel tasarım yeteneği

  • Başarılı bir Full Stack Geliştirici olmak için, tasarım bilgisi de tavsiye edilir.
  • Ayrıca, kişi temel prototip tasarımı ve UI / UX tasarımı prensibini bilmelidir.

Sunucu

  • Apache veya Nginx sunucularını kullanması tercih sebebidir.
  • Linux’taki iyi bir geçmiş aranır ve sunucuların yönetiminde çeşitli sorumluluklar verilebilir.

Sürüm kontrol sistemi (VCS)

  • Bir sürüm kontrol sistemi, Full Stack Geliştirici kod tabanında yapılan tüm değişiklikleri takip etmelerini sağlar. “Git” bilgisi, Full Stack Geliştirici en son kodun nasıl alınacağını anlamalarına, kodun bölümlerini güncelleştirmelerine, diğer geliştiricilerin kodlarında herhangi bir şeyi bozmadan değişiklik yapmalarına yardımcı olur.
  • API ile çalışma (REST ve SOAP) deneyimi aranır.


site design & technology
SLC Web Mühendisliği
www.slc.com.tr