シニア開発者のためのそれらのテクニック詳細インタビュー質問のポイントは何ですか?[閉まっている]


10

シニアプラスのような、より高いレベルのプログラマーの称号を得るために、内部昇進の面接を受けました。そして、私はさまざまなテクノロジーを使用している約7人の人々からインタビューを受けました、そして私(.Net)と同じテクノロジーを使用している人々は、JITとは何か、GCのしくみなど、Googleを介して実際に簡単に見つけられる非常にテクニックの詳細な質問をする傾向があります、リストと配列の違い、抽象クラスとインターフェイス、デリゲートとイベント、アップロードファイルを処理するときのクラス名なども含まれます。プロジェクトでのデザインアイデアの1つについて質問されたのは1つだけです。簡単な議論。しかし、他のほとんどの私のデザインの選択では、彼らは単に興味がないようです。

まだ結果は得られていませんが、今週の終わり頃になるでしょうが、ここに私の懸念があります:

個人的には、シニアプログラマーとしてプレイするとき、主に問題を解決することを考えています。問題を発生させるための特定の方法があることを知る必要がありますが、詳細なことをすべて覚えているわけではないので、詳細なリファレンスがあります。 MSDNのようなドキュメント。

ジュニアレベルから中級レベルのようなこのエリアの周りであまり経験がなかったとわかっていれば私は気分が良いですが、より高いレベルの男にインタビューする傾向があるとき、あなたはこの男の論理的思考がどのように優れているかを見ることにもっと焦点を当てるべきではありませんか?彼/彼女は問題を解決するのですか?細かい点の細かい技術的なことをすべて知っていれば、みなさんはシニア+だと思いますか。そして、それらのインタビューの質問集をチェックすると、私はそれらの種類の質問がもっとあることがわかりました。

私が5日間を費やしてそれらのインタビューの質問リストの本を通り抜けると、それらの人にすごい気分にさせることが簡単にできますが、それは本当に何を意味するのでしょうか?この種のインタビューは、困難な問題を解決する方法がわからなくても、物事がより高い給与を得ることを覚えているのを容易にさせることができます。

では、なぜこれが世界で起こっているのか、それが問題解決スキルを引き起こし、デザインスキルを測定するのが難しいのでしょうか?私はこの会社に何年も勤務していて、他の会社とのインタビューはほとんどなかったので、どの会社も同じことをしているのでしょうか?

それとも、これは実際に私自身の問題なのか、MSDNのすべてを頭の中で覚えて、インターネットなしでも作業できるようにするために一生懸命努力する必要があるのでしょうか。

編集

仕事のタスクに関するフランクの懸念に関する私の状況をよりよく説明するため。申し訳ありませんが、これらの背景を明らかにできなかったのは残念です。

実際には、特に仕事のタスクの変更はありません。私は個人的に、コードレビュー、メンターメンバー、BAのドキュメントのレビュー、テクニックの意見、新しいプロジェクトのデザインアーキテクチャなど、すでにシニアとしてプレーしたことがあると思います。先輩がいないままで、給与明細を反映させて面接に導くように頼んでもらいました。これはサース社であり、その製品がまだ存続している限り、人々は1つのプロジェクトにとどまります。これは、現在の製品に基づいてより多くの新機能を設計し、ライブサーバーの技術の難しさを修正し、設計/コードのレビュー/メンタリングを行えるようにする必要があることを示しています。メンバーそしてテクニックに基づいたより高いレベルのタイトルはアーキテクトであり、テクニカルエキスパートと同様の仕事はありません。また、テクニカルエキスパートの役割を果たしたい場合は、使用しているテクノロジーの詳細を知っておく必要があります。申し訳ありませんが、これらの背景を明らかにできなかったのは残念です。


8
一般的に言えば、私の意見は、上級の役割に関して雑学や技術的特徴に相当する質問をすることは、面接プロセスとおそらくグループについての警告です。内部プロモーションを探している場合、これは二重に当てはまると思います。すべての企業がこのようなわけではありません-そうでない企業を見つけます。
エリックディートリッヒ

あなたの貴重なコメントをありがとうエリック、はい、私は未来について慎重に考える時が来たと思います
サイモンワン

回答:


15

シニアエンジニアであり、エンジニアを雇う人として、面接プロセスは概念情報の全範囲を見逃したように思えます。

シニアエンジニアが最終結果を視覚化し、適切なテクノロジーを選択し、適切なデータベースとプロセスを設計し、必要に応じて詳細を他のエンジニアに委任できるようにしたいと考えています。Googleは常に彼らの側にいるので、私は彼らが耳に差し込んだSDカードの大きさではなく、結果を提供する彼らの能力に焦点を合わせています。(笑)。

それがうまくいくことを願っています。


返信が遅れて申し訳ありません。問題が発生したのではないようです。
Simon Wang

10

あなたのケースでのシニア+のタスクが何を含むかは完全にはわかりません。自分のポジションが何であるかというよりも、自分の仕事が何であるかを知ることの方がはるかに重要であることを常に心に留めておいてください。持ちながら、シニアをあなたの仕事のタイトルの前には、それがどのような方法であなたが実際にあなたの仕事に何をすべきかについては何も教えてくれない、あなたの財務成績に影響を及ぼす可能性があります。ただし、上級レベルの「開発者」には2つの異なるタイプがあります。

システムアーキテクト

あなたがそのような立場について面接を受けた場合、実際に何かが間違っています。gahooaが同意するのは、このような面接では、候補者の見落としのある全体像に焦点を当てるべきであるということです。

しかし、これには一種の邪悪な見方もあります。日常の仕事では、細かい細部に常に圧倒され、これらすべての小さな障害にもかかわらず、全体像を追跡するのはあなたの責任です。候補者が小さな詳細で彼/彼女自身を失うことができないかどうかをテストしたい場合、1つの方法は、それらの詳細で彼/彼女を沈めることを試みることです。想定されるアーキテクチャの位置付けが全体像についてであることを彼らに思い出させなかった場合-あなたはそのテストに失敗したかもしれません。疑わしいのですが、この種のインタビューは確かに友好的な側面ではありません。

技術専門家

この場合、システムアーキテクチャ全体と企業の方向性に大きな影響を与えることができない場合があります。代わりに、設計レベルに焦点を当てます。例として挙げたすべての質問がこのカテゴリに完全に当てはまることに注意してください。SW設計を担当する上級開発者からは、JIT、GC、データ構造などの詳細を知り、最も複雑な詳細以外を調べる必要がないことを期待しています。ソフトウェア設計を行うことになっているのに、間違った位置にある配列とリストの違いがわからない場合。

あなたの質問を読んで、私はあなたの職位(現在および提案されたもの)がソフトウェア設計に焦点を合わせていると思います。その場合、あなたが実際に知っている/覚えておくべきこととそうでないことを再考したいと思うかもしれません。これらのことを日々処理しているとすれば、そのような基本的な質問に答えるために何かを探す必要はほとんどありません。


余談ですが、私の元教授は、上級コースの口頭試験で小学校の科目について質問するという興味深い習慣がありました。これらの科目は上級コースで明示的に取り上げられたことはありませんが、学生は初等教育からそれらを知っているはずでした。(あらゆる種類の)面接でも、この振る舞いを忠実に守っています。これは、過去数年にわたって、「上級者」の学生/候補者が根本的に深刻な欠如を何度も経験してきたためです。その推論を考えると、私は上級者の候補者にリスナーパターンとは何か、またはリスナーを配列対リスト対セットで維持することの賛否両論について尋ねることに何の不安もありません。


まず、あなたのanwserに感謝します。実際には特に仕事のタスクの変更はありません。私は個人的に、コードレビュー、メンターメンバー、BAのドキュメントのレビュー、テクニックの意見の提供、新しいプロジェクトのアーキテクチャの設計など、すでにシニアとしてプレーしたことを考えています。それはまだ私のタイトルです先輩がいないままで、給与明細を反映させて面接に導くように頼んでもらいました。このようサース会社で、彼らはSystem Architectのではなく、技術専門家を必要とし、私の目標は間違いなく、システムアーキテクトになるために取り組んでいる
サイモン王

3

申し訳ありませんが、あなたが尋ねられた質問の種類は、必要なときにグーグル化されるべき雑学だとは思いません。これは、アップロードファイルを処理するときのクラス名にも当てはまりますが、次のようになります。

  • JITとは:これは基本的な技術的な問題です。上級プログラマーは、これが少なくとも高レベルの意味を明確に理解している必要があります。たとえば、これはさまざまなVMとランタイムのパフォーマンスに影響を与えるため、新しいテクノロジーを評価する際には少なくとも考慮する必要があります。
  • GCの動作:上記と同様。GCのアルゴリズムは非常にシンプルであり、少なくとも世代別GC、マーク&スイープ、参照カウント、およびさまざまなトレードオフに精通している必要があります。
  • リストと配列の違い:これは、ジュニアプログラマーに知ってもらいたい基本的な質問です
  • 抽象クラスとインターフェース:上記と同じ。少なくともインターフェースを知らずに複雑なシステムを構築することがどのように期待されるか理解していない
  • デリゲートとイベント:繰り返しになりますが、堅牢で柔軟なシステムを設計するには、イベントデリゲーションが基本パターンの1つです。

彼らは雑学に迷うことなく上級プログラマーに関連する概念的な質問をするのにかなり良い仕事をしたようです。


+1-OPが発行する質問は、非常に「詳細ではない」質問です。それらはかなり高いレベルであり、システムを適切に設計するために知っておく必要があると主張することができます。しかし、それは、堅牢性、保守性、および応答性が、設計および構築されるアプリケーションの懸念事項である場合に限られます。
2013

ですから、回答された質問に基づいて、候補者が上級または中級、または単にジュニアでさえ、スキルが不足しているが記憶力が優れていることがあり、.Netインタビュー質問リストという名前の本を読んでいる可能性があるため、どのように特定できるでしょうか?これらの質問から設計能力、問題解決能力を特定しますか?
Simon Wang

それらは記憶の質問ではありません。ガベージコレクションなどの話をしている人を、その話を知っている人から思い出すことができます。さて、デザインについていくつか質問したいと思うかもしれませんが(ただし、イベントの委任については、その方向に進んでいるのではありませんか?)、これは、ここに挙げた質問に対して不十分に実行する言い訳にはなりません。
Andrea

わかりました。ありがとうございます。ところで、私はそれらのことについてはうまくいっていないとは思いませんが、そうすることの目的が何であるかについては心配します。特に、これは社内プロモーションのインタビューです。つまり、このインタビューと1、私は会社に参加し、そしてそれは私がここでのキャリアパスについての失望を感じさせる
サイモン王

あなたの質問を誤解してすみません。ここで同様の質問をする人はたくさんいます。基本的に、面接での成績が悪かった場合のサポートを得るためです。これらの質問への回答方法を知っているが、ソフトウェア設計についてより洗練された質問をしたいというのであれば、これらの質問は、他の人がインタビューで尋ねたほど悪くなく、記憶に残っているとは言えません。より良いことは確かに可能ですが、合理的です。
Andrea
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.