Veri Mühendisi Kimdir? Ve Ne İş Yapar?

Selçuk Şan
Turk Telekom Bulut Teknolojileri
4 min readJun 5, 2022

Veri Mühendisinin Rolü

Veri mühendisleri, ham verileri toplayan, yöneten ve veri bilimcilerin ve iş analistlerinin yorumlaması için kullanılabilir bilgilere dönüştüren sistemler oluşturmak için çeşitli ortamlarda çalışır.

Nihai hedefleri, kuruluşların performanslarını değerlendirmek ve optimize etmek için kullanabilmeleri için verileri erişilebilir kılmaktır.

Veri Mühendisinin Görevleri

Bunlar, verilerle çalışırken gerçekleştirebileceğiniz bazı yaygın görevlerdir:

  • İş gereksinimleriyle uyumlu veri kümeleri edinme.
  • Verileri yararlı, eyleme geçirilebilir bilgilere dönüştürmek için algoritmalar geliştirme.
  • Veritabanı pipeline mimarileri oluşturma, test etme ve bakımını yapma.
  • Şirket hedeflerini anlamak için yönetimle işbirliği yapma.
  • Yeni veri doğrulama yöntemleri ve veri analiz araçları oluşturma.

Daha küçük şirketlerde çalışmak, genellikle genel bir rolde veriyle ilgili çok çeşitli görevleri üstlenmek anlamına gelir.

Bazı büyük şirketler, data pipeline oluşturmaya adanmış veri mühendislerine sahipken, diğerleri veri ambarlarını yönetmeye odaklanmıştır.

Temel İş Başvurusu Kriterleri

Veri miktarındaki patlayıcı artış, çok çeşitli veri türleri ve bunları anlamlandırmak için gereken bilgi işlem gücü, tüm bu bilgileri toplamak ve analiz etmek için sistemler tasarlayabilen insanlara olan talebi artırıyor.

Veri mühendisleri, sağlık hizmetlerinden e-ticarete, finanstan teknolojiye kadar çok çeşitli endüstrilerde yüksek talep görmektedir.

Peki veri mühendisi iş ilanlarına göre, temel iş başvurusu kriterleri nelerdir?

Veri mühendisliğinde bir kariyer için gereksinimler işverenler arasında değişmektedir. Ancak, veri mühendisi iş listelerinde sürekli olarak göreceğiniz bazı veri mühendisi yetkinlikleri vardır. Bunlar şunları içerir:

  • Hadoop ve Spark gibi dağıtık sistemlerin yanı sıra Google ve AWS gibi bulut bilişim platformları hakkında bilgi.
  • Java, Python veya Scala gibi en az bir programlama dilinde güçlü programlama becerileri
  • İyi derecede RDBMS ve MongoDB, Cassandra gibi NoSQL veritabanları bilgisi

Çeşitli veri ile ilgili programlar ve dillerin en yaygın olanlardan bazıları:

  • Apache Hadoop, Apache Spark, Apache Kafka
  • Python
  • SQL
  • GCP (BigQuery, DataProc, )
  • AWS (EC2, Redshift, S3)
  • Docker
  • NoSQL

Bir Veri Mühendisinin aşina olması gereken programlar

Google Compute Platform (GCP)

GCP, hizmetler aracılığıyla sunulan bir Google bilgi işlem kaynakları koleksiyonudur. Veri mühendisliği hizmetleri arasında Hesaplama, Depolama, Büyük Veri ve Makine Öğrenimi bulunur.

Avantajlar: Performans (hızlı çözümler), Fiyatlandırma (saat altı faturalandırma, uzun süreli kullanım indirimleri, özel makine türleri), PaaS Çözümleri, Sağlam Altyapı

AWS(Redshift, EC2)

Veritabanı depolama çözümleri sağlamak için kullanılan AWS, verileri depolamak için Amazon S3 bucketları ve Amazon EC2 bulut sunucularıyla birlikte çalışan bir bulut bilişim platformudur.

Apache Hadoop and Apache Spark

Bunlar, büyük veri kümelerinin bilgisayar kümeleri arasında dağıtılmış olarak işlenmesine izin veren açık kaynaklı, Java tabanlı frameworkler’dir.

Hadoop, büyük miktarda veriyle uğraşmanın zorluklarını çözen dağıtılmış uygulamalar için bir çerçevedir. Hesaplama açısından zor sorunları ele almak için yararlıdır ve toplu işleme, yinelemeli algoritmalar ve etkileşimli sorgular için kullanılabilir.

Spark ise Scala, Java ve Python’da API’lere sahip hızlı, bellek içi bir veri işleme motorudur.

HDFS ve Amazon S3

Günümüzün en popüler bulut tabanlı veri depolama çözümlerinden ikisidir. HDFS, büyük miktarda veriyi ticari donanımda depolamak için oluşturulmuş açık kaynaklı bir dosya sistemidir. Amazon S3, dosya başına bir veya daha fazla terabayt veriyi son derece yedekli bir şekilde depolayabilen, ölçeklenebilir bir nesne depolama sistemidir.

Teknik Veri Mühendisi becerileri

Teknik açıdan bilgili bir veri mühendisi olmak için edinilmesi gereken çok çeşitli beceriler vardır.

Database systems (SQL and NoSQL)

Veri mühendislerinin çeşitli veritabanı sistemleri (SQL ve NoSQL) ve veri ambarı çözümleri hakkında derinlemesine bilgi sahibi olmaları gerekir.

Bir veri mühendisi olarak, birden çok kaynaktan veri çıkarmayı, bunları faydalı bilgilere dönüştürmeyi, kullanılabilir bir biçime yüklemeyi ve iş kararlarını bilgilendirmek için sonuçları sunmayı bilmeniz gerekir.

Veri Ambarı çözümleri

Bir veri mühendisi olarak işin çoğu, şirketin verilerini verimli bir şekilde depolamasına ve erişmesine yardımcı olan altyapıyı oluşturmaya odaklanacaktır.

Çoğu şirket, bu hedefe ulaşmalarına yardımcı olmak için bir tür veri ambarı çözümü kullanır, bu nedenle alana girmeden önce onlarla çalışma deneyimine sahip olmak çok önemlidir.

ETL (extract, transfer, load)

Ayrıca, farklı kaynaklardan gelen verileri entegre etmek, hem yapılandırılmış hem de yapılandırılmamış büyük hacimli verileri yönetmek ve algoritmalar geliştirmek için güçlü bir ETL (extract, transfer, load) araçlarını anlamak gerekir.

Veri API’leri

Veri API’leriyle etkileşim kurmak, herhangi bir veri mühendisi için temel bir beceridir. Bu günlerde, araçların ve platformların çoğu rahatlatıcı API’lere sahiptir ve çözümler oluşturmak için bu hizmetlerle etkileşime geçebilmek gerekir.

Python’da çalışıyorsanız, API’lerle etkileşim kurmanın basit bir yolu olarak request kitaplığını kullanma şansınız yüksektir.

Python, Java ve Scala programlama dilleri

Veri mühendisleri, özellikle büyük veri alanında kullanılan en yaygın programlama dilleri Python, Java ve Scala’dır. Veri mühendisi olmak için bu dillerden en az birinde uzmanlık gerekir.

Dağıtık Sistemler

Veri mühendisleri, yüzlerce veya binlerce makineden oluşan kümeler üzerinde çalışan kodlar yazar ve bu nedenle, dağıtılmış sistemlerle ilgili temel kavramları anlamak gerekir.

SONUÇ

Özetle, Veri Mühendisliği; kod yazmanın yanı sıra bulut altyapısının bakımını ve kurulmasını, veritabanlarıyla karmaşık çalışmayı ve bazı durumlarda istatistik ve makine öğrenimini içeren ilginç ve çeşitli bir roldür.

--

--