1つの言語(Javaなど)で開発者として働いて、シニア開発者まで進んだ場合、別の言語(Rubyなど)を使用するポジションのシニア開発者になる資格がありますか?
1つの言語(Javaなど)で開発者として働いて、シニア開発者まで進んだ場合、別の言語(Rubyなど)を使用するポジションのシニア開発者になる資格がありますか?
回答:
これに答える最良の方法は、開発者とシニア開発者の違いを調べることです。単なる時間の問題ではないと仮定すると、一般的に開発者とシニア開発者の両方ができることを期待しています:
さらに、シニア開発者には次のことを期待しています。
だから、質問はあなたの第二(または第三または第四)言語の拡張された基準を満たすのですか?上級開発者のほとんどは譲渡可能である傾向があるため、移行先の言語で技術的に十分な能力がある場合は、そうすることをお勧めします。
現在のステータスに関係なく、好きな会社の任意のポジションに応募できます。
あなたが履歴書/カバーレター/インタビューであなたが仕事の男性であることを証明するのはあなた次第です。
Sr. Developersにインタビューしたとき、次の資質を探します。
私が探している他の無数のものがありますが、これらは主なポイントです。
私は職場で使用される言語の専門家ではないシニア開発者を採用することを推奨していますが、彼らは同様の言語の専門家でした。
申し込むことはできますが、少なくとも私が雇用を行っている場合は、あなたを雇うかもしれませんし、雇わないかもしれません。
年功は、(少なくとも)2つの分野に関連しています。一般的な開発の専門知識と言語/フレームワークの専門知識。(私は意図的にビジネススペースの知識を除外しています)現在のところ。私の本で上級開発者になるには、設計/アーキテクチャの専門知識も含まれます。優れた/テスト可能なシステムの構築方法など
Javaでこのレベルに到達すると、他の(類似/手続き型)言語に取って代わるはずです。
しかし、当面の生産性が期待されるこの時代では、RubyについてJavaと同じくらい詳しく知ることはまずありません。システムをJavaに適した構造ではなくRubyに適した構造に分割する方法。おそらく、Railsやその他のRuby固有のものではなく、いくつかのJavaフレームワークを知っているでしょう。
インタビュー中にRubyでホワイトボードコーディングを行うように頼んだら、それをしてもらえますか?
これらはすべて、どのレベルでも、あなたを雇うかどうかの私の決断になります。しかし、特に上級職向けです。
がんばろう
いや。
それは私たちの職業と他の「正式な」職業との大きな違いの一つです。あなたが弁護士として20年間、遺言と地所で働いていたなら、その分野で20年の知識が蓄積されているので、あなたは高い率を指揮しようとしています。
C ++ / Win32 / MFCを15年間実行している場合、同じドメインで同じ問題を解決している場合でも、Rails開発者としてのシニアスポットの資格はありません。課金など。
さらに悪いことに、ほとんどの企業は、おおよそ似たポジションであるとみなすことさえありません... /.NETは非常に迅速に、少なくともデスクトップ用に。残念ながら、ほとんどの企業はそのように見ていません。
はいといいえ。
言語が似ている場合は、C ++、Java、またはRubyを検討してください。それらのオフィスに座っている人々の柔軟性に応じて、あなたは戦いのチャンスがあります。
しかし、言語が大幅に異なる場合、つまり、あなたがHaskellを始めたCOBOLの男であることを意味している場合、10年以上のCOBOLの可能性にもかかわらず、あなたはインタビューを確保することすらできないかもしれません。
そのような状況であなたの好みに合うもののカップル:
言語に基づいた「シニア」タイトルはめったに見ません。数人の上級システムプログラマ、数人の上級Webプログラマ、1人の上級COBOLプログラマを知っています。
プログラミングは多面的であり、提供できる分野はかなりあります。上級のWeb開発者(タイトルでは、プログラマーと開発者は互換性があるようです)は、Web開発で使用されるいくつかの主流言語に習熟していることを期待しています。それはPythonとPHPの第一人者をC#のインスタントエキスパートにしますか?いいえ。一方、すべてのC#の達人がプロジェクト管理とリーダーシップの芸術を習得しているわけではありません。
私は、シニアシステムプログラマーであることに加えて、会社でCTOの役割を果たしました。それでも、どちらかを必要とするプロジェクトに遭遇した場合、私は喜んでスキームまたはLISPの専門家に任せます。優れたリーダーになるには、まず自分の限界と欠点を理解する必要があります。
会社で仕事をしたいのか、あるいはたった1つの言語に焦点を当てた部署で仕事をしたいのかはわかりません。それは、タバコを吸うといつも言っていたように聞こえます。現実がはるかに悪いときに、成長を妨げます。
タイトルを追いかけたり、知識を追いかけたりしないでください。しかし、公平を期すために、以前の指導的地位でのあなたの役割は、おそらくあなたが手元の言語で能力を実証していれば、あなたに追加のエッジを与えるでしょう。
私は、言語が低レベルまたは機械に優しいほど、あなたはより専門家であると言います。
Java / C#の専門知識は、ASM / C / C ++の専門知識よりも低賃金です。
後者の言語は、メモリ管理など、プログラミング時に実際に重要なことを行います。
しかし、他の「簡単な」言語については、それらを「簡単にする」機能について簡単に比較する必要がありますが、私はそれが役に立たないと思います。簡単な言語の経験は、コードイグナイター、django、Apache、RoRなど、作業に使用したCMS /その他のメイドコードでより適切に測定されます。
私にとって、シニア開発者とは、カーネル、システム、組み込みハードウェアなどをプログラムする人です。機械に優しい言語を使用するプログラマーは、私にとってシニアではありません。彼らはただ仕事をしますが、それだけです。