なぜほとんどの求人が一般的な開発者ではなく、<language here>開発者向けであるのですか?[閉まっている]


9

理想的な世界では:

Patrick McKenzieは、優れた記事「プログラマーをプログラマーと呼ばないこと、およびその他のキャリアアドバイス」で、とりわけ、その言語は重要ではないと説明しています。

  • 開発者は、一般的に問題を解決する人です。開発者は、特定の言語でコードを書く人ではありません。

  • 企業はあなたが知っている言語を気にしません。特定の言語で書かれたプロジェクトの開発者を雇う必要があり、経験豊富であるがこの言語でコード行を書いたことがない候補者がいる場合でも、彼は採用されます。

開発者として、および他の開発者を雇わなければならなかった人としての私の経験によれば、観察は非常に似ています:

  • JavaでのN年の経験またはC#でのN年の経験は重要ではありません。重要なのは、候補者が問題を解決する方法を知っている、スパゲッティコードとよく考えられたアーキテクチャを備えたクリーンなコードの違いを知っているなどです。

  • 以前使っていた言語は気にしません。C#プロジェクトの場合は、C#だけを知っていて、それをよく知らない初心者ではなく、Java、Python、Ruby on Railsのコードを書くことに人生を費やしたプロの開発者を雇います

  • 1つの言語を使用して得た知識と経験は、ほとんどの場合、他の言語で再利用できます。

    Ruby on RailsをWeb開発に使用し、残りのキャリアをOracleを使用したJavaデスクトップアプリケーションの作成に費やした経験豊富な開発者は、Microsoft SQL Serverを使用するASP.NET MVCプロジェクトに完全に適合します。この人は、この仕事に必要なすべてのことをすでに知っているので、いくつかの特定のものと構文の違いは別です。

    一方、ASP.NET MVCの小さなWebサイトをいくつか実行しただけの人は、MVCアーキテクチャを完全に理解していない可能性があり、SQLプロファイリングとは何かを知っている可能性があり、その他の必須事項が不足している可能性があるため、まったく適合しません。知識。

    私が以前にCodeIgniterを使用したことがないという理由だけで、CodeIgniterを使用するPHP Webサイトの小さな問題を修正できないと言わないでください。

実際には:

実際には、フリーランスの仕事を検索したり、一般的な求人を見つけたりすると、それらは言語固有のものです。

Magentoで2年の経験を持つPHP開発者を探す人もいます。他のユーザーは、VB.NETの経験が3年以上ある人を検索します。6年間C#の開発を行ったことを述べた履歴書を送っても、VB.NETに言及していなければ、彼らは気にしません。答える。Firebirdの経験を持つ人を求めた場合、彼らはOracleでの10年の経験について聞いてくれません。

理論と、パトリックマッケンジーと私が常識であると説明していること、そして求人の実際の世界の間に、なぜそのような違いがあるのでしょうか。


12
Don't tell me that I'm unable to fix a small problem with a PHP website which uses CodeIgniter just because I never used CodeIgniter before.問題を完全に修正することはできますが、根本的な原因がCodeIgniter(フレームワークのいくつかの奇妙な点の1つ、または多くの未解決のバグの1つ)である場合、問題の修正にかなりの時間がかかります。
yannis

12
一部のタグを忘れました:<rant>...</rant>。真剣に、ここに本当の質問はありますか?
サイクロプス

6
「以前に使用した言語は気にしません。C#プロジェクトの場合、C#だけを知っていて知っている初心者ではなく、Java、Python、Ruby on Railsのコードを書くことに専念したプロの開発者を雇います。ひどい」-あのストローマンを持っていこう!これは誤った二分法です。あなたの怒りは初心者には正しいですが、特定のプラットフォームの深い知識を必要とするポジションには適していません。
テキサス州

1
言語の経験がある人は、仕事をはるかに迅速かつクリーンに行うことができます。
Thomas Bonini、2012年

私が採用担当者になると、「Technobabbleの用語X、Y、およびZを使用したことがある」という非常に長いリストが表示されます。そして、その人を見つけることができれば、雇うことができます。私が仕事を探しているときは、頭がたくさんあるだけでなく、彼らが望む正確な経験がないので、私を見ていないことに彼らを憤慨させるかもしれませんが、彼らが望む正確なものがあれば、期待しますその場で雇われるため。結局、それは彼らの呼びかけであり、それは本来あるべき姿です。
ウォーレンP

回答:


16

多くの企業が人事ドローンを持っているので、それについて何も知らない人を採用します。人事部が「候補者にはどのような資格が必要ですか?」「良いコードを書く」と言うよりも「6年C#」と言う方がはるかに簡単です。そのドローンは、「良いコードを書く」の様子や、良いコードを書けるかどうかで履歴書をフィルタリングする方法を知りません。しかし、彼らはすぐに履歴書を読んで、「5年と3四半期のC#」を見て、それを捨てることができます。


3
丁度。非開発者と管理者は、似たようなスキルを持つ人を探していると言っても、最初は仕事でかなりのこと(概念ではなく特定の構文など)を大丈夫でない限り、学ぶ必要があるかどうかを尋ねるかもしれません。
マイケルデュラント

彼らはHRサルと呼ばれていると思いました...私は完全に同意しますが、チームに<language here>グルを置くのは良い考えです。
Lukasz Madon、2012年

3
広告に「適切なコードを書く」ことはまったく意味がありません。誰もが良いコードを書いていると思っています。そして、優れたコード作成スキルで最も有罪とされるのは、通常、最悪のコードを作成する人です。
nikie、2012年

1
@nikie:それは単純化です。もちろん、あなたはそれを広告に正確に入れません。
DeadMG

3
人事部門のない小規模な新興企業もまったく同じことをしているので、これが主な理由だとは思いません。
J.メース

22

言語YでX年の経験を持つ開発者が言語Y2にシームレスに移行できるのは、この神話を理解するときだと思います。これは、それがどのように機能するかではありません。

言語をその構文と一般的なパターンとして扱う場合、たとえば、JavaはC#に移行する際に大きな前進をもたらします。ただし、WCF、WPF、クリックワンス、さまざまなスレッドライブラリ、Linqの準備は行われません。また、パンフレットで説明されている内容に備えることはできませんが、実際には準備ができていません。

言語について話しているのではなく、一般にプラットフォームについて話しているのがわかります。そして、プラットフォーム、.NETが良い例であり、多くの言語をサポートしている場合、人々は好ましい選択に集中する傾向があります。

したがって、C#開発者を依頼すると、C#プロジェクトでの経験を持つ.NETプラットフォーム開発者を実際に宣伝しています。それらは.netサーバープロジェクト、winforms / wpfプロジェクトになる傾向があります。


同意する。もちろん可能ですが、難しいです。Cファミリの構文は簡単に転送されますが、完全なプラットフォームとツールセットを実際に理解するには、かなりの時間がかかります。若い開発者/プログラマー/アナリスト/コーダーへの私のアドバイスは、誰もがまだ初心者である間に自分の時間に新しいテクノロジーに飛びつくことです。2、3年前にHTML5、iOS、Androidの開発に携わってきた人々は、今は元気です。もちろん、誤解する可能性もあります(Flexについて質問してください)が、それは世界の終わりではありません。
テキサス州

これは主に、Java-> C#がC-> C ++に類似しているためです-それらは技術的に同じ基盤で構築されている可能性がありますが、C#には実際に使用したい機能がはるかに多く含まれています。C#からJavaへの逆変換は、はるかに簡単です。
DeadMG

11

私はいくつかの理由を考えることができます:

  1. 従業員vsコンサルタント-コンサルタントを採用している場合、私が使用しているテクノロジースタックでコンサルタントがすでにスピードアップしていることを望みます。コンサルタントは、学習を償却するほどの期間はないため、非常に迅速に効率的になることが期待されています。
  2. 供給/需要-ドクが言ったように、私が仕事にできる最も経験豊富な候補者を選ぶつもりなら。そして、確立されたテクノロジーにとって、テクノロジースタックはそこで重要です。Goで開発する人(少数の人が知っている言語を選択)を探している場合、ほとんど誰もその経験はなく、開発者としてのスキルセットに戻ります。

4

すべてのプログラミングジョブが同じというわけではありません。私の現在の仕事は確かにあなたのモデルに適合します。多くのアドホックデータ分析が必要であり、必要に応じてツールをピックアップして配置します。新しいツールですぐに生産性を上げることができるという実績があったため、採用されました。

一方あなたは仕事があるされている特定の技術的な専門知識を探しているが。90年代に戻ると、私は小さなソフトウェアショップで働いていました。C++の専門知識をすばやく開発する必要がありました。広告でC ++の専門知識を明示的に求めたにもかかわらず、ほとんどの応募者は私よりもC ++の知識が少なかった。「しかし、C ++はすぐに習得できます。」彼らはすべて言った。ええ、そうだと思いますが、私もそうだし、すでにそこにいる他の人々もそうでした。私たちはすでにC ++を本当に知っている人を探していたので、他の人たちがスピードに慣れてきたら、社内に専門知識のソースができました。チームに別の初心者がいても、本当に助けにはならなかっただろう。


1
+1:チームは、一部またはほとんどの開発者をその言語に不慣れな人にすることもできますが、他のすべての人に教えることができる言語の専門家を置くことは多くの助けになります。
TREE

3

企業はあなたが知っている言語を気にしません。特定の言語で書かれたプロジェクトの開発者を雇う必要があり、経験豊富な候補者がいても、>この言語でコード行を書いたことがなければ、彼はまだ雇われます。

たとえば、.NET / C#ジョブの候補者を探しているとします。仕事に2人の候補者がいる場合、どちらも同じように経験豊富ですが、最初の人はJavaエコシステムでの経験があり、2番目は.NETエコシステムでの経験があります。どちらが好きですか。

他のユーザーは、VB.NETの経験が3年以上ある人を検索します。6年間C#の開発を行ったことを述べた履歴書を送っても、VB.NETに言及していなければ、彼らは気にしません。答える。

なぜあなたは答えが得られないのですか?おそらく、十分な経験豊富なVB.NET開発者が仕事に応募していましたか?おそらく人事部門は、プログラミング言語の経験をフィルターとして使用して、求人応募の数を100から10に減らします。たぶん、あなたは間違った会社と話をしただけかもしれません(私の会社では、例のケースで答えを送ると思います)あなたは上で説明した)。


2

ほとんどのプロジェクトベースの作業では、結果が迅速に必要とされ、人々はできるだけ早く利益を生み出す必要があります。

これらのニーズを実現でき、特定の言語に縛られない人々は不足しており、結果として高額です。これらの人々は、信じられないほどのスキルを求めている大企業だけに雇われます。

問題を解決することはできても、特定の言語をすぐに学ぶことができない人は少なくありません。彼らはまだたくさんのお金がかかり、特定の言語を学ぶのに必要な時間の余分なコストがあります。

この時間の余分なコストは、言語固有のプログラマーに依頼することで削減されます。彼はすでに必要なスキルを習得しており、迅速に結果を出すことができます。

要するに、JAVAで行う必要のあるプロジェクトは、高価な信じられないほどのソフトウェア開発者を必要とせず、言語/フレームワークを学ぶために時間を必要とする平均的な.net開発者も必要としません。最小の金額ですぐに結果が必要です。これは、JAVAの経験があり、問題解決のスキルが比較的高い人が提供します。

いつものように、それはお金に関するものであり、投資収益率を最大にすることです


2

標準的なフレーズ「<language here> developer」を誤って解釈していると思います。企業は、他の言語での経験を持つ開発者を思いとどまらせるために広告にそのフレーズを入れていません。なぜ彼らは有能な開発者を思いとどまらせたいのでしょうか?雇用者の観点からは、候補者が多いほど良いです。彼らは常に興味のない人を招待することはできませ

フレーズの本当のポイントは、あなたに、読者に、求人が何を伴うかを伝えることです。そして、それは私にとって意味のあることです。Z80アセンブリ言語で開発する仕事に応募しますか?またはCOBOL?またはFortran?

そして、明らかに、会社に2人の候補者がいて、他の点では同等に優れているようであれば、<language here>の経験を持つ候補者が勝利します。それ以上でもそれ以下でもありません。(1つのプロジェクトのみ、またはすでに遅れているプロジェクト、または会社が<language here>で開発した最初のプロジェクトで、最初からその言語での経験が本当に必要な特別な場合があります。しかし、私はそれらが規則だとは思わない。

ちなみに、私の会社はかつてあなたが提案したような広告を書いたことがあります(結局それは理にかなっているようです)。結果は壊滅的でした。仕事を本当に気にしている人は、単に広告をスキップしました。適用される任意のオープンポジションに適用する絶望的な人のみ。私たちは二度とそれを試しませんでした。


1

戻って、前提について考えます。あなたは人がいくつかの.net作業をしたいです。あなたはそれをあなたの仕事の説明に入れ、あなたはそのスキルを持つ候補者を探します!これは単なる常識です。

なぜそれが良い考えではないのかについてのあなたのより詳細な哲学には確かに同意しますが、ほとんどの人は今必要なスキルを持つ候補者を宣伝し、必要とし、探すだけです。それはとても簡単なので、なぜこれがあなたの質問のタイトルに答えるかと思います。

候補者をまったく獲得できない場合、またはいくつかの悪い候補者を通過できない場合、彼らは少し勉強し、あなたが詳述した項目を受け入れやすくなるかもしれません。実際、私がいるエリア(Ruby on Rails)には、「経験は必要ありません。トレーニングします」などと言っている広告がたくさんあります。実際、トップのRuby on Rails組織のいくつかは、彼らが訓練することができる「悪い習慣のない」候補者に非常にオープン。そのため、一部の組織では正しいアプローチを採用しています。

また、ほとんどの広告は、外部の採用担当者、または技術者ではない社内採用担当者が作成したものであり、説明どおりに「横に進む」知識がありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.