Weptile Mini Mülakat Soruları

Aday: Hasan Hüseyin Özgür • Rol: Junior/Mid Software Engineer • Son Güncelleme:

1. İlanımıza neden başvurdun? Çekici gelen, kendine uygun gördüğün detaylar veya genel olarak beklentilerin neler?

Weptile ile aslında yollarımız daha önce, 8 Aralık 2023’teki bir önceki başvuru sürecimde de kesişmişti; dolayısıyla sizi bir süredir takip ediyorum.

Bir şirketin iç dinamiklerini tam olarak bilmek zor olsa da, dışarıdan bir gözle baktığımda sadece vitrin bir portfolyo değil, ortaya konmuş, yaşayan gerçek ürünler görüyorum. Kurucularınızın YouTube gibi mecralardaki paylaşımları ve özellikle Türkiye şartlarında çok nadir rastlanan, ilanda şeffaf maaş aralığı belirtme kültürünüz, firmanın kendine olan güvenini ve dürüstlüğünü net bir şekilde hissettiriyor. Bu güven ortamı ve vizyon, kariyerimde beni bir sonraki adıma taşıyacak o potansiyeli burada bulabileceğime dair inancımı pekiştiriyor.

2. Daha önceki deneyimlerine dayanarak bizde olmamasını umduğun veya aksine önceki olumlu deneyimlerine uygun bizde de beklediğin şeyler neler?

Önceki deneyimlerimde beni en çok yoran ve sizde olmamasını umduğum şeyler; kaotik çalışma ortamları ("koştur koştur" yapılan işler), gerçekçi olmayan teslim tarihleri ve sürekli "acil" koduyla istenen, temeli olmayan talepler.

Bunun aksine, idealimde ve sizde görmeyi umduğum yapı; bir projenin daha tasarım (UI/UX) aşamasındayken ekiple birlikte masaya oturduğumuz, planlamayı beraber yaptığımız ve ardından temiz bir kodlama süreciyle başarılı deploy'lara ulaştığımız, ayakları yere basan bir süreç.

"Şirket kültürü" bazen klişe gibi duyulsa da ben bunun gerçekliğine ve gerekliliğine inanıyorum. Bu bağlamda beklentim, temeli sağlam bir yapı ve mentörlük vizyonu. Elbette bir Polyanna değilim; ticari gerçeklerin ve şirkete katmam gereken değerin farkındayım. Ancak bu ilişkinin tek taraflı değil, beni de besleyen ve geliştiren karşılıklı bir yapı olmasını umuyorum. Henüz bu dengeyi ve samimiyeti tam anlamıyla yakalayabildiğim bir yerde bulunmadım, Weptile’da bunu bulmayı hedefliyorum.

3. Geçmişte içinde bulunduğun en zorlu, büyük veya karmaşık 1-2 projeyi ve bu projelerde ne yaptığını çok kısaca özetler misin?

Bir Shopify projesinde, tamamen özel (custom) olarak hazırlanmış bir UI tasarımını, maalesef önceden satın alınmış hazır bir tema altyısına giydirmek zorunda kalmak benim için teknik ve süreçsel açıdan en zorlayıcı deneyimdi.

Projede bir Senior PM bulunsa da odağı daha çok mobil uygulama ve AI tarafındaydı; bu yüzden frontend tarafındaki teknik kararlarda ve uygulamada büyük oranda yalnızdım. Bu süreçte inisiyatif alarak uluslararası Shopify tecrübesi olan bir tanıdığımdan mentörlük desteği aldım. Mevcut yapıyı analiz ederek yönetime iki çözüm önerdim: Ya modüler bir yapı kurup tekrardan kaçınmak ya da temiz bir başlangıç için Dawn gibi bir starter tema kullanmak.

Yönetim kararı mevcut temada kalmak yönünde olunca; hazır temanın kısıtlayıcı yapısı içinde, hız ve performanstan ödün vermeden karmaşık Liquid yapılarını kurgulamak ve bu süreci tek başıma yönetmek benim için ciddi bir meydan okumaydı.

4. React.js veya benzeri reactive frameworkler ile deneyimini (varsa) anlatabilir misin?

Açık konuşmak gerekirse, bugüne kadar çalışma hayatım genelde ajans ve WordPress odaklı ilerlediği için React ile ticari, canlıya alınmış bir projem henüz yok. Frontend tarafında jQuery ve JavaScript ile işleri çözmeye alışkınım.

Ancak React’ın mantığını, neden var olduğunu (DOM manipülasyonu, komponent bazlı yapı, sayfanın tamamının yenilenmemesi gibi) teorik olarak biliyorum ve takip ediyorum. jQuery ile "spagetti" kod yazmak yerine, modern bir framework ile daha düzenli ve sürdürülebilir frontend mimarisi kurmayı öğrenmek, kariyerimde atmak istediğim en önemli adım.

5. PHP, Symfony Framework, Laravel veya bu kapsamda diğer dillerde benzer framework'lerle deneyimini (varsa) anlatabilir misin?

PHP ile geçmişim büyük oranda WordPress tema ve eklenti düzenlemelerine dayanıyor. Bu yüzden dilin sözdizimine (syntax) hakimim ancak WordPress ekosistemi gereği genelde prosedürel kodlar yazdım; yani katı bir OOP (Nesne Yönelimli Programlama) mimarisiyle veya bir Framework disipliniyle büyük bir proje geliştirmedim.

Laravel ve MVC yapısı hakkında araştırmalarım ve denemelerim oldu, yapının nasıl kurulması gerektiğine dair fikrim var ama buna "profesyonel deneyim" demek doğru olmaz. Symfony'nin veya PHP'nin modern framework yapısının içinde olmak beni korkutmuyor, aksine kod kalitemi artırmak ve "baştan savma" değil, "mühendislik" standartlarında kod yazmayı öğrenmek için bunu harika bir okul olarak görüyorum.

6. Aramıza katılırsan hangi alanlarda daha çok çalışmak, katkı sağlamak istersin?

Uzun vadede hedefim, bir ürünün hem arayüzünü hem de arkadaki işleyişini kurgulayabilen Full-stack yetkinliğe ulaşmak. Sadece kod yazmak değil, ürünün tasarım süreçlerini de anlayabilen, "ürün odaklı" bir geliştirici olmak istiyorum.

Ancak başlangıç aşamasında ekibe en hızlı katkıyı Frontend arayüz giydirme tarafında verebilirim. Tasarımı birebir koda dökme konusundaki tecrübemle bu alandaki iş yükünü hafifletip, projenin görünür yüzünü hızlıca ayağa kaldırabilirim. Bu süreçte React mantığını ve Backend yapısını da işin mutfağında öğrenerek sorumluluk alanımı genişletmek isterim.

7. Aramıza katılırsan hangi konuda kendini geliştirme imkanı yakalamak istersin?

Bugüne kadar işleri bir şekilde "çalışır hale" getirmeyi öğrendim; şimdi ise işi "mühendislik disipliniyle" yapmayı öğrenmek istiyorum.

En büyük gelişim hedefim; Best Practices, Clean Code ve modern framework mimarileri (React & Symfony) konusunda standartlara uygun kod yazabilmek. Günü kurtaran çözümler yerine, ekibin bir parçası olarak sürdürülebilir ve kaliteli bir yapının nasıl kurulduğunu deneyimlemek ve bu kültürü kazanmak istiyorum.

8. Uzaktan çalışma vs. ofisten çalışma konusunda deneyimlerin ve tercihlerin neler? İlerleyen aylarda bazı günler Urla'daki ofisimizde çalışmaya ne dersin?

Yazılım dünyasında işler uzaktan yürüyebilse de, yüz yüze iletişimin yarattığı sinerjinin ve sosyalleşmenin yerini hiçbir dijital aracın tam tutmadığını düşünüyorum. Hatta samimiyetle söyleyebilirim ki; bir önceki tamamen uzaktan olan işimden ayrılıp yeni bir arayışa girmemin temel sebeplerinden biri, İzmir içinde ekiple fiziksel olarak da etkileşime girebileceğim hibrit bir düzen arayışımdı.

Hali hazırda İzmir'de yaşıyorum. Urla merkeze biraz mesafeli olsa da ulaşım benim için bir engel değil. Aksine, ofis günlerini ekiple bir araya gelmek ve o kültürü paylaşmak için keyifli bir fırsat olarak görüyorum.

9. Freelance iş yapıyor musun? Aramıza katıldıktan sonra ek olarak dışarıya freelance işler yapmaya devam etmek istiyor musun?

Şu an aktif olarak freelance projeler yürütüyorum. Ancak bir ekibe tam zamanlı dahil olduğumda, dışarıya ticari iş yapma fikrine samimiyetle söylemek gerekirse sıcak bakmıyorum. Hem odağımı ana işime vermek hem de sürdürülebilir bir iş/hayat dengesi kurmak benim için çok daha önemli.

Sadece şeffaflık adına şunu belirtmeliyim; şu an elimde taahhüdünü verdiğim ve devam eden bir proje var. Eğer sizinle yola çıkarsak, sadece bu mevcut işi teslim edene kadar tamamlayıp (bunu da açıkça konuşarak), sonrasında dışarıdan yeni bir müşteri veya iş almayı planlamıyorum. İlerleyen süreçte belki sadece kendimi teknik olarak geliştirmek adına ticari olmayan yan projelerle ilgilenirim.

10. Herhangi bir projede sıfırdan ürün, feature veya entegrasyon geliştirme konusunda deneyimin nedir?

Önceki cevaplarımdan da az çok resim netleşmiştir aslında. Benim deneyimim genelde "out-of-the-box" yapılar. WordPress ve Shopify gibi sistemler üzerine kurulu. Ama bu sadece "tema kurup geçmek" değil tabii ki.

Genelde müşterinin özel isteklerini karşılamak için bu sistemlerin sınırlarını zorlamam, sıfırdan eklenti mantığı kurgulamam veya var olan bir yapıya tamamen "custom" bir feature entegre etmem gerekti. Özellikle Shopify tarafında Liquid ile sıfırdan modüller kodlamak veya bir tasarım bloğunu hazır yapıyı bozmadan sisteme entegre etmek gibi konularda pratik çözümler üretme konusunda kendime güveniyorum. Yani sıfırdan bir "framework" yazmadım belki ama, var olan bir ürüne sıfırdan özellik kazandırma kaslarım kuvvetlidir.

11. Kod yazarken AI kullanım tercihin ve alışkanlığın nasıl? Neyi, nerede, nasıl ve ne kadar kullanıyorsun?

Benim için en büyük artısı, öğrenme sürecimi inanılmaz hızlandırması ve kolaylaştırması oldu. En sık bu amaçla, yani bir nevi "kişisel asistan" veya "öğretmen" gibi kullanıyorum.

Özellikle freelance işlerde veya bilmediğim bir teknolojiye dokunduğumda, eksik kaldığım noktaları çok iyi tamamlıyor. Ama prensibim net; eğer bir kod parçacığı veya template yazdırdıysam, mutlaka "bunu bana satır satır anlat" veya "neden bu yolu seçtin?" diye sorarım. Kodu kopyalayıp geçmektense, mantığını kavramak ve öğrenmek benim için daha önemli.

Genel AI algısına gelirsek; ortadaki o devasa "hype"ın biraz abartıldığını düşünüyorum açıkçası. O yüzden ben biraz daha dengeli taraftayım; ne tamamen reddediyorum ne de işi yapacak sihirli bir değnek muamelesi yapıyorum. Sadece işimi hızlandıran güçlü bir araç.

12. Yazılım ekiplerinde çalışma deneyimine göre, sence ideal takım nasıl çalışabilir? Toollar, ritüeller, toplantılar konusunda senin idealin nasıl olurdu?

Genelde Agile pratiklerine, özellikle o her sabah yapılan kısa "daily" toplantılarına aşinayım ve bu ritmi seviyorum aslında. Çünkü günün başında herkesin ne yapacağının net olması, kafa karışıklığını önlüyor.

Araç tarafında Trello, Jira, ClickUp ve Slack gibi araçların hepsini aktif kullandım. Benim bakış açım şu; bu araçlar ve ritüeller işimizi kolaylaştırmak için var, bize ekstra iş çıkarmak için değil. Sistem doğru kurgulandığında gerçekten ekibin sırtından yük alıyor, iletişimi hızlandırıyor. Ama tersi senaryoda, yani araçlar amaç haline geldiğinde işe engel olmaya başladığını da gördüm. İdealim; iletişimin kopuk olmadığı ama toplantıların da iş yapmamızı engellemediği dengeli bir yapı.

13. İngilizce seviyen ve kullanım alışkanlığın nedir? Documentation, email, chat, video görüşme, native? Detay verebilir misin?

İngilizce konusunda temelim oldukça sağlam diyebilirim. Hem kolej geçmişim hem de üniversite eğitimimin %100 İngilizce olması sayesinde teknik ve akademik dile hakimiyetim var.

"Native" demek biraz iddialı olur belki ama dokümantasyon okumak, yazılı iletişim kurmak veya video görüşmelerde kendimi ifade etmek konusunda hiçbir bariyerim yok. Ayrıca sadece işle sınırlı kalmıyor; RPG oyunları, Magic: The Gathering ve board game gibi hobilerim sayesinde İngilizce hayatımın doğal bir parçası ve sürekli aktif olarak kullanıyorum.

14. Maaş beklentin tam olarak nedir?

Sizin bu konudaki şeffaf yaklaşımınıza (Open prensibi) aynı samimiyetle karşılık vereyim. Başvurumu yaparken ilanda belirttiğiniz maaş aralığını zaten değerlendirdim ve bu aralık benim beklentilerimle gayet uyumlu.

Kendi yetkinliklerimi ve potansiyelimi düşündüğümde, belirttiğiniz bandın içinde yer aldığımı görüyorum. Dolayısıyla şu aşamada spesifik, tek bir rakam telaffuz etmek yerine; ilandaki aralığın benim için makul olduğunu ve sürecin olumlu sonuçlanması halinde bu bant içinde, karşılıklı memnuniyetle el sıkışacağımıza inandığımı söyleyebilirim.

15. Github linki gönderip güncel referans olarak bakmamızı önereceğin repoları (varsa) yazar mısın?

Kariyerimin büyük kısmı ajans tarafında geçtiği için GitHub kültürüm veya "public" repo sayım ne yazık ki çok zengin değil; işler genelde kapalı devre veya versiyon kontrolsüz yürüyordu.

Ancak güncel olarak; WordPress'e alternatif arayışım sırasında Ghost CMS ile tanıştım ve onu incelemeye başladım. Bu sürece girmişken sadece tema kodlayıp geçmek istemedim; Gulp task'leri ve CI/CD süreçlerini de işin içine katarak, ajans alışkanlıklarının dışında, kendi çapımda daha modern ve otomatize bir yapı kurmaya çalıştım.

Kod kalitem ve yaklaşımım hakkında bu proje referans olabilir: Ghost Theme - Midnight Codex.
Ayrıca tüm çalışmalarıma GitHub Profilimden ulaşabilirsiniz.

16. Eklemek istediğin herhangi bir şey var mı?

Şu aşamada süreç, beklentiler ve firmanın vizyonu kafamda gayet netleşti, bu yüzden şu an için ek bir sorum yok.

Hem ilandaki detaylı açıklamalarınız hem de bu sorularla beni daha yakından tanımaya yönelik yaklaşımınız için teşekkür ederim. Sorulara verdiğim cevaplar umarım benim şeffaflığımı ve bu işe olan hevesimi yansıtabilmiştir. Yüz yüze görüşmede teknik detayları ve projeleri daha derinlemesine konuşmak için sabırsızlanıyorum.