Kariyer tavsiyesi: Programlama dilleri teorisinde doktora [kapalı]


16

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 teorileri' ile ne demek istiyorsun?
Kirk Broadhurst

4
programlama dillerinin tasarımı, uygulanması, analizi, karakterizasyonu ve sınıflandırılması ve bunların bireysel özellikleri ile ilgilenen bir bilgisayar bilimi dalı.
user16854

@Kirk: Kendi konferansları ve dergileri ile çok aktif bir alandır (genel konferanslarda birçok yayına ek olarak). PLDI buna iyi bir örnektir. PL'deki CS okulları için ayrı sıralamalar da vardır.
Uri

Yanıtlar:


17

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 .


14

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.


6

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. .


2

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.


1
Yıllar fizik alanında doktora yapmak için harcadım ve çok çeşitli ilginç 'mühendis' işleriyle sonuçlandım. Muhtemelen yine de sahip olduğum aynı mühendislik işleri çeşitliliği, ancak bu israf olduğu anlamına gelmez!
Martin Beckett

Sizinle nasıl irtibat kurabilirim?
tpA

1

Programlama dilleri üzerinde çalışan araştırma laboratuvarlarından birinde çalışmanızı bekleyebilirim, Microsoft ve IBM de bir dizi başka şirkette var. Dil geliştiren veya uygulayan herhangi bir dükkandan bahsetmiyorum bile.


1

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.


CS doktoralı bir kişi, BS / MS'li bir kişiden genellikle 10K-20K / yıl daha fazla kazanır. Google, Microsoft, Adobe, Oracle, vb. Yazılım mühendisi olarak çalışan birçok doktora vardır. Gerçeklerinizi doğrudan alın ve daha az kazanmanın tadını çıkarın.
stackoverflowuser2010

@stackoverflowuser: Yanlış . ömür boyu kazanç , yıllık maaştan farklıdır. Baksana. Doktoralar tipik olarak Google, Microsoft ve ark.
Paul Nathan

1
@oosterwal: Utangaç değil, önemsiz aramalarla değil. Yine de akademik çevrelerde sıkça atılan şeylerden biri. Temel olarak etkileri hesaplamak için yaptığınız şey, farklı başlangıç ​​zamanlarından ve farklı başlangıç ​​maaşlarından bileşik maaş "faiz" i çalıştırmaktır. Bunu yaklaşık 2 yıl önce yaptım: temelde matematik 2 yıl içinde bir Yüksek Lisans almayı ve endüstriye gitmeyi önerir. Başlangıç ​​tarihinin 3-5 (PhD) yıl ertelenmesi bileşik etki yaratır. Tabii ki bu en iyi uçuş yapan insanları dikkate almaz, ancak kişi ortalama olduğunu varsayarsa, doktora yapmamak daha iyi olur.
Paul Nathan

1
@oosterwal - Okula bağlı, ancak çoğu zaman bir doktora öğrencisi öğrenim görmeyecek ve okuldan bir burs alacak. Ömür boyu kazanç hesaplamalarının çoğu, bir Bacholors derecesi sahibi olarak çalışacak ve o zaman dilimi içinde para kazanacakları altı ila sekiz yıllık bir okula sahip olmalarına dayanmaktadır.
rjzii

2
@ stackoverflowuser2010 Ne demek istedin. Bırak gitsin.
Adam Lear

1

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 ...


1

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.


-2

Birçok iş mevcut:


Oracle
Perl6'da Microsoft Java'da C # /. NET (Sanırım fazla ücret almayacağım)
Adobe'de ActionScript

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.