インタビューのコーディングに対するReSharperの影響[終了]


18

R#またはCodeRushを使用したことがある人なら、単純なキーボードショートカットを使用して、単純な構造(および複雑な構造のリファクタリング)をどれだけ速く組み立てられるかを知っています。しかし、これらの生産性プラグインはインタビュー中に能力の誤った評価を引き起こしますか?

生産的なコードライターになる(そしてインタビューで良い第一印象を与える)ことの一部は、良いコードを書くことです-高速。

2つの候補者がいた場合:

  1. プラグインを使用しません。彼女は問題について考え、インタビューPCのストックIDEに座って、彼女とまったく同じように見え、通常どおり1〜2分でコードを入力します。できた パス。

  2. プラグインを使用します。彼は問題について考え、インタビューPCの標準IDEに座って、「fe + tab」がもはやforeachループを自動的に書き込まず、すべてのショートカットがなくなったことに気付きます。彼はその後、キーボードの周りをぶらぶらして、通常のホットキーを押して、奇妙なウィンドウをポップアップして、うろたえます。通常は30秒かかるものを書くのに3分かかります。できた IDEの周りの道を時々知らないように見えました。このIDEを初めて使用する必要があるため、このIDEまたは多分その言語の経験はあまりありません。パスしますが、名前の横に「meh」マークがあります。

あなたの経験では、インタビュアーまたはインタビュイーとしてインタビュー中にプラグインをどのように扱いますか?候補者が本当に知っていることを得るためのベストプラクティスは何ですか?コードを理解せず、R#を松葉杖として使用する候補者が存在する可能性があります。また、組み込みのVSまたはEclipseテンプレートよりも単純であるため、コードの出入りを知ってR#を使用する候補者もいます。IDEをまったく使用しないのが最善ですか?彼らに自分のPCを持参させてください?その他?


4
この質問は、ヘルプセンターごとのトピックから外れているため、この質問は適切にインタビューする方法に関するものであるため、この質問をトピック外として終了することに投票しています。しかし、この質問は、「オン話題の成分、すなわち持っているのReSharperはそのようなツールなしでコードに自分の能力に影響を与えるようなツールを行う方法を)」が、それがために、編集その質問は編集のあまり積極的で、既存の答えを無効にします。
durron597

標準のIDEでデモコードを記述する必要がある場合、:w至る所にランダムマークが表示されます。
リンダジャンヌ

回答:


31

私はごく最近のインタビューの候補2でした。非標準のキーボードとなじみのないテストフレームワークを備えたPCにIDEのバニラインストールを与えられ、ユニットテストを使用した簡単なFizz-Buzzアプリを作成するように求められました。毛羽立った。私は完全な初心者のように見えたはずで、暗闇の中でコードをハックしようとしてつまずきました。言うまでもなく、私はその地位を提供されませんでした。

私が学んだことは、プラグインに非常に強く依存していることです。コードの入力が速くなるだけでなく、実際にコードについて考える方法やコーディングの方法を形作ります。たとえば、変数名については非常に慎重に考えていました。なぜなら、変数名は事実の後に変更するのが面倒だからです。今、対照的に、私は変数をどのように使用するかについて中途半端な推測を行い、コードをハックし、変数にそれが何であるかを教えてから、Refactor-> Renameを押してより適切なものを呼び出します。

これは私を能力の低い候補者にしますか?ある意味ではそうだと思います。メモ帳でコードを記述し、それを正しくコンパイルして実行できる人は、IDEのすべての良さを必要とする私のような人よりも特定の利点があります。その観点から、私が会社のようなツールヘッドを採用しないことを選択する理由は完全に理解しています。

一方、私はまだ才能があり、有能なシニア開発者です。自分にとって何が効果的であるかを学び、自分の弱点と限界を考慮して、生産性を高めるような怠lazを実践しています。要するに、私は私を背負ったような会社に本当に恩恵をもたらすことができる一種のプログラマーです

興味深いことに、数週間前に別のインタビューを受けました。以前の経験に続いて、追加のツールやそれらを購入するための予算について尋ねることになりました。どちらも存在しないことを発見したことで、彼ら私にした(どちらかというと寛大な)申し出を断るもう一つの理由が得られました

だから、グルーチョを言い換えると、「従業員として私のような人がいる会社には入社しません

とにかく、彼らが私にReSharperを使わせない限りではない。


2
人々にインタビューするときは、白紙にコードを書いてもらいます。きれいである必要はなく、コンパイルする必要もありませんが、ターゲット言語に似ている必要があります。実用的な製品を探しているわけではありません。私が探しているのは思考パターンです。インタビュイーは問題について考え、コードを使用してそれらを解決できますか?
ロバートハーベイ

ところで、現在の経済情勢で魅力的なオファーを断ることができるのは素晴らしいことです。
ロバートハーヴェイ

12

候補者、つまり)彼らが望むものを何でも使用できるようにします。古い、あなたが近づくことができることを示すためにスイスアーミーナイフでウォルマートを構築するのはとても古いです。彼らは毎日の仕事に必要なものは何でも使用するつもりです(まあ、そうだと私は確信しています)。最終結果は重要です。そして、市場で入手可能なツールとそれらを効率的に使用する方法を知っている候補者を喜んで雇い、それからすべてを手動で行う候補者を雇います。これはキラー産業です。

ps例として、Vim(またはEmacs)を考えてください-カスタマイズされた設定、プラグインなどなしでそれを使用したいですか?


+1それに、もしあなたのコーディングタスクがforeachについて知っていることを本当にチェックしているだけなら、それが本当にどれほど役に立つか疑問に思います(FizzBu​​zzのようなものでさえ、それ以上を見ています)。私はJavaコミュニティの誰かとおしゃべりをしていましたが、彼はResharperを使用している優れた.netコーダーが誰であるかを伝えることができると言いました。100%正確かどうかは
わかり

1
面接時に候補者がホワイトボードにコードを書くようにすることは、プログラミングの能力を非常に明らかにします。インタビュアーとして、あなたはこの人がその役割を果たすのにどれだけの支援が必要かについて判断を下しています。
マイケルショー

8

ReSharperのようなツールが実際にあなたを全体的に優れた候補者にすると主張します。

1つは、ReSharperのようなものが、あなたが知らなかったかもしれない言語構成について、また問題を考えたり読みやすくするためにコードを整理するためのより良い方法を教えてくれるでしょう。ReSharperは、ある意味では、スリングコードのベストプラクティスを使用して、悪い習慣や陳腐な習慣、または悪い種類の怠inessを悪化させるのではなく、あなたを鋭く保ちます。

優れたコーダーは、基本的な構成要素を理解する必要がありますが、手動で入力する必要はありません。これにより、全体的に優れた開発者になります。

面接プロセスがスティックと石ナイフを好むなら、それは根本的に壊れていると述べることによって、私は推論の線を完成させます。


1

それが、IDEではなくホワイトボードでコーディングするように人々に頼む理由の1つです。競技場を平準化します。そして、人々は「ああ、親愛なる、再シャーパーは私のためにこれを通常処理します」と言います。ヘック、組み込みのスニペットはループなどに対応しますが、ホワイトボードでは提供できません。その場合、「句読点がすぐそこにあることを望みます。私はR#の男です」というようなことをするだけで、構文問題を抱えないようにすることができます。

理解しやすいコードをホワイトボードに書く能力が必要です。そうすれば、私たちがどうやって物事をやろうとしているのかを知る会議を開くことができます。そしてもちろん、あなたがあなたの人生で実際にコードを書いたことがあるかどうかを見たいです。インタビューは異なる場合があります。


あなたがホワイトボード全体をやりたい理由を完全に理解しています-それは多くの貧しい候補者を排除することを想像します-しかし、それはまたいくつかの素晴らしい才能も排除します。もちろん、優れたホワイトボーダーのプールがある限り、それは問題になる必要はありません。
Kramii復活モニカ

2
@Kramii:ご存知のように、「偉大な」才能は、自分自身とそのコードをホワイトボードで説明できるはずです。だから私は本当にそれが彼らを排除する理由を見ることができません。
スポーク

1

すばらしい質問ところで-私はこれについてよく考えました。

ツールの習得は、優れた開発者になるための中心的なスキルです。開発者がIDEを使用するよりもメモ帳でコーディングすることを好むと主張するとき、私はいつも警報が鳴るのを感じてきました。彼は、製品よりもプロセスに興味があることを示唆しています。

それは、vsとトラクターで土を耕すことを好むようなものです-あなたが趣味の庭師なら大丈夫ですが、競争経済の産業農家としては支えられません。

ただし、ツールに依存するようになります。ツールが突然持ち去られたという仮想の状況で、私たちがどのように対処するかについて、人々は驚いているようです。計算機を試験に入れることについても同じ議論がありました。

現実には、ツールは毎年より良く、より良く、より安く、より安くなっています。そして、あなたがそれらなしでいると仮定するべき理由はありません。そして、ツールは高度な品質で反復的な作業を行うのに優れています。つまり、私たちの信じられないほどのホモサピエンの知性の全力を、難しい(そして興味深い)部分に集中させることができます。

ReSharperは、Visual Studioのすばらしい追加機能です。私の現在の会社には、インタビューを受けたときにReSharperがありませんでしたが、インタビューの中で福音主義的だったので、インタビューを受けたデベロッパーのためだけでなく、ポジションを受け入れたときにコピーを買ってくれました。現在、全社で展開されています。優れたツールは、時間をかけずに自分で支払います。

したがって、質問に答えるために、ツールへの依存は、インタビューであなたの能力の誤った評価を引き起こす可能性がありますが、彼らは常にインタビュアーの能力の正しい評価を与えます。企業がインタビューでツールサポートの価値を認識していない場合、あなたは彼らに光を見せなければなりません。そして、彼らがまだそれを見ることができないならば、私はそこでポジションを受け入れることを非常に心配するでしょう。


インタビューで、私が使っていたツールや会社に期待することについて非常に明確にしています。一部の企業が開発者ごとに1つのモニターしか提供していないと思いますか?インタビュアーに「依存しているツールがここにないので半分の速度で走っている」と言っても問題はありません。特にキーコンボを使用しても動作しません。名目上はバニラのIDEでさえ、私は物事をカスタマイズします。なぜなら、私の手は物事がどこにあるかを知っており、再訓練に煩わされることができないからです。Dvorakキーボードまたはドイツ語でコメントを書く場合、または他のハンディキャップを与えたい場合。

@moz-ツールに投資せずにあなたを最大限に活用しないことを雇用主に伝える必要があることに完全に同意します。さらに一歩進んで、適切なツールを手に入れることを約束します。彼らがそうしなければ彼らのために働くことはおそらくあまり楽しくないでしょう。手動で何かをリファクタリングするたびに、時間を十分に評価していないためにそれらを呪います。平凡な場所で働くことは、将来の収益力にも影響を与える可能性があります。2人の開発者が異なるショートカット構成を持っている場合、ペアプログラミングを行うと興味深いことがあります。できる限り標準構成を使用するようにします。
シェイクジャブーティー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.