私は独学のプログラマーであり、私の知識を補い、ギャップを埋めるためにコンピューターサイエンスの学位を取得したばかりです。
しかし、私はすでに教育の方向性について議論しています。確かに4年の学士号を取得したいのですが、その後はわかりません。修士号を取得する価値はありますか。博士号はどうですか?これらの学位はどのような機会を開きますか?
現在の私の目標はソフトウェア開発者になることですが、ソフトウェア業界には多くの魅力的な分野があり、それらの多くを調査することに興味があります。この点で、ソフトウェア開発のキャリアに必ずしも役立たない場合でも、より高い学位が価値があると私は思います。
それは価値があるでしょうか?大学院は門戸を開くでしょうか?
博士号を取得すると、2つのことを行い、4年以上使用します。あなたはこれら二つのことは時間の価値があるかどうかを決定する必要があります。まず、名前の後にイニシャルがいくつか表示されます。残りの時間、それらのイニシャルを見る人々は「すごい、あなたは本当に賢いに違いない!」と考えるでしょう。 (そして、多くの場合、彼らはそれを大声で言います。)履歴書では一般的にあなたを助けますが、状況によっては、あなたが資格を超えていると思っている人や卵の頭を傷つけるかもしれません。
第二に、私の意見ではより重要なのは、学位の過程で発生するあなたの脳とあなたの態度の変化です。あなたは他のどの人よりも世界のいくつかの小さな部分についてより多くを知ることになります。あなたは専門家、時には世界的に有名な専門家である3人または4人の前に立ち、あなたの仕事について彼らに教えます。あなたが立ち入ると、それらの専門家は監督者、審査官、一種の「ボス」になり、立ち去ると彼らはあなたの仲間になります。コンピュータサイエンスの1つのコーナーについて多くを学び、あなた自身とあなたの能力について多くを学びます。必要なときに「エキスパート」であると確信できます。そして、それはすべてを変えます。
あなたが教授になりたい、または特定の研究室に参加したいと思っているのでない限り、学部の仕事をする前に博士号について決めることができるのは珍しいようです。学部生をして、いくつかの大学院生と友達を作りましょう。彼らはあなたが大学院生の人生、赤ん坊の教授の人生、あなたが不在のときの就職の見通しなどについて知りたいことすべてを教えてくれます。
博士課程で過ごした時間を後悔していません。それは私に多くの扉を開きました。それは私をより思い出深いものにし(「そうですね、あなたは博士号を持つ女性ですよね?」)、私の能力や知識とは関係なく、いくつかのチームにとって資産でした(「私たちはチームに博士号を持っています!」)。しかし、そのときに参加した業界は、あなたが現在参加している業界ではありません。いまその真っ只中にいる人々と話し、学部生の仕事を終えるときに決定を下してください。
コンピュータサイエンスの博士号を取得している大企業のCEOを誰でも指名できますか?スティーブ・ジョブズ?大学を中退しました。ビルゲイツ?彼は(GPAに基づいて)彼ほど賢くない人々に囲まれていると感じたため、脱落しました。
私は、信じられないほどのシステムで作業する素晴らしいプログラマーがいる企業や、人々が毎日使用しているもの(Windowsなど)や、業界の連携を支援している企業(XMLやSOAPなど)で働いてきました。これらの男の多くは独学で、物理学や電子工学など、コンピューターサイエンス以外の科目を学んでいました。彼らの生活の中でプログラミングする理由は、プログラミングを勉強してプログラミングの仕方を学ぶのではなく、仕事を成し遂げるためのツールとしてだった。
私はまた、1人だけでなく2人の博士号を取得している素晴らしいケンブリッジ卒業生を抱える政府や大企業とも協力してきました。これらは、通信や信号処理などの分野での非常に特定の問題に対する洗練されたエレガントなソリューションを作成した信じられないほど知的な人でした。彼らは金持ちではなかったし、部署で高レベルの仕事もしていませんでした。彼らは「ボフィン」として雇われ、これらの解決策を考えるために一人にされたような気がしました。
私の業界経験では、プログラミング能力とコンピュータサイエンス分野の正式な教育レベルとの間に相関関係はありません。私はソフトウェアエンジニアとしての初期の頃、プログラミングが「私のものほど良くない」(もちろん、IMO)の人が私の前を昇格したのを見ましたが、彼らにはソーシャルエンジニアリングのスキルがあり、適切なことを理解できました適切な人々といつ彼らは自分の道を上っていませんでした-彼らは仕事をすることができました、それは他のスキル(クライアントと話す、締め切りを守るなど)も重要だっただけなので、私のようにコーディングに100%時間を費やしませんでした。
私は重要な教訓を学びました-あなたが成功するためにあなたの内に火があるなら、あなたはあなたの会社/部門をより成功させ、そしてそれゆえより収益性のあるものにするためのビジネス問題への解決策、プログラミングまたはそうでなければ見つけるでしょう。
私が雇ったすべてのプログラマーの中で、私は彼らの教育実績を気にしませんでした。彼らがプログラミングテストに合格し、私の主任エンジニアがその能力に満足していれば、教育は問題ではありませんでした。私たちが雇った最高の男の1人は、学校を卒業したばかりで、学位はまったくありませんでした。
要約すると、テクノロジーとプログラミング自体の芸術/科学に情熱を傾けているなら、必ず魅力的で魅力的な学問の道を追求してください。プログラミングだけでなく、他の場所でも成功を収めたい場合は、ビジネスや心理学/社会学などの他のスキルを含めるように焦点を広げてください。今から10、20、30年後に本当に必要なものを決定し、逆方向に作業して、それらの目標に到達するための行動方針を決定します。
あなたの質問に答えるために:博士号は本当にニッチな何かのために良いです。それはおそらくうまくいかないでしょうが、興味深いかもしれません。
まあ、私は(ゆっくりと苦痛に)博士号のルートを行きました。さまざまな種類の仕事を得るのに役立つような「目的」がありませんでした。知りたいからやりました。
私はプログラマーでしたが、プログラミングはかなり乾燥した主題であると思いましたexcept Isaac Asimovの本「I、Robot」を読んだことがあり、構築できるようになりたかったロボット、そして私は方法を知りませんでした。コンピューターに考えさせる、自然言語を理解する、見る、歩くなどの方法を知りたかったのですが、どうすればいいのかわからず知りたいことがあったのです。
では、結果はどうなりますか?コンピュータープログラムの考え方や見方などについて学びましたが、これらはずっと深く、幅広いテーマであり、一生の探究に値するものであることも学びました。その過程で、多くの理論と数学を学び、さらに学ぶべきことがたくさんあることを学びました。
また、ソフトウェアの開発に役立つ多くのことを学びました。本やいくつかの記事を書き、stackoverflowに投稿しました。私はそれが私をより効果的にすると思いますが、私はまた、プログラミングチームで少し見知らぬ人になると思います。
それで役に立ちましたか?たぶんそうだ。それ以前の自分にはなりたくない。
一般的な開発者コミュニティでは、Ph.Dは「教える」場合にのみ必要であるという誤解があります。ほとんどの博士号が大学に進学していた昔からのハングアップかもしれませんが、今日では多くの博士号(特に工学/コンピュータサイエンスの卒業生)が研究室で研究を行ったりIntelなどのトップ企業で挑戦的な開発作業を行ったりして、業界に入ります、Oracle、Google、Microsoftなど.
特に米国では、学界から新興企業への技術移転/研究アイデアのスピンオフの出現により、大学で行われた研究と新興企業の間で強いつながりがあります...スタンフォード、MIT、フロリダ、CMUなど人気のある例であり、Googleも研究プロジェクトであることを思い出させる必要はありません。
博士号を取得することは個人的な決断ですが、特定の領域に対する深い洞察を提供し、困難なオッズや批判を克服するためにある程度の献身と忍耐力を強制します...偶然にも、スタートアップにも必要なスキルです。 Phdなしでは成功することができないと言っているのではありません。大学に行かなくても上手にコーディングできる独学のプログラマーと同じように、Bscしか持たないプログラマーの例はたくさんあります。または修士号高度な技術/ CSの概念を学び、世界中の最高の企業で成功を収めてきました。
全体として、これは大きな議論の的であると思いますが、最近の博士号は、教えるためだけのものではありません。
これにより、より大規模なOracleタイプの企業で、より多くの技術的なポジションと仕事が生まれるかもしれません。それが行う重要なことはあなたに非常に焦点を当てた専門性を与えることです。雇用者にとって、あなたは彼らがその専門分野で見つけることができる最高のものです(少なくとも紙の上で)。
これは実際には本当に難しい質問です。多くの要因が影響している可能性があり、それらはいくつかの変数に応じて個人的に当てはまる場合と当てはまらない場合があります。一般に、正式な教育に取り組むときは、自分のスキルと長期的なキャリア目標を確認する必要があります。プログラミングスキルと教育の間に相関関係はないと主張する人もいますが、ほとんどの人は教育(たとえば、正式な教育、ワークショップ、1回限りのコース、本を読むなど)がプログラミングスキルを阻害し、実際にそれらを改善する場合。このように、教育は常に長期にわたってあなたに有利に働く傾向があります。
キャリア開発の観点から見ると、あなたが誰のために働いているか(または誰のために働きたいか)に応じて、教育はおそらくあなたのキャリアが進むことができる道に影響を与えます。あなたはこれまでにない程度でかなり成功することができますが、あなたの夢の仕事を得ることはあなたの学歴に大きく依存しているかもしれません。これは、ほとんどの中規模から大規模の企業では、従業員が採用要件となるある程度の正式な教育を受けることを要求する傾向があるためです。したがって、採用において教育を考慮に入れていない 聞いたことのあるすべての人 の場合、「コンピュータサイエンスの学士号が必要」と記載されている人事(HR)部門に出会います。求人情報を掲載しており、履歴書が含まれていない履歴書を見ることさえありません。
教育階層に関しては、通常、次のように機能することが期待できます。
他のすべてを丸めるために、あなたが出くわすかもしれない形式化された教育の他の2つの形はここにあります:
それでは、元のポイントである博士号に戻りましょう。開発者としての仕事を探しているだけの場合は疑問の余地がありますが、まだ研究室にない新しいテクノロジーを使用したい場合は、かなり遠くまで行く可能性があります。一般的に、より多くの教育はあなたを傷つけることはありませんが、あなたは研究に関与している時間への投資に慣れる必要があります。
学問分野でのキャリアを計画している場合、大学院は価値があります。ソフトウェア開発における典型的な雇用にとって、大学院は全く必要条件ではありません。
博士号のおかげで、より多くの面接を受けることができるという意味で、それはあなたに利益をもたらすでしょう。あなたの履歴書でかなり印象的に見えます。しかし、実際に知識を活用するという点では、専門的な職業を探すか、開発よりも多くの研究を行わなければ、報酬を得ることができません。
とはいえ、学士号は絶対に価値があると思います。コンピュータサイエンスの世界に触れることができ、興味のある、または仕事に必要なあらゆる側面をより深く学ぶことが容易になる基盤を提供します。
Oracle、Google、Microsoft、IBMなどの企業で働きたい場合は、PhD資格が適しています。大学で研究者または講師/教授として働くことも重要です。その3年間または4年間のタイトルのせいで、単純にそれを行わないでください。そうすれば、別の紙を手に入れることで、人生でもっと多くのことを成し遂げることができます。あなたは時間とお金を節約し、踊り、料理、スノーボード、旅行、ビジネスの運営など、あなたが楽しむ他のことを行います。最後に、決断を急ぐな。時間をかけて、あなたが本当にやりたいこととあなたを幸せにするものを見つけてください。ソフトウェアを開発したいだけなら、多くの企業にとって学士号は問題ありません。
高度な学位(MBA、MSCなど(つまり、ETCの学位はありません-AFAIK :-)など)は便利で、大規模な(Fortune 500)企業の中間管理職になりたい場合にも必要です。博士号は、大学レベルで教えることや、研究所や大企業の研究センターで働くことを目的としている場合や、壁に紙を掛けて人々に印象づけたい場合に必要です。
これはちょうど国の中心からの眺めです-海岸の認識は異なるかもしれません。 YMMV。
私の個人的な経験から、卒業または卒業後のIT業界での3年間の実務経験は、PHDよりも確実に多くのウェイトを獲得します。
IT業界の仕事の観点から、BSCのような芸術および科学のバックグラウンドを持つ卒業生は、MCAまたはMSCのような卒業後の学位を確実に選ぶことができます。 IT業界。
私たちの会社では、ソフトウェア開発者を採用するために最低限の要件は、適切なプログラミングと実用的なプログラミングテストで評価された論理的スキルを備えた芸術と科学の学位でしたが、時間の経過とともに競争が激化したため、最低限の資格はエンジニアリングまたは卒業後の学位。
私は修士号を持っています、それは私に何の助けにもなりませんでした。私の人生の2年間は永遠に失われました。少なくともルーマニアでは、ソフトウェア開発において、知識が最も重要です。大学の学位は少し、そして特定の状況で役立ちます。
M.ScとPh.Dは、教育または研究でのキャリアの計画がある場合にのみ有効です。