システム管理者/Perl/Linux のバックグラウンドを持つ OO プログラミングの面接で「勝利」しますか?[閉まっている]

StackOverflow https://stackoverflow.com/questions/68548

  •  09-06-2019
  •  | 
  •  

質問

私はモントリオールでソフトウェア エンジニアリングを学ぶ学生です。過去 3 年間、私は数回インターンシップを行ってきました (年に 1 回)。最初の 2 つは (同じ会社内で) 主にシステム管理者の仕事でしたが、いくつかの Perl プログラム (主にログ ファイルの分析と統計の生成) を実行することもありました。

私のもう 1 つのインターンシップは IT セキュリティ分野でした。ユーザーがインターネットで費やした時間を分析するために、巨大な CGI Perl スクリプトを作成しました。

実のところ、私が本当にやりたいのはプログラミングですが、私のインターシップは主にシステム管理者の仕事で、多少のプログラミングを伴うものでした(これまでに Linux と UNIX を使用した経験があるため)。

この冬にもインターンシップがありますが、OO プログラミング分野と SW エンジニアリング分野にしたいと考えています。

私にはシステム管理のバックグラウンドがありますが、大学のコースやプロジェクト (C++、Java、VB.NET、ASP.NET ですが、残念ながら C# ではありません :( )) のおかげで、オブジェクト指向についてはよく知っています。

私の質問はこれです:OO 分野での実務経験がない人 (ただし、Java、Swing などでいくつかのプロジェクトを構築しており、現在 JSP を学習中ですが) が、面接で、以前のインターシップで OO の経験がある他の学生とどのように競争できるでしょうか?

私の「セールスポイント」は何であるべきですか?私は自分自身をかなり優れたプログラマーだと思っていますが、経験が不足していたため、以前の面接ではうまくいきませんでした。実際、私は昨年の冬にシステム管理のインターンシップに参加しました。それが私の背景です!

私の職業上の経験はありませんが(個人的な知識(および興味)はたくさんあります)、潜在的な雇用主に私が最適な候補者であると説得する方法についてのヒントはありますか?

ありがとう、

ギョーム。

[編集]

応援してくださった皆様、ありがとうございました!

私はまだ学校を卒業していません。私はまだフルタイムの学生です!私の大学のプログラムは協力的なものです:卒業証書を取得するにはインターンシップを 3 回受ける必要があります。

私の背景を簡単に説明しましょう:この冬で4回目のインターンシップになります。

最初の 2 回は、ケベック州の高校卒業後、大学入学前の学校である CÉGEP で勉強していたときのものでした。

最初のものは実質的に CÉGEP から私に与えられたものです。雇用主から電話があり、Linux システム管理に詳しい人を探していました。学校外で Linux を知っている唯一の学生だったので、私はこの仕事にぴったりでした。すべての詳細は学校と雇用主の間で話し合われていたため、私の面接は本物の面接ですらなかった。面接を受ける前から採用されることはわかっていました。

最初の会社がとても気に入ったので、1 年後に 2 番目の会社に入社しました。

それから私は大学に到着しました。そこでは、すべての学生が卒業証書を取得するために 3 回のインターンシップを受けることが義務付けられています。私はコンピューター サイエンスの面接で実際の経験がなかったので (最初のインターンシップが私に「与えられた」からです)、OO の仕事の面接をするときにいくつか失敗しました。ついにボンバルディア・エアロスペース社のセキュリティ/システム管理者/Perlプログラミングの仕事の面接を受けることができました。

インターンシップはうまくいきましたが、今は本格的なソフトウェア開発の仕事がしたいと考えています。私の知り合いは皆、昨冬に経験しているので、経験という点では私は不利です。

ただし、プログラミングの経験はあります。インターンシップではすべて、特に Perl でかなりの量のプログラミングを行う必要がありました。私の Perl スキルは非常に優れており、働いていた両方の会社でいくつかの優れたツールを開発することができました。学校では見られない実際の問題 (メモリ使用量をできるだけ低く抑えながら 5 GB のログ ファイルを効率的に解析する方法など) を解決しました。

明らかに、システム管理ドメインまたは Linux の世界の求人に応募すれば、この冬簡単にインターンシップを獲得できます。毎年いくつかのインターンシップがあり、私はこの分野で多くの経験を積んできましたが、前述したように、次のインターンシップは SW 開発に携わりたいと考えています。

私は現在、小さな UML クラス エディターである Java の個人プロジェクトに取り組んでいます。そのため、Swing フレームワーク、リスナー、MVC アーキテクチャなどを扱うようになります。これは「現実の世界」で行われていることほど大規模ではありませんが、楽しいプロジェクトであり、非常に楽しんで取り組んでいます。来月中にかなり早く実現できれば、おそらくSourceForge にあります。同時にJSPも勉強中です。

OO オープンソース プロジェクトに関しては、これは私が検討すべきことです。フルタイムの学生なので、最初の面接まであと 1 か月ある今はおそらくその時間はありませんが、この選択肢を放棄するつもりはありません。

とにかくありがとうございました!

役に立ちましたか?

解決

悪気はありませんが、あなたの説明からすると、あなたには「本当の」OO プログラミングの仕事に就く資格がないようです。アカデミッククラスは言語への良い入門ですが、変動する締め切り、気難しいユーザー、気難しいマネージャーなどの現実の問題を解決する代わりにはなりません ;-)

これには 3 つの選択肢が残ります。

  1. OO と自分の知っている言語を使用するオープンソース プロジェクトに参加し、大きく貢献します。これにより、実際のプログラミング経験と同等の経験が得られます (ただし、実際の仕事の経験ではありません)。 5月 あと 1 ~ 2 年以内にプログラミングの仕事に就けるようサポートします

  2. または、初心者レベルの OO プログラミングの仕事に応募し、コミュニケーション スキル、人に伝わる熱意、学習意欲、顧客/ユーザーなどへの取り組みなどで面接官に好印象を与えます。言い換えれば、自分自身を正直に、しかし爆発する機会だけを必要とする「完全なパッケージ」として提示して売り込みます。

    • 何度も断​​られても落ち込まないでください
    • 本当にやりたくない仕事には応募しないでください
    • 学問以外の環境でプログラミングの方法を実際に学ぶために、2、3 年ではないにしても少なくとも 1 年は仕事に携わることを期待しています。
  3. コンサルタント、プログラマー、フリーランスとしてビジネスを立ち上げたり、製品を開発したりして、自分のペースで学びましょう。これは学校を出ていないときは危険ですが、学校にいるときはそれほど危険ではありません。空いているニッチな場所で偶然見つければ、かなりの利益が得られる可能性があります。

他のヒント

そうですね、文書化された経験をすぐに得ることができる場所の 1 つは、オープンソース プロジェクトを通じてです。プロジェクトに参加するか、新しいプロジェクトを開始します。OSS プロジェクトのドキュメント化を支援します (雇用主はそれを望んでいます)。単体テストの作成を手伝ったり、パッチを提供したりしてください。そして、始めるのは早ければ早いほど良いのです。

オープンソースの経験は良い経験であり、開発と使用する言語に対する献身的なレベルを示しています。

幸運を

適性と熱意があれば、大きな成果が得られます。面接の質問に答えられ、プログラミングの問題に対処でき、現在取り組んでいる個人プロジェクトがあるのであれば、経験の不足がそれほど妨げになることはありません。

ただし、質問には必ず答えてください。経験がない場合は、それを補うために自分のことをよく知っている必要があります。

サイドプロジェクトを必ず強調してください。自宅で自由時間をコーディングするのが好きな人にインタビューすると、多くのボーナスポイントを獲得できます。

まず、私が常に守っていることの 1 つは、決して間違ったことをしないということです。それは正直さです。何か分からないことがあれば、「分かりません」と言ってください。これはプログラミングの面接において非常に重要であり、従うのは非常に簡単です。

次に、時間をかけてオープンソース プロジェクトを開始したり、それに参加したりしてください。オープンソース プロジェクトに取り組んでいたということは、多くのことを物語っています。まず、他の人のコードを理解でき、プログラミング コミュニティの他の人々と協力して作業する決意があることを示しています。これは長い道のりです。私がさまざまなオープンソース プロジェクトに貢献していることを確認できた場合、実際に審査プロセスをスキップする雇用主に遭遇しました。おそらくこれが、現場での経験が少ない場合の最善の防御策です。

経験や意欲がある場合は、ユーザー グループ ミーティングやコード キャンプでプレゼンテーションやコーディング セッションを行ってください。これもまた長い道のりです。このようなシナリオで他のプログラマーと話したり会話したりできることを示すことで、あなたがプログラミングやコミュニティとの協力を楽しんでいることを雇用主に示すことができます。

最後に、低めから始めます。トーテムポールの一番下から始める必要がありますが、一生懸命働いて、あなたが質の高いプログラマーであることを示せば、採用担当者/雇用主があなたのドアをノックしてくれるでしょう。

あなたが A) このサイトに質問を投稿し、B) それが表示されるブログを持っているという事実は、あなたが情熱を持っていることを示しています。それは多くの人が持っていないものなので、それがあなたにとって有利になります。その情熱を使って知識を深めてください。

あなたが言うように、本当にプログラミングに情熱を持っているのであれば、すぐにプログラミングを始めてください。プログラミングの方法は、自分で考えながら学ぶことはできません。経験を積む唯一の方法はプログラミングすることです。あなたのような人は、支援したいオープンソース プロジェクトを見つけて、貢献を始めてください。これにより、特にソース管理の使用に関する貴重な経験が得られます。

もう 1 つは、自分が本当に後追いできそうなテクノロジーを見つけて、それを深く掘り下げて、そのテクノロジーとそのプラットフォームについてできる限りのことを学ぶことです。あなた自身に浸る。私がそう言う理由は、あなたがこれについて少し知っていて、これについて少し知っていたとしても、誰かがあなたを雇うつもりはないからです。彼らはあなたが現場に入って仕事ができることを期待しています。他のもので「遊んで」はいけないという意味ではありませんが、制作経験がない限り、履歴書から除外するようにしてください。

それが役立つことを願っています。-キース

次のような Perl コードを用意してください。

  • 誇りに思えるプログラミング スタイルを示しています。
  • 何か重要で有益なことを行い、そして
  • オブジェクト指向です (構文を逆戻りできることを示すためだけではなく、十分な理由があります)

いくつかのパッチに貢献する CPAN 分布。これにより、次のことがわかります。1) CPAN を使用します。マネージャーはコードをより速く書くことができる人々を好みます。2) 誰かのコードを読み取って変更できる人です。

勉強 ムース/ねずみ - これは Perl 用の最新の OO システムであり、Python からコピーされた古い OO システムよりもはるかに優れています。

どの企業も異なります。私はソフトウェア会社で上級ソフトウェア開発者を務めてきましたが、プログラミングに関する質問すらされたことがありませんでした。

面接では全力を尽くし、ありのままの自分でいてください。

OOP は便利だと思いますが、その中で機能するパラダイムが過大評価されていることがあります。機能を分解すれば、かなり遠くまで到達できます。

あなたは C++ のクラスで良い成績をとったかもしれませんが、教授はあなたにインターンシップを勧めてくれるのでしょうか?

学校の評判の有無が選考プロセスに影響を与える可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top