Programlama dilleri teorileriyle çok ilgileniyorum ve bu konuda doktora uygulayacağım, ancak lisansüstü eğitimden sonra kariyer hakkında daha fazla bilgi edinmek istiyorum. profesör olmanın yanı sıra hangi mesleği de alabilirim?
Programlama dilleri teorileriyle çok ilgileniyorum ve bu konuda doktora uygulayacağım, ancak lisansüstü eğitimden sonra kariyer hakkında daha fazla bilgi edinmek istiyorum. profesör olmanın yanı sıra hangi mesleği de alabilirim?
Yanıtlar:
Programlama dillerinde ve otomata teorisinde profesyonelseniz, derleyici geliştiricisi veya arka uç optimizasyon uzmanı olarak yeterli endüstri fırsatına sahip olmalısınız.
Sürekli yeni diller geliyor ve mevcut diller geliştiriliyor veya yeni platformlar hedefleniyor. Örneğin C ++, C ++ 0x'e taşınırken, donanım adamları Verilog'dan SystemVerilog'a taşınır ve ARM tüketici cihazlarında giderek daha fazla kullanılır. Tüm bunlar derleyici geliştiricileri için iyi fırsatlar sunmaktadır.
Son olarak, çok çekirdekli mimarilerden faydalanabilecek derleyici geliştiricileri, önümüzdeki yıllarda tünele hükmedeceklerdi.
Derleyici işleri için buraya bakın .
Michael Feathers bir keresinde, programlamaya katılan çoğu insanın bilim adamından mühendislere kadar uzanan bir ölçekte olduğunu bulduğunu yazdı.
Bilim adamları tekmeyi öğrenme ve anlamadan alırken, mühendisler bir şeyler inşa etmeyi ve çalışmasını izlemeyi severler.
Aşırı mühendislerin sonunda, sadece işleri devam ettirmek için sürekli olarak yeni kodlar ya da korsanlıklar çıkarırsınız. Büyük resmi görmezden gelme eğilimindedirler. Öte yandan, aşırı bilim adamları, başları büyük, bulutlu çerçevelerde mimar astronotlar haline geldi ve ömürleri boyunca hiçbir zaman çalışma kodunu vermediler. En iyi programcılar ortada bir yerdedir.
Bir programcı olduğumu düşünürdüm, çünkü okumayı çok severdim ve saatlerce harcadım. Birkaç işten sonra, her zaman daha iyi bir yol ya da bir şeyler yapmak için "doğru yol" aradığım için aslında bir sorunum olduğunu fark ettim. En azından "normal" bir geliştirici işinde, bilim adamı tarafında çok fazla olduğum ortaya çıkıyor.
Her iki şekilde de, sanırım biri ya da diğeri için bir tercihle doğdunuz (son zamanlarda kişilik türleri, özellikle Myers-Briggs Tip Göstergesi hakkında çok şey okudum ve bunun S / N ile ilgili olabileceğine dair bir önsezim var. işlev, bununla ilgilenenler için). Kendimi daha pratik ve daha “yapıcı” olmaya zorlamaya çalıştım, ama yanıyorum.
Asıl soruya doğru olan nokta, doktora yolunda yürürseniz, muhtemelen teorik şeyleri "pratik şeyler inşa etme" -çalışmasından daha çok beğenmeye meyilli olduğunuzdur. Bunda yanlış bir şey yok, ama bence böyle bir kariyer seçimi genellikle bilimsel / eğitimsel bir kariyerde sizi kilitleyecektir. Doğrudan doktora programından yüksek ücretli danışman işine geçmeyi bekleyemezsiniz. "Gerçek dünyada" çalışmayı öğrendiğiniz şeyler kitaplardan öğrenilen en iyi uygulamalardan oldukça farklıdır.
Alternatif olarak, doktora sonrası kendi işinizi kurmak ve araştırma yaparken keşfettiğiniz fantastik teorilere dayalı bir uygulama geliştirmek (veya birisini geliştirmek için işe almak) elbette.
Birkaç yıldır doktora yapmayı düşünüyorum (şu anda bir tez yüksek lisans derecesi üzerinde çalışıyorum) ve akademi ve endüstride doktora sahiplerinin bana söylediği bir numaralı şey:
Para veya kariyer beklentileri nedeniyle doktora almayın, sadece yaptığınız şeyden gerçekten zevk alıyorsanız ve yıllarca derinlemesine çalışmak istiyorsanız harcayın.
Fanantic23 , işlerin kariyer yönünü oldukça iyi kapladı, ancak doktora için çok fazla iş yok, bu yüzden doktora programına girmeden önce paradan başka bir şey öğrenmek için zaman harcamak istediğinizden emin olmanız gerekiyor. .
Akademik bir iş bulmaya güveniyorsanız ya da tıpkı ondan önce sahip olduğunuz gibi bir mühendis olmak için uzun yıllar harcamak istemiyorsanız doktora gitmeyin.
Sizi caydırmak için değil, CS'de ve özellikle programlama dilleri gibi konularda doktora sahibi olanların büyük çoğunluğu profesör olarak OLMAYACAKTIR. Sadece dolaşmak için yeterli araştırma işi yok.
Endüstrideki araştırma işleri, daha iyi ödeme yaptıkları ve öğretim gereklilikleri olmadığı için, akademideki araştırma işlerinden bile daha az yaygındır ve kullanılabilir.
Bu şekilde düşünün: Yılda yayınlanan PL bilimsel makale sayısına bakarsanız ve kağıt başına bir doktora öğrencisini varsayarsanız, bu kişilerin hepsi profesör olmayacaktır.
Doktora programımı PL'nin en güçlü alanlardan biri olduğu CMU'da Yazılım Mühendisliği'nde yaptım (PL'de en iyi 3 programız). Bildiğim kadarıyla PL'de doktora derecesini alan herkesin akademik pozisyonlarında sadece iki kişi vardı. Diğer herkes yazılım mühendisi olarak çalışıyor. PL ile ilgili konular üzerinde çalışan birini biliyorum, ama diğerleri genelcidir.
Size PL araştırma yapan, size deneyim hakkında daha fazla bilgi verebilecek kişilerle iletişime geçmemi istiyorsanız, özel olarak bana ulaşın.
Doktora programına başlamadan önce alma materyali profesörlerinizle konuşmalısınız.
Tipik olarak bir doktora ya araştırma laboratuvarında çalışır ya da profesör olur. Ömür boyu kazanç genellikle MS derecesinin oldukça altındadır.
Programlama dili teorisi muhtemelen sizi derleyiciler yazma alanına sokacaktır.
Ayrıca, bunları okuyarak bulmak zor değildir - bu soruyu sorarsanız doktora hazır olduğunuzdan şüpheliyim.
Aynı kariyer / dersin (Yüksek lisans tezim Derleyici-Tasarım ile ilgili olduğu ve ayrıca her iki kavramın da “Programlama Dilleri Teorisi” ile ilgili) bir ders verdim.
Ancak, bir "hobi olarak" bir "fatura ödeme" kariyer.
Ayrıca, Programlama Dilleri Teorisi'nin çok fazla matematik uyguladığı, ancak pratik bir şekilde uygulanması zor olan bir sorun vardır.
Bu kursa zaten sahipseniz, nasıl başvuruyorsunuz?
Örneğin, kendi Java Derleyicinizi oluşturun, orijinalinden daha hızlı yapın, birkaç şey ekleyin ve satın. Örnek: "HotSpot"
Veya, "Java / C # bir tost makinesinde çalışan" derleyici ve satmak ;-) gibi bir şey
Bir Kolej / Üniversitede Otomaçlar, Derleyici Tasarımı, Programlama Dillerinin Karşılaştırılması vb. Gibi ilgili kavram sınıflarının öğretilmesi.
Ayrıca, faturaları ödeyen (Denendi ve başarısız oldu) standart bir programcı işine sahipken kendi küçük başlangıç, tam zamanlı veya boş / yarı zamanlı da oluşturabilirsiniz. : -s
Bu özel becerileri gerektiren yazılım ürünleri üretebilen birkaç şirket var.
(Çoğunlukla, belirli bir sanal / fiziksel makine, kendi XML ayrıştırıcısı vb. İçin bir programlama dili ve eşleşen derleyici tasarlama).
Ancak, çoğu uzmanlık alan bir geliştiriciden daha ucuz bir geliştirici kiralamayı tercih ediyor gibi görünüyor ...
CS'de programlama dilleri teorisine odaklanan bir doktora sizi akademinin dışında bir işe götürebilir, ancak büyük olasılıkla hala araştırma alanına girebilir. Microsoft (MS Research veya Microsoft aracılığıyla), Google, Amazon, Ericsson, HP, IBM Research, Oracle olası işverenler olabilir.
İş fırsatlarınızı gelecekteki tezinizin dışında genişletirseniz, Ph.D. işe alma grupları da çalışmalarınızın derinliği için sizi dikkate alacaktır.
Ve bu sadece ticari sektörde. DoE'ye ve onun birçok laboratuvarına (Laurence Livermole, Sandia, vb.) Veya DoD'ye veya Raytheon, General Dynamics (işverenim) veya Lockheed Martin gibi askeri yüklenicilere bakarsanız, bilim adamları ve araştırmacılar için mevcut pozisyonlar vardır. NSA da sizi işe almak istiyor.
Bilim doktorası olan insanlar için akademik olmayan fırsatlar, BS veya MS derecesi gerektirenlerden daha azdır (çok daha azdır), ancak yine de bol miktarda, iyi ücretlendirilmiş ve ödüllendiricidir.
İyi şanslar.