Unvan ve ödeme dışında fark nedir?
Onların farklı sorumlulukları var.
Ne kadar bilgili / deneyimli?
Bir geliştiricinin bu temel yapıya nerede uygun olduğunu belirlemek için temel önlem nedir?
Unvan ve ödeme dışında fark nedir?
Onların farklı sorumlulukları var.
Ne kadar bilgili / deneyimli?
Bir geliştiricinin bu temel yapıya nerede uygun olduğunu belirlemek için temel önlem nedir?
Yanıtlar:
Bu değişkenlik gösterebilir, ancak programcı türleri arasında ayrım yapmak için yeterince büyük bir yerde görüyorum.
Giriş seviyesi ile Junior'ın aynı şey olduğunu söyleyebilirim. Onlar sadece okul dışında ve iki yıldan az iş deneyimi var. En az karmaşık görevlere atanırlar ve oldukça yakından denetlenmeleri gerekir. Genel olarak bildiklerini düşündüklerinin% 10'unu bilirler. Genellikle, tüm gelişim döngüsü boyunca olmadılar ve bu yüzden, seçme fırsatı verilirse, genellikle çok saf seçimler yapıyorlar. Ne yazık ki çoğu aslında gereksinimin ne olduğu umrunda değil, işleri kendi yollarına inşa etmek istiyorlar. Genellikle zayıf hata ayıklama becerilerine sahiptirler.
Orta seviye, pek çok programcının düştüğü yerdir. Bazıları tüm kariyerlerinde bu seviyede kalabilseler de, iki yıldan fazla bir deneyime ve genellikle ondan daha az deneyime sahiptirler. Nispeten rutin görevlere atandıkları sürece çalışma kodunu daha az denetim altında üretebilirler. Genelde yüksek düzeyde tasarım veya derinlemesine bilgi gerektiren çok karmaşık görevlerle görevlendirilmezler. Ancak, özellikle üst düzey bir geliştirici olma bölgesinde olduğu gibi, uygulamanın bir parçasının tasarımı ile görevlendirilebilirler. Bakım çalışmalarında veya bulmacanın sadece bir parçası üzerinde odaklanabilecekleri görevlerde iyidirler, ancak genellikle üst düzey geliştiricilerle çalışmadan veya üst seviyeye terfi için hazırlıklı olmadıkça başvuruyu bir bütün olarak düşünmeleri beklenmez. Genellikle iyi bir sorun giderme ve hata ayıklama işi yapabilirler, ancak zor olanları bulmak için gerçekten uğraşmaları gerekir. Sorunları, meydana geldikleri muhtemel yere yönlendiren problemleri görmek için henüz yeterli deneyime sahip değiller. Ancak bu becerileri kazanıyorlar ve nadiren hata ayıklama yardımı talep ediyorlar. Muhtemelen en az bir kez tüm gelişim döngüsü boyunca olmuşlardır ve tasarım problemlerinin sonuçlarını görmüşlerdir ve gelecekte nasıl önlenebileceklerini öğreniyorlar. Genellikle, yüz değerinden bir gereksinim alma eğiliminde olma eğilimindedirler ve bariz sorunları veya boşlukları olduğunda geri itmeme eğilimindedirler. Ne bilmediklerini bilmek için yeterince bilgi edindiler ve bu bilgiyi edinmeye başladılar. Onlar programlama dünyasının işgücüleridir,
Üst düzey bir kimsenin bu soruyu sorması bile gerekmez. Seçtikleri teknoloji yığınlarında uzmandırlar. Zor görevler (nasıl çözüleceğini kimse bilmez) verilir ve genellikle tasarım sorumluluğu alırlar. Genellikle bağımsız çalışırlar çünkü malları teslim ettikleri kanıtlanmış bir sicile sahiptirler. Genç ve orta geliştiricilere rehberlik yapmaları beklenir. Genellikle şaşırtıcı sorun gidericilerdir. Daha önce aynı problemlerle karşılaştılar ve ilk nereye bakacakları konusunda çok iyi fikirleri var. Yaşlılar genellikle işyeri dışında da mentordur. Genellikle en az on yıllık bir deneyime sahiptir ve neredeyse her zaman en az bir ölüm yürüyüşüne çıkmıştır ve bazı şeylerden neden kaçınılması gerektiğini tam olarak bilirler. Çalışan bir ürünün nasıl teslim edileceğini ve son teslim tarihini nasıl karşılayacaklarını biliyorlar. Hangi köşelerin kesilebileceğini ve hangi köşelerin hiç kesilmemesi gerektiğini bilirler. Uzman düzeyinde en az bir ve çoğu zaman birkaç dil biliyorlar. Bir çok "sıcak yeni teknolojinin" işyerine isabet ettiklerini ve kaybolduklarını gördüler, bu yüzden bir sonraki heyecan verici yeni geliştirme aracı için (henüz değişime karşı tamamen dirençli değillerdi) çoğunluğa değindiler. daha yaşlı olanlara asla sıçrama yapmamış eski orta seviye geliştiriciler). İşlerini, kullanıcıların istediklerini yapan, eğlenceli araçlarla oynamamak için çalışan bir yazılım sunmak olduğunu anlıyorlar. Nerede işe yarayacakları konusunda sıkıcıdırlar, çünkü olabilirler ve ilk elden bazı yerlerin ne kadar kötü olabileceğini gördüklerinden. Yapılacak en ilginç görevlere sahip yerleri ararlar. Genellikle birkaç ay olsalar bile şirketlerinin ürünleri hakkında herkesten daha fazla şey biliyorlar. Programlama bilgisinden daha fazlasına ihtiyaç duyduklarını biliyorlar ve destekledikleri iş alanı hakkında bilgi edinmede iyiler. Genellikle gençlerin asla dikkate almadığı sorunların farkındadırlar ve orta dereceli kişiler genellikle destekledikleri iş alanındaki düzenleyici ve yasal konular hakkında düşünmezler. Bir gereksinimi geri alabilirler ve geri çekebilirler, çünkü sorunların ne olacağını biliyorlar ve meslekten olmayanlara da aynı şeyi açıklayabilirler.
Giriş Seviyesi - onlara açık talimatlar vermeli, yaptıkları her şeyi kontrol etmeli, tasarım sorumluluğu çok az veya hiç yoktur, analiz sorumluluğu yoktur
Junior - daha az açık talimatlar, daha az kontrol, bazı küçük tasarım ve analiz sorumluluğu; Giriş seviyesindeki kişilerin derleyiciyi bulmasına ve depoyu kullanmasına yardımcı olur
Üst düzey tasarım ve analiz sorumluluğunun, denetimleri kendi başına, çok az / kontrolsüz, az / az talimatla düzeltmesi beklenir; Junior seviyedeki insanların analiz ve tasarım becerilerini öğrenmesine / geliştirmesine yardımcı olur
Gerçekten, bence ne kadar zamandır bu işte çalışıyorsun? Eğer 10 yıllık bir deneyime sahipseniz, kıdemli bir öğrenci olursunuz, mezunsanız, o zaman muhtemelen giriş seviyesindesiniz. Neredeyse kodlayabilen ve ne yaptıklarını gerçekten bilemeyen pek çok 'kıdemli' dev gördüm ve fantastik olan birçok genç dev gördüm.
Eski okul ustalarının çırak, yolculuk görevlisi ve ustalık dilimlerinin giriş seviyesine, küçüklüğe (ya da sadece ön eke) ve son sınıfa uygun bir şekilde bu yuvalara sığdığını düşünüyorum.
Birine giriş seviyesi, derin sonuçları olmayan nispeten basit görevler verilir ve çalışmaları bir küçük veya yaşlı tarafından kontrol edilir. Zaman geçtikçe daha fazla sorumluluk alırlar ve yol boyunca ipleri öğrenerek daha karmaşık görevler alırlar.
Bir gençlikte (veya sadece "giriş seviyesi" / "junior" un başlık / tanımdan çıkarılması) çıraklığınızı tamamladınız ve her büyük alana dalmanız için şirketiniz için önemli gelişim alanlarını ele aldınız. her biri ile tanıdık. Artık çıraklık eşdeğeri için rehberlik ve girdi sağlamanıza yardımcı oluyorsunuz, ancak kendi çalışmanız hala küçükken olduğu kadar olmasa da, usta / kıdemli tarafından inceleniyor.
Zamanla ve başarılı projelerin teslimi sonunda kıdemli olursun. Üst düzeylerde, tüm gelişim sürecini ve ilgili tüm araç ve teknolojileri kapsayan, bölgenizde kapsanan her şeye hakim oldunuz. Önemli teknik kararlar vermeniz için yetkilendirilmişsiniz ve yazılım geliştirme sürecinde yönetime bir bakış açısı sağlamanız bekleniyor.
Bu nedenle, bu kurallar göz önüne alındığında, bir insana veya bir pozisyona bakabilmeli ve hangi üç kutudan hangisine girdiklerini belirleyebilmelisiniz.
Şirketin programcının beklentilerini azaltacak.
İşe alım şirketiysem ve Giriş Seviyesi programcısı tutuyorsam, o kişinin hiçbir şeyin yanında olduğunu bildiğini ve her şeyi öğrenmesi gerektiğini varsayacağımızı biliyorum. Üst düzey bir insanı teorik olarak işe alırsam, teorik olarak, teknik açıdan kendi kendine yeterli olacaklardır.
Bu kesinlikle şirkete bağlı. Ancak kelimeler oldukça açıktır: giriş seviyesi alana yeni giren, küçük seviye giriş seviyesinin üstünde olan ve birkaç dilde teknolojiyi bilen biri. Son olarak, projeden daha fazla sorumlu olan ve daha üst bir seviyede oturanlar kıdemlidir. Genellikle kodladıkları kadar yetki verebilirler.
Çoğu kişinin dediği gibi, şirketten şirkete ve işten işe değişir.
Mesela bir keresinde 5 yıldan fazla bir süre orada çalışan birini "Kıdemli Yazılım Mühendisi" olarak nitelendiren bir şirkette çalıştım. Diğer uçta, çalıştığım başka bir yerde çok katı tanımlara (ve ilişkili ödeme ölçeklerine) sahipti .
Bazı yerler "giriş seviyesi" ve "junior" ı aynı anlama geldiğini düşünebilir.
Yılların verdiği tecrübe, genel bilgi, özel bilgi (yani belirli bir dilin özelliklerini bilmek), yönetim ve / veya liderlik tecrübesi, bunların tüm kombinasyonları ve kesinlikle daha fazlasına bağlı olarak değişebilir.
Buradaki basit cevabı bulacağım: kıdemli geliştiriciler (genel olarak) ağaçları ormanı görebilen insanlar. Hemen önündeki sorunun ötesinde yüzlerinin önünde düşünürler ve karşılaştıkları sorunu çözmenin bir sonucu olarak hangi mimari değişikliklerin olabileceğini veya olması gerektiğini bilirler.
Gördüğüm çoğu yazılım şirketi, giriş seviyesindeki kişilerin gün geçtikçe kodlama yaparken, yaşlılar yeni insanların ne yaptığını ve gerçekten çirkin, dikenli meseleleri ele aldıklarını denetliyor.
Açıkçası bu sadece benim görüşüm ve zor ve hızlı bir kural değil. YMMV.
İş ilanı sitelerinde ve sadece tecrübe seviyelerinde bulunan kişisel gözlemlerden ve basitçe belirtiniz.
Giriş = Yeni muhtemelen ilk işin.
Junior = Sizin iyiliğiniz, ancak en iyisi olması gerekmiyorsa, genellikle 5 yıldan az ve 2 yıldan fazla deneyime sahip olursunuz .
Senior = En iyi olmanız ve 5 yıldan fazla deneyime sahip olmanız gerekiyor.