web-dev-qa-db-ja.com

経験はどのくらい違いますか?

少なくともx年の経験を必要とする多くの求人情報が表示されます。問題は、候補者が必要な長年の経験を持っていることをどのようにして知るかです。 x年の経験を持つ人に何を期待しますか(編集:スキルチェックに頼らずにCVが嘘をついていないかどうかを効果的に確認するにはどうしますか?) x年の経験を持つ人はy年(y <x)の人ができないことを何ができますか(編集:彼らが同様のスキルを持っていると仮定して)?

膨大な知識を持ち、複数のプロジェクトに取り組んだy年の経験を持つ情熱的なプログラマーや、いくつかのプロジェクトに取り組み、それほど経験のないx年の経験(x> y)を持つ他のプログラマーの場合もあります。

「このテクノロジーを知っていて、その方法(設計、通信、見積もりなど)を知っていれば、私たちの仕事に適している」のように縮小できないのはなぜですか?

エンタープライズアーキテクトのポストに1年の経験を持つ新卒を採用できないことは承知していますが、ほとんどすべての広告が経験を求めているという事実にも問題があります。私見最初に情熱を考慮に入れるべきです。

質問がこのサイトに適しているかどうかは最初はわかりませんでしたが、採用と経験のタグがあるので、ここにあると思います。

18
m3th0dman

質問は2つのサブ質問に分割することで処理できます。

なぜ長年の経験を要件として使用するのですか?

これは簡単に検証できるメトリックであるため、プログラミング能力と正の相関があります。 Snagulusの答え 相関の詳細についてはすでに詳しく説明しているので、「なぜ」に焦点を当てます。

難しい真実は、通常、特定のポジションには複数の候補者がいるということです。また、インタビューが非常にリソースを消費します。特に「適切に」行われる場合、つまり、技術面接は技術的に有能なスタッフ(この場合はプログラマー)によって行われます。

したがって、最初に着信CVをふるいにかける何らかの基準を使用する必要があります。できれば、技術者以外のスタッフが確認できる基準を使用してください。 、人事担当者はいつでも以前の雇用主に電話して、はい、ジョンスミスがX年間働いてきたことを確認できます。

代わりに「情熱」を要件として使用しないのはなぜですか?

これには少なくとも2つの問題があります。

「情熱」を測定する方法?

KLOCがログに記録されましたか?幸運なことに、プログラミング(および他の分野)でも、より多くの量が「より良い」とは見なされません。

オープンソース/ホビープロジェクトは完了しましたか?人事部では簡単にチェックできません。有能なプログラマーの多くは、この点に関して非アクティブである正当な理由があります-他の時間のかかる義務、長い労働時間くつろぎたいという欲求を持ち、勤務時間中に簡単な専門的業務を遂行するなど。

何年の経験?ああ、待って...

「情熱」は本当に能力の良い測定基準ですか?

Robert Harveyがコメントで述べているように、情熱は有能なプログラミングを実際に示すものではありません。経験と比較すると、ほぼ直交する品質です-つまり、次のものが存在します。

  • 情熱的で有能なプログラマーおよび
  • 情熱的で技術的に優れたプログラマーおよび
  • 情熱的で技術的に無能なプログラマーおよび
  • 情熱的で技術的に能力のないプログラマー、
  • などなど.

最後の例は私たちのコンテキストで重要です-長年の経験から、特定のプログラマーは何らかの方法で自分の仕事で機能することができましたが、機能不全の情熱的なプログラマーはそうすることができました。 「それは私を遅くする」ので、一律に言っても、最も単純なタスク管理システム(たとえば、スクラムポストイットノート)にさえ参加することを拒否します。

最終免責事項

まず第一に、そして幸運なことに、「経験年数」はしばしば「ゆるく」評価されます-つまり、言語Xの仕事に応募しているが、 Xと同様に、Yの「商業的」経験しか持っていないこともよくあります。

第二に、個人的には「N年の経験」のファンではなく、私だけではありません。 「experience in」を指定するという簡単な方法があります。候補者はCVでその経験を文書化する必要があるため、通常はこれで十分です。以前はウェイターを行っただけのプログラミングポジションの候補者を取得した場合(これが発生します!)、何かが間違っている可能性があります。

11
mikołak

「経験年数」は、具体的な尺度ではなく、確率の尺度です。年が経つと、人が次のようなことに遭遇する可能性が高くなります。

  • 危機的なイベントに参加しています。
  • 最初から最後までプロジェクトを見てきました。
  • プロジェクトの開始または終了に失敗するのを見てきました。
  • レガシーコードに取り組んできました。
  • 白紙の状態で作業し、何かを作成しました。
  • 設計決定を実装しました。
  • システムを設計しました。
  • バグを書いた、悪い修正をリリースした、サーバーをダウンさせた。本質的にめちゃくちゃになっています。
  • ネジ止めを修正しました。
  • 彼らが働いている言語で奇妙なEdgeケースを発見し、それらが重要な場所を見てきました。
  • 現在コードベースにあるものは馬鹿げているかもしれないことを学びました。
  • これらは必須ではない小さなサンプルであり、ライブ環境で動作していることがわかる数十の小さなものも含まれていることに注意してください。

繰り返しになりますが、それは偶然であり、彼らが長年の経験をした/ where /に完全に依存しています。 1人が数百人のチームで1つのプロジェクトに従事し、高度に専門化される可能性があります。もう1人は、トライアルバイファイアの小さな店にいて、サーバー/インストール/コーディング/ QA/DBA /プロジェクト管理を扱うとき、よりジェネラリストになる可能性があります。同じ年に何度も何度も経験している人もいます。

これは大まかな基準ですが、平均して人は、働いている時間が長いほど潜在的な学習イベントにさらされる可能性が高く、予備的なデータポイントとして役立ちます。残りの履歴書(さらに重要なのはインタビュー)は、彼らが実際に知っていること、および彼らが実際に何をしたかを理解するためのものです。

44
Snagulus

投稿での各質問に対処することで、これに答えます。

問題は、候補者が必要な長年の経験を持っていることをどのようにして知るかです。

これは通常、インタビュープロセスが除外することを目的としています。複数の面接が行われ、通常、社内の開発者の一部に対して候補者の経験を評価できます。

X年の経験を持つ人に何を期待しますか?

求人に指定されている求人の要件を満たすことを期待します。例えば:

「私たちは、システム設計とアーキテクチャで10年以上の経験を持つシニアPHP開発者を探しています。チーフアーキテクトとしてシステムツールを再構築する一方で、Kのシニアおよびジュニア開発者を管理し、指導します。それらは道に沿って。仕事はまた必要とします...(等など) "

X年の経験を持つ人がy年(y <x)の人ができないことは何ができるのでしょうか?

この場合、間違った経験をしていることになります。求人情報では、年数だけでなく、会社が使用しているテクノロジーの経験も求められます。あなたがC++開発で10年の経験を持つ可能性があるように、私は5年の経験さえあるC++開発者を探しているゲーム会社だと言います。あなたはまだゲーム業界で働いたことがないので、あなたはまだ私の理想的な候補者ではありません。私の仕事のポストは実際に指定します:プログラミングのA、B、Cの側面でのX年の経験。

膨大な知識を持ち、複数のプロジェクトに取り組んだy年の経験を持つ情熱的なプログラマーや、いくつかのプロジェクトに取り組み、それほど経験のないx年の経験(x> y)を持つ他のプログラマーの場合もあります。

私の以前の答えを読んでください。経験は、あなたが経験したツールに関連付けられています。A、B、CツールのX年。

「このテクノロジーを知っていて、その方法(設計、通信、見積もりなど)を知っていれば、私たちの仕事に適している」ので、なぜこれを再開できないのですか?

これは起こり得ます。あなたが自分自身を証明することができれば、数年の経験は重要ではありません。あなた自身のような人にとっては、面接官/採用担当者が彼/彼女自身の開発者である小さな開発店に、より適しているようです。大企業は通常、この種のことを行うHRを抱えています。そのため、彼らは仕事の要件を非常に広くしているため、基本的に、ウェブサイト用の小さな関数を書くには15年以上の経験を持つ博士号が必要です(誇張すぎですが、それは一種の欠点を説明しています)プログラマー採用、特に大企業向け-すべての人がこの病気に苦しんでいるわけではありませんが)

7
Joe

年の経験は、職務の説明にリストされている望ましいスキルを利用している人に何が期待されるかについての「大まかな」見積もりを与える単純なフィルターです。

ここに私が期待するものはかなりきれいですが、他の人は異なる考えを持っているかもしれません:

2年以内-雇用主はそれらのタスクのほとんどにかなりの量の監督を伴う学習曲線が存在することを知っているため、指示された特定のタスクを実行できるはずです。

3〜5年-0〜2年の経験ですでに同様のタスクを実行しているはずなので、手間をかけずに、指示されたタスクを実行できるはずです。また、「スマート」イニシアチブを示し始め、必ずしも明確に定義されていない小さなタスクを処理できるようにする必要もあります。 (たとえば、要件からモジュールを設計できるようになり、それらの要件のいくつかを自分で追跡する必要があります)。

5〜7年-自分で作業し、上からの "タスク"が何かを決定できる必要があります。明確に定義されていない中規模のタスクを処理できるはずです。 (例えば、サブシステムを設計/実装/売却できるようにする)。また、この時間範囲でサブシステムチームをリードし始めるべきです。担当するサブシステムの必要なプレゼンテーションを、少なくとも内部チームに提供します。

8-10年-プロジェクトの非常に大規模なサブシステムまたは重要なサブシステム、あるいはその両方が提供されることを信頼できます。いくつかのテクノロジーの常駐エキスパート。大規模なサブシステムチームをリードできます。担当するサブシステムについて顧客に説明します。

10年以上-職務記述と他のほとんどの半関連ソフトウェアタスクの範囲内で、彼らに投げかけられたほとんどすべてのソフトウェアタスクを処理できます。多数のソフトウェア分野の常駐エキスパート。要件から売却まで、大規模なプロジェクトをリードできます。モジュール/サブシステムの設計だけでなく、システムの設計を理解します。信頼性が高く、堅牢で保守可能なシステムを設計できます。システムの観点からのプレゼンテーションを含む、顧客へのソフトウェアインターフェイスです。入札提案とスケジュールを適切にまとめることができます。

長年の経験の定義はあいまいですが、それは雇用主の利益のためだけでなく、求職者へのガイドでもあります。したがって、採用した場合、8〜10年の経験があり、仕事に就き、実行する必要があるすべての小さなタスクを通知する必要があると主張します。長いです。第一印象を変えるのは難しいので、あなたが開発者として良くなっても、人々はおそらくあなたの元の印象を維持するでしょう。

ほんの数か月または2、3年でなくなったかなりの数の「上級」開発者が雇われ、「従業員開発」プログラムにかけられたのを見てきました。レイオフリスト。それらの同じ開発者がより低いレベル(もちろんそれはより低い給与を意味します)で入ってきた場合、彼らは非常によく雇用を成功させたと考えられ、適切に業績を上げていると見なされた可能性があります。

1
Dunk