Codefiction Podcast

Codefiction Podcast

By Codefiction CommunityTechnology
Download on the App Store

Codefiction Podcast episodes

  • 510 - Hacker Kültürü

    Talentgrid'in  katkılarıyla yeni bölüm yayında! 

    Bu bölümle birlikte yazılım kültürü konulu mini bir seriye başlamış bulunuyoruz.  Hacker kültürü bölümüyle karşınızdayız.

    Bir sonraki bölümde görüşmek üzere!

    44 min
  • 509 - Alaylı ya da okullu yazılımcılar

    Talentgrid'in  katkılarıyla yeni bölüm yayında! 

    Bu bölümle birlikte yazılım ekipleri ve yetkinlikleriyle ilgili mini serimizi tamamlamış olduk. Bu bölümde  yazılımcı olmak için nasıl yetkinlikler gerektiğini, okulun faydalarını ve okuldanki mühendislik eğitimini ve neden yazılımcılıkta bu kadar çok alaylı yazılımcının olduğunu tartıştık. 

    Bir sonraki bölümde görüşmek üzere!

    44 min
  • 508 - Ürün yöneticisi, ürün yönetimi ve teknik borç

    Talentgrid'in katkılarıyla hazırladığımız bu bölümde, Spotify'da ürün yöneticisi olarak çalışan konuğumuz Buket Baran ile birlikte teknik ürün yönetimi, ürün yöneticisinin yazılım ekipleriyle geliştirdiği işbirliğini, teknik borcun nasıl ele alınması gerektiğini konuştuk.

    "Modern ürün geliştirme süreçleri"
    "Ürün yöneticisi ne kadar teknik bilgi birikimine sahip olmalıdır?"
    "Yazılım ekibi veya ekibin lideri teknik borç konusunda farkındalığı nasıl artırabilir?"
    "Ürün yöneticisinin teknik borca yaklaşımı nasıl olabilir?"
    "Teknik borç ödenirken ürün yöneticisinin ekibe ve ürün sahiplerine karşı olan sorumlulukları nelerdir?"
    "Nasıl ürün yöneticisi olabilirim?"

    Bölümde bahsi geçen kitaplar ve kaynaklar:
    http://theleanstartup.com/book
    https://www.amazon.com/INSPIRED-Create-Tech-Products-Customers-ebook/dp/B077NRB36N
    https://www.amazon.com/Design-Everyday-Things-Revised-Expanded/dp/0465050654
    https://www.amazon.com/Start-Why-Leaders-Inspire-Everyone/dp/1591846447
    https://www.amazon.com/Pyramid-Principle-Logic-Writing-Thinking/dp/0273710516
    https://productschool.com/
     

    47 min
  • 507 - Bireysel Katılımcı (Individual Contributor) Nedir, Ne Yapar?

    Talentgrid'in katkılarıyla hazırladığımız bu bölümde, kariyerini yönetici olarak seçenler ve seçmeyenler hakkında derinlemesine konuştuk ve tartıştık. 

    "Yazılımcı kariyer yolunda ilerlemek için yönetici olmak zorunda mıdır?",

    "Yöneticilik terfi midir yoksa bir kariyer değişikliği midir?", 

    "Yazılımının bir günü nasıl olur? Neler yapar?",

    "Yöneticinin sorumluluğu nedir?" sorularına cevaplar aradık.

    Bahsi geçen makaleye aşağıdaki linkten ulaşabilirsiniz.

    https://www.bti360.com/what-ive-learned-in-45-years-in-the-software-industry/



     

    48 min
  • 506 - Veri Yapıları ve Algoritmik Karmaşıklık

    Geliştirilen yazılımı canlıya aldığınızda beklediğiniz performansı göstermemesi her yazılımcının kabusu! Talentgrid'in katkılarıyla hazırladığımız bu bölümde, optimizasyon, algoritmik karmaşıklık ve veri yapıları gibi konuları derinlemesine tartıştık. Big-O notasyonun günlük hayatımızdaki yerini ve istemsizce bu tekniği nasıl kullandığımızı konuşarak başladığımız bölüme, ölçeklenme ve optimizasyon tekniklerini konuşarak devam ettik. 

    Hepimizin kullandığı frameworkler ve paket yöneticileriyle projelerimize eklediğimiz yazılımların algoritmik karmaşıklık üzerine olan etkileri nedir sorusunu sorduk.  Bu kullanım örüntülerinin algoritmik karmaşıklığa olan etkisini ve bir yazılımcı olarak bu etkiyi negatif spektrumdan uzaklaştırma yöntemleri üzerine kafa patlattık.

    Artık standart halini almış  bulut mimariler ve üzerinde çalışan algoritmaların algoritmik karmaşıklık ile ne gibi ilişkileri olduğunu, ne gibi optimizasyon yöntemleri uygulanabileceğini kendi tecrübelerimizden yola çıkarak sizlere anlatmaya çalıştık.

     Dünya devlerinin ne gibi teknikler kullanarak karşılaştıkları problemleri çözdüklerine de kısaca değindik, bu noktada fan-out, bulkheading, pull/push, precalculation gibi kavramlardan bahsettik.

    Mert'in bahsettiği kendi kendine kapanan monitör fenomenin detaylarını şuradan bulabilirsiniz :)
    https://twitter.com/royvanrijn/status/1214162400666103808?s=21

    En sonda bahsettiğimiz "Nasıl yapılır?" (ya da yapılmaz) konulu içerikler:
    CF Reverse Proxy + Terraform
    Uber nasıl yapılır?
    WhatsApp nasıl yapılır?
    Twitter nasıl yapılır?

    45 min
  • 505 - Farklı veritabanları ve veritabanı seçim rehberi

    Veritabanlarını doğru seçmek ve doğru ekibi kurarak bu veritabanlarını yönetmek çoğu zaman bir projenin kaderini belirleyen kararlar olabiliyor. Bu bölümde Talengrid'in katkılarıyla Gülçin Yıldırım Jelínek ile birlikte bu konuyu ele almaya çalıştık ve bir çok soruya cevap aradık. Neden isterlerimize göre veritabanı seçmeliyiz? Elimizde ne tür farklı seçenekler var ve bunları nelere göre değerlendirmeliyiz? Ekiplerin yetkinleri bu seçime nasıl etki eder? DBA'in nedir, görev tanımında ne vardır? Veritabanı için DevOps ne ifade eder? Yaptığımız veritabanı değişikliklerini nasıl canlı ortamlara taşımalıyız?  Veritabanı sorgularını nasıl takip ediyoruz, metriklerini ne şekilde toplayıp ölçüyoruz?

    Güzel bir migration hikayesi olarak Strava'nın macerası https://medium.com/strava-engineering/the-boring-option-4a7c6ad16ab8

    55 min
  • 504 - Problemin doğasına göre teknoloji seçimi rehberi

    Talentgrid'in katkılarıyla yepyeni bir seriye başlıyoruz!  Bu seride firma olarak tek bir teknoloji seçimine bağlı kalmamanın faydalarından bahsediyor olacağız ve gelecek bölümlerde konuklarımızla farklı teknoloji seçimlerinin nasıl sonuçlar doğuracağını tartışacağız. Bu yüzden serinin ilk bölümünde polyglot kavramını konuştuk.

    Tek bir dile bağlı kalmamanın avantajları neler? Farklı işler için farklı veritabanları kullanmak bize neler sağlar?  Neden büyük firmalarda farklı takımlar farklı teknolojiler kullanıyorlar ve bu onlara ne gibi avantajlar katıyorlar? Hız ve ölçeklenebilirlik ne kadar önemli bir seçim kriteri? Saklanan veri boyutuna göre veritabanı tercihlerimizi nasıl değiştiriyoruz? Doğru problem için doğru yazılım dilini nasıl seçiyoruz?

    Yayında bahsettiğimiz konuların linkleri:
    * https://engineering.fb.com/2013/06/25/core-data/tao-the-power-of-the-graph/ 

    39 min
  • 503 - BDD ve test yöntemleri hakkında her şey

    Talentgrid'in katkılarıyla yeni bölümde BDD ile açılışı yapıp test edilmesi en zor konuları nasıl test ettiğimizi konuştuk. Asenkron çalışan servisler, karmaşık mesajlaşma protokolleri, hatta ürettiğiniz PDF'in formatı gibi zor konuları nasıl test ediyoruz? Bunu yaparken hangi framework ve teknolojileri kullanıyoruz? Testlerin ne kadarını otomatize edebiliyoruz? Bunun ekibe etkileri nasıl oluyor? sorularına cevap aradık.

    • https://docs.pact.io/
    • https://martinfowler.com/articles/consumerDrivenContracts.html
    • http://wiremock.org/
    • https://specflow.org/
    • https://cucumber.io/
    • Guvenlik testleri - http://gauntlt.org/
    • Event storming içerikleri - https://www.youtube.com/watch?v=8BgWQrG4Akw 
    51 min
  • 502 - Yeni ön yüz teknolojileri ve birbirine göre avantajları

    Sezonun ikinci bölümünde Progressive Web Apps, Static Site Generator, Single Page Application, Server Side Rendering, Accelerated Mobile Pages gibi ön yüz teknolojilerini ve yöntemlerini konunun uzmanı konuğumuz Önder Ceylan ile konuşuyoruz. Önder sabırlı bir şekilde bütün sorularımızı cevaplamakla kalmadı vizyonumuza vizyon da kattı. İşi sadece bir yazılımcı açısından değil, ürün geliştirmenin ve yönetmenin kolaylıkları açısından da ele alarak bizi aydınlattı. Ekip olarak çok şey öğrendiğimiz hem uzun, hem de çiçek gibi bir yayın oldu. 

    Yayında geçen konularla ilgili linkleri de aşağıda yayınlıyoruz.

    https://developers.google.com/web/updates/2019/02/rendering-on-the-web

    https://web.dev/progressive-web-apps/

    https://staticsitegenerators.net/

    https://www.statista.com/statistics/1012285/united-states-developer-average-salaries-location/

    https://www.statista.com/statistics/627312/worldwide-developer-population/

     

    1 hr 3 min

About Codefiction Podcast

From the publisher's feed

Türkiye'deki yazılımın kalitesini ve sektör problemlerini kendilerine dert edinmiş, farklı disiplenlerden gelen bir grup yazılımcının toplanıp, yazılım geliştirme yöntemleri ve teknolojileri üzerine…