データサイエンティストとしての私のキャリアを始めるには、ソフトウェアエンジニアリングの経験が必要ですか?[閉まっている]


20

私は、エディンバラ大学で機械学習と自然言語処理を専門とする修士課程の学生です。データマイニングに焦点を当てた実践的なコースと、機械学習、ベイジアン統計、グラフィカルモデルを扱うコースがありました。私の経歴はコンピューターサイエンスの理学士です。

ソフトウェアエンジニアリングをいくつか行い、デザインパターンなどの基本的な概念を学びましたが、大規模なソフトウェア開発プロジェクトに関与したことはありません。しかし、私はMScにデータマイニングプロジェクトがありました。私の質問は、データサイエンティストとしてのキャリアを希望する場合、まず大学院のデータサイエンティストのポジションに応募するか、大学院のソフトウェアエンジニアとしてのポジションを最初に取得すべきか、ビッグデータなどのデータサイエンスに関連するものかもしれませんインフラストラクチャまたは機械学習ソフトウェア開発?

私の懸念は、データサイエンスのために優れたソフトウェアエンジニアリングスキルが必要になる可能性があることであり、これらが大学院のデータサイエンティストとして直接働くことで得られるかどうかはわかりません。

さらに、現時点ではデータマイニングが好きですが、将来自分のキャリアをソフトウェアエンジニアリングに変えたい場合はどうすればよいですか?データサイエンスを専門に扱うのは難しいかもしれません。

私はまだ雇用されていないので、私の知識はまだ限られています。私は修士課程を修了しようとしていますので、明確化やアドバイスを歓迎します。10月上旬に大学院への応募を開始したいと思います。


1
この質問は、キャリアに関するアドバイスであるため、トピックから外れているようです。キャリアアドバイスは、意見志向の幅広い質問または時には非常に制限された質問をもたらすことが証明されており、そのほとんどは有用な談話をもたらさない。この意見に同意しない場合は、Data Science Metaで問題を提起してください。
アヒーシュ14

1
Quoraが役立つかもしれません。
-zihaolucky

回答:


30

1)あなたの経歴がデータサイエンスのキャリアに適しているかどうかを疑問視する必要はないと思います。CS学位IMHOは、ソフトウェアエンジニアリングの観点からデータサイエンティストにとって十分以上です。とはいえ、理論的知識は実際の経験と一致しないとあまり役に立たないので、追加の学校プロジェクト、インターンシップ、またはオープンソースプロジェクト(おそらく、データサイエンス/機械学習/人工知能に焦点を当てたもの)に参加して、経験を豊かにしようと思います)。

2)データサイエンスの仕事の一部として、または空き時間にソフトウェアエンジニアリングを実践している限り、データサイエンスにあまりにも早く集中することに対する懸念は根拠がないと思います。

3)データサイエンティストの次の定義はかなり正確であると思いますが、将来のキャリアの成功に役立つことを願っています。

データ科学者は、より良い統計で任意のソフトウェアエンジニアよりも、より良いソフトウェア工学のいずれかの統計よりもある人です。

PS今日のデータサイエンスのトピックに関する膨大な数のさまざまなリソースは驚くべきものですが、データサイエンスを学習するためのこのオープンソースのカリキュラムは、BSc / MScの各カリキュラムとデータサイエンスのキャリアの現実とのギャップを埋めるかもしれません(または、少なくとも、 :さらなる研究と多分あなたの懸念のいくつかを答える)のためのいくつかの方向http://datasciencemasters.org、またはGitHubの上:https://github.com/datasciencemasters/go


2
+1効果的なデータサイエンスを実現するには、多くのエンジニアリング経験が必要ですが、学校ではそれを習得できません。理論に学校を使用し、エンジニアリングスキルに仕事を使用します。
ショーンオーウェン14

3
「データサイエンティストとは、ソフトウェアエンジニアよりも統計が優れており、統計学者よりもソフトウェアエンジニアリングが優れている人です」。
wabbit

キャリアガイダンスに関するこの質問に親切にお答えくださいData Engineer
stom

@stomさまざまな理由で質問に答えられませんが、次の関連するIMOの優れたリソース共有できます。1)medium.com/@rchang/… ; 2)medium.com/@rchang/… ; 3)medium.com/@rchang/… ; 4)medium.com/@richard534/...。お気づきかもしれませんが、最初の3つのリンクはシリーズの投稿へのリンクです。お役に立てれば。
アレクサンドルブレフ

9

私が見た求人広告から、答えは異なります:本質的に技術的な仕事(ビッグデータプロジェクトの設計、分析を行う)または正反対の仕事(分析、ストレージなどを行うことは他人の仕事です)があります。

ですから、いくつかのソフトウェア設計スキルは非常に有用ですが、C#/ Javaなどで巨大なプログラムを構築するのに能力は必要ありません。私がいくつかのSWスキルが好きな理由は、あなたのコードがおそらくプログラミングのためにプログラミングしたことのない人のコードよりもはるかに良く見えるからです。ほとんどの場合、後者のコードは部外者にとって理解/デバッグが非常に困難です。また、分析をより大きなプログラムに統合する必要がある場合がありますが、プログラムのニーズを理解することは確かに役立ちます。


6

絶対に。ソフトウェアのスキルを鋭く保ちます。学習したすべてのアルゴリズムを自分で実装するだけであれば、アカデミックプログラムでこれを行うことができます。

コースの良い選択、ところで。インターンシップの取得も検討してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.