Belirli bir teknolojiyi bilen bir şirketteki tek geliştirici, yaptığım programlama türünü yapan tek şirket ve benzer durumlarda müteahhit olarak çalıştım. (Ayrıca farklı araçlar bilen diğer geliştiricilerle ve tam olarak ne yaptığımı yapan diğer geliştiricilerle ekip ortamlarında çalıştım.)
Tek programcı olmanın artıları
- Bahsettiğiniz gibi, sıklıkla öğrenebileceğinizi düşündüğünüz araçları veya dilleri kullanma özgürlüğüne sahipsiniz. Herkes Current Technology Y kullanırken New Technology X ile çalışma izni almak için akranlarınızdan önce her zaman bir dava açmanız gerekmez.
- Daha fazla sorumluluğunuz var. Esasen, projelerinizin her birinde hem proje lideri hem de geliştirici olarak işlev görüyorsunuz ve yeni şeyleri belirleme ve uygulama yeteneğinizle, bölüm başkanı da etkili bir şekilde sizsiniz. (Satış elemanlarına bunu söyleme. Karar vericilerle konuşmayı severler ve onlarla konuşmak için zamanınız yoktur.)
- Yapılan iş için kredi ile ilgili bir soru yok: Açıkçası sen ve yalnız olan şeylerin gerçekleşmesini sağladın.
- Aslında kendi projeleriniz üzerinde çalışmak için daha fazla zaman harcayabilirsiniz ve temelde başka birinin projeleriyle ilgili toplantılarda daha az zaman harcayabilirsiniz (ancak destek görevlisi, olası yedekleme veya her neyse oradasınız).
Eksileri
- David'in bir yorumda belirttiği gibi, tek geliştiricisiniz, bu yüzden sensiz hiçbir gelişme yapılmaz. Bir zamanlar kardeşime işteki belirli bir projede "adam" olduğum için övündüm. Durumumu benim için doğru bir şekilde tarif etti: Kapana kısıldım. O şirkete devam edemedim çünkü o projeden asla kurtulamazdım. (O da haklıydı. Onu biraz destekleyebilecek birisine bile teslim edebilmek uzun bir süre boyunca birkaç ay sürdü.) Hiçbir şey yapamadığında gerçek bir tatil yapmak zor olabilir. sensiz yapılabilir.
- Pierre'in işaret ettiği gibi, sitede kod incelemeleri yapacak veya en iyi uygulamaları sizinle paylaşacak kimse yok. Akranlara çeşitli şekillerde ulaşabilirsiniz, ancak hiçbir şey omzuna bir iş arkadaşına dokunmak ve ondan 5-10 dakika koduna bakmasını istemek kadar etkili değildir.
- Benzer bir şekilde, yeni araçlarla deneyim kazanmakta zorluk çekebilirsiniz. Şirket dışı eğitim, tatil zamanı kadar nadir olabilir: Birisi, şirketin, Dil 2.0 uygulamalarını çalıştıracak kimsenin olmadığı bir hafta boyunca Dil 3.0'a bakmanıza izin veremeyeceğinden şikayet edecektir.
- Kariyer gelişimini yönetmek son derece zor olabilir. Çalışabileceğiniz bir konumunuz olmayabilir, başlıktaki bir değişikliği bile elde etmek zor olabilir ve yıl sonu incelemelerinin herhangi bir referans çerçevesi yoktur, bu nedenle başkaları için mükemmel çalışma büyük ölçüde fark edilmeyebilir hiç kimse gerçekten ne yaptığınızı anlamıyor.
Bir programcı ekibinin parçası olarak çalışacağınız bir şirkete geçmeye karar verirseniz, solo deneyiminizin size çok fazla zarar vereceğini düşünmüyorum. Tasarım kalıpları ile ilgili deneyim eksikliğiniz, onları öğrenme isteğiniz kadar önemli değildir. (Benzer bir geçmişe sahip bir adayla röportaj yaptığınız ve aynı zamanda şirketin kullandığı yöntemlerde deneyimlediğiniz durumlar olabilir, ancak bu temelde herkes için geçerlidir.)
Aynı çizgide, bir takımdaki deneyim eksikliğiniz birçok şapka giyme yeteneğinizle dengelenir. İyi takım oyuncuları olan ancak bir projeyi yönetme yeteneğini asla geliştirmeyen bazı geliştiriciler vardır; bunu yapabileceğini zaten göstermiştin.
Yalnız bir geliştirici olduğunuzda, benzer geliştiricilerin kullandığı araç ve teknikleri okumak için biraz zaman harcamanızı tavsiye ederim, bu yüzden bunları kendiniz kullanmasanız bile, var olduklarının farkında olabilirsiniz ve bir röportaj sırasında, "Evet, MVC çerçeveleri hakkında biraz okudum, ama ben bunları kendim kullanmadım" demesine rağmen. Diğer geliştiricilerle iletişimde kalmak için neler yapabileceğinizi yapın: yerel kullanıcı grubu toplantılarına gidin, blogları okuyun ve yorum yapın (veya kendinizinkini koruyun), zaman zaman atölyelere gitmeye çalışın, web seminerleri izleyin ve bu gibi şeyler yapın. (Kurum içi eğitim için lynda.com gibi siteleri de düşünebilirsiniz: başka bir yerde bir hafta sürecek bir konferans kadar iyi değil, ancak videoları istediğiniz zaman izleyebilir ve herkesi panik moduna gönderemezsiniz çünkü ofisin dışında.)