Bu gönderiyi yazdığım tarih itibariyle, haftasonlarıyla beraber staja başlayalı yaklaşık 15 gün oldu. Bu blog yazımda; stajyer olarak projeye dahil olma sürecimden, dahil olduğum projeden, bu sürece dair düşüncelerimden ve kazanımlarımdan bahsedeceğim.
Bu yaz; kendimi geliştirebileceğim, takım çalışmalarına dahil olabileceğim ve yeni teknolojiler/diller öğrenebileceğim bir staja, projeye veya işe dahil olmak istiyordum. Amacıma uygun bir yer bulabilmek için Selman Kahya‘nın kurucusu olduğu Topluluk grubunda bu arayışımdan söz ettim. Daha sonra Selman Kahya’nın Topluluk üyelerinden oluşturduğu takımla üzerinde çalıştığı ve hatta YouTube canlı yayını vasıtasıyla geliştirmeye devam ettiği projesi olan Hived.app için stajyer ilanı olduğunu öğrendim. Başvurumu yapıp detayları konuştuktan sonra bu serüvene dahil oldum.
Üstünde çalıştığımız proje bir topluluk sitesi. Bu topluluk sitesiyla amaçladığımız şey: Kullanıcıların fikir, proje, ürün gibi alanlarda bir topluluk oluşturabilmesi ve bu oluşturulan topluluğu etkinlik düzenleme, üyelerle iletişimde kalma ve forum oluşturma gibi çeşitli çözümlerle daha etkin ve verimli bir yere dönüştürebilmek. Özetle hedefimiz, toplulukların en çok ihtiyaç duyduğu çözümleri tek bir çatı altında en iyi şekilde sunabilmek diyebiliriz.
Projeye dahil olduğumda projenin geliştirilmesinde kullanılan teknolojilerin birçoğunu hiç kullanmamıştım diyebilirim. Çok az deneyime sahip olduğum bir projeye dahil olmaktan; yeni şeyler öğreneceğim için hem mutluydum hem de biraz heyecanlıydım. Projede kullanılan başlıca teknolojiler olan ReactJS, GrapQL, Docker gibi teknolojileri elbette duymuştum, ancak hiçbir deneyimim ve bilgim yoktu diyebilirim. Tabi bu projede en çok kullanacağım teknoloji projenin iskeleti olması sebebiyle ReactJS framework’u diyebilirim. Söylediğim gibi ReactJS’de de hiç tecrübem yoktu ancak Javascript biliyor olmamın avantajı bu öğrenme aşamasında bir hayli avantaj sağladı, çünkü adından da tahmin edebileceğiniz üzere ReactJS bir Javascript kütüphanesidir.
Yeni bir teknolojiyi veya programlama dilini öğrenmeyi, okumayı sökmeye veya yeni bir dünya dili öğrenmeye benzetirim; ilk etapta gördüğünüz harflerin ve kelimelerin ne ifade ettiğine dair hiçbir fikriniz yoktur; fakat zamanla harfleri, kelimeleri ve kuralları öğrenmeye başladığınızda artık sizin için hiçbir şey ifade etmeyen harfler, kelimeler ve kurallar bütünü artık beyninizin bir yerinde yavaş yavaş yerini alır ve öğrenme dediğimiz süreç gerçekleşmeye başlar. Ben de var olan bu projeye ilk dahil olduğumda gerek projenin bulunduğu aşamadaki boyutunun fazla olması gerek oradaki teknolojilere olan uzaklığımdan dolayı ilk aşamada neredeyse öğrenmeyi sökmeye çalışan bir çocuk gibiydim. Çünkü, farklı bir syntax’e ve yaklaşıma sahip bir framework vardı karşımda.
C#, Java ve C gibi dillerde ortalığı dağıtan canavar, bu projeyele birlikte yerini miyavlayan bir stajyere bırakmıştı. Her gördüğüm şeyi sorgulama başladım ve tabi bu sorgulama öğrenmenin bir parçası olması sebebiyle çok katkı sağladı. Yeni bir şey öğrenirken, “bir projede bilmediğiniz ne kadar çok şey varsa o kadar öğrenebileceğiniz şey vardır” motivasyonunu benimsiyorum.
Şimdi geriye dönüp baktığımda okumayı bilmeyen bir öğrenciden, hecelemeye başmamış bir öğrenci olduğumu görebiliyorum. Hiç bilmediğim ReactJS, GrapQL, Docker gibi teknolojilere dair öğrendiklerim bir yana sıklıkla kullandığım GitHub gibi teknolojilere dair yeni şeyler de öğrendiğimi söyleyebilirim bu süreçte.
Şu ana kadarki kazanımlarım sadece teknolojilere dair teknik şeyler değil aslında; takım çalışmasına dair de yeni şeyler öğrendim. Örneğin ilk defa, bir proje yöneticisin verdiği görevler üzerinden proje geliştiriyorum; ilk defa, yaptığım işlerin raporunu adım adım tutuyorum. Yeni bir şey öğrenmenin en etkili yollarından birinin proje geliştirme olduğuna inanırdım ve bu inancımın da doğru olduğunu bir kere daha gördüm.
Staj günlüğü serisinin ilk bölümünü bu projeye katılmamı sağlayan ve yeni şeyler öğrenmeme vesile olan Selman Kahya’ya teşekkürlerimle kapatmak istiyorum. Hatta şunu da belirtmem gerekir ki staja başlarkenki şartlarından biri de öğrendiklerimi blog yazısıyla herkesle paylaşmamdı. Bu isteğini dile getirirken mühendisliğin sadece kod yazmaktan ibaret olmadığını belirtti. Bu da staj süresince öğreneceklerimin sadece mühendislik alanıyla sınırlı kalmayacağını, mühendisliğe ek olarak paylaşma, yazma ve kendimi ifade edebilme becerisi gibi konularda da geliştireceğimi söyleyebilirim.
Bu gönderide teknik detaylara girmeden yeni seriye standart bir başlangıç yaptım. Serinin sonraki bölümlerinde biraz daha teknik detaylara yani benim de ilgimi daha çok çeken konulara değineceğim.
Sağlıcakla!