web-dev-qa-db-ja.com

ジュニア、ミドル、シニアの開発者の違いは何ですか?

重複の可能性:
エントリーレベル/ジュニア/シニアデベロッパーの違いは何ですか?

3つの一般的なJavaプログラマー資格レベルがあるようです:

  • ジュニア
  • 中間
  • 上級

プログラマーを「ジュニア」、「ミドル」、または「シニア」にするものは何ですか?それは、プログラマーが特定の資格や職務専門知識を持っているということですか? IT企業はどのようにしてプログラマーにどのような肩書きを与えるかを決定しますか?

36
user592704

この質問に対する答えは、プログラマーの数だけあります。しかし、私は彼らをこのように判断します:

  • ジュニア開発者は、ほぼ一定の助けを必要とするでしょう。彼らはビジネス領域を知らないだけでなく、言語やツールセットの基礎に苦労するかもしれません。彼らは何を知らないのか分からないので、ガイダンスがなければ、彼らは頻繁に間違いを犯します。
  • 定期的な開発者は、その経験を積んでいます。彼らは独立して生産的で、自分でほとんどのタスクに取り組むことができるか、またはいつ助けを求める必要があるかを理解することができます。
  • 上級開発者はさらに多くの経験があり、ソリューションを設計し、タスクを完了することができます。ただし、必ずしも全体的なアーキテクチャのビジョンを持っているとは限らないため、実装を開始する前に、提案された設計を精査する必要がある場合があります。彼らはチームのより若いメンバーを指導することができます。

しかし、あなたは本当にこれに向かって行くべきです はるかに良い答え 私が書いていたはずであるものを見るために!

32
Bill Michell

「より難しい」メトリックにしたい場合は、 プログラマーの能力マトリックス に関連付けることができます。タイトルは明確なものではありません。それはすべてHRが話すことです。定義されている場合、正確に定義されていない可能性がある特性をカプセル化するのに便利な流行語。

PCMに関連付けるには:

ジュニア開発者:ほとんどの分野で少なくともn ^ 2を評価します。いくつかのnまたはlog(n)を評価し、いくつかの2 ^ nを使用しても問題ありません。

中間開発者:多数派n、少数派はn ^ 2、少数は2 ^ nです。できるだけ多くのlog(n)ですが、まだ少数である可能性があります。

上級開発者:多数派n、log(n)は少数派またはわずか多数派で、n ^ 2はわずかで2 ^ nはほとんどありません。

伝説:数nsで可能な限りすべてのLog(n)とそのマークの下に何もない。

専門家:専門分野でのLog(n)とその他の適切な経験。

明らかに、これらは各カテゴリの「理想」です。本当に基準に完全に準拠するタイトルに合う多くの人はいないと思います。

13
World Engineer

ここに Dreyfus Model of Skills Acquisition を参照するショートカットがあったらいいのにと思います。各レベルを範囲と考えると、私のジュニアミドルとシニアのコンセプトは5つのステージにうまく対応していると思います。

  • 初心者または上級ビギナーステージの誰もが私はジュニアと考えます。
  • 有能な開発者はミドルです
  • 熟練した専門家はシニアになります。

もちろん、秘訣はメタナレッジにあります。人が知っている以上に誰かが知っていることを人が認識することは困難です。初心者の開発者として別の開発者の知識を評価している場合、私はそれらを初心者以上のものとして評価することはできません(私がそれらを初心者よりも高いと評価することができる場合、私は自分自身が初心者より上になるのに十分な知識があります)。スペクトルの反対側では、大幅にスキルの低い人を適切に評価することは困難です。有能な開発者を評価する専門家を思い浮かべてください。彼がXのやり方を理解していないと言うのは簡単です...彼は明らかに初心者です。

唯一の解決策は、複数のスキルレベルの人々に個人を評価させることです。各レベルで、その人が私と同じくらい有能であるかどうかを識別します。ポジティブになる最高レベルは、最も正確な評価です。今、あなたの既存の従業員を評価する方法の問題があります;)

7
Michael Brown