若い開発者として、職場で「スタイル外」の技術を使用しなければならないことを心配する必要がありますか?[閉まっている]


11

私は最近大学を卒業しました(昨年5月!)。まだ学校にいたとき、卒業する前に就職したかったので、就職活動の非常に早い時期(おそらく早すぎる時期)に、学部卒業後に移りたいと思っていた地域に就職しました。 。

しかし、いくつかの理由で、私は今、この決定を数か月間推測しています。1つは、仕事にあまり挑戦していないということです。ここから始めてから、プログラミングの改善はそれほど進んでいません。ただし、仕事以外でもオープンソースで作業する時間を作ることができます(過去に持っていたことがあります)。そのため、この失望を回避する場所があります。さらに重要なことは、私の仕事は、基本的には奇妙な古いPerl Webアプリケーション(メイソンと奇妙な社内ORMを使用)で作業することであるという事実です。

もはや人気がなくなった技術を使って、ここで足を踏み入れていますか?将来、仕事に就くのに本当に役立ちませんか?私はめったにPerlの仕事を目にしません。そして、私がそうするとき、それは通常、私が興味のないことをしています(フロントエンドWeb開発のもの)。

システムプログラミング、視覚化、ネットワークプログラミング、または少なくともバックエンドWeb開発などは、実際に仕事をするのが楽しいトピックのようなものです。現在の仕事の経験が、これらのことを行うポジションに役立っているとは思えません。 。


12
あなたは自分で足を撃ちますか、いや、もちろんそうではありません。誰かがあなたがしていることをやらなければならない、時には経験を積むためにこの種の仕事をしなければならない。あなたの仕事を気に入って、それに対して報酬を得ることができます。すべての仕事が挑戦を提供するわけではありません。それがまさに世界のあり方であり、社内のツールとPerlを使用しても何も問題はありません。
ラムハウンド

13
少なくともそれはムンプスではありません!
マーティンベケット

1
私は不幸です。Perl(実際はちょっと楽しい)のせいではなく、プログラマーとして成長していないからです。仕事以外で仕事をして自分自身を向上させることができます-時間がないのでとても大変です私が働いていない時間)。私が言っているのは、この点で私のために働く仕事が欲しいということだと思います。そして、私の現在の位置がそのような仕事を見つける能力にどのように影響するかを恐れています。
シュヴェルン

5
@schwern:まったく心配しません。これらの言語を履歴書に入れて、次の仕事に応募してください。:
ジョルジオ

7
Perlは本質的にプログラミングのダクトテープであり、知っていることを傷つけることはなく、その可能性があり、ほとんどすべてに使用されています。
リャサル

回答:


51

まず第一に、あなたの仕事があなたの夢の仕事にあなたをさらに連れて行っていないと考えるのをやめてください!すべての仕事がします!すべてはあなた次第です!

  • これは卒業後の最初の仕事であり、誰もがあなたが良い選択を持っていなかったか、滞在したい場所に移動するなど、他のいくつかの要因を検討したかもしれないことを理解できます。これは有効な「言い訳」であり、就職の面接中に直接質問された場合は言及できます。
  • すべてのプログラミングの仕事は、開発者としての経験に貢献します。すべての開発者が自分で学ばなければならない言語にとらわれない多くの事柄(疎結合アーキテクチャの実装、コードのデバッグとプロファイリング、単体テストの作成など)は、どの言語も学ぶことができ、Perlは最悪ではありません使用する。私は以前、MS Access用に開発しているVBAで3つすべてを練習していましたが、それはとても楽しかったです。
  • 結局のところ、これは生産的ではありません。現在の仕事が退屈で役に立たないと考える限り、そこから多くを学ぶことはありません。多くの場合、あなたの将来の雇用主はあなたの「学習曲線」に興味を持ちます-あなたがどれだけ早く最後の仕事が退屈であったかではなく、新しい技術を習得するのにどれだけ速いか!

したがって、あなたを助ける方法は次のとおりです。

  • 現在使用している言語をできるだけ深く習得してください。SOサイトのperlタグを見て、人々がそこに尋ねる質問に答えてみてください。多くの開発者向けリソースなどに関する論文を読んでください。この分野の第一人者になろう!
  • Perlはマルチパラダイム言語であり、現在はOOPおよび他の多くのパラダイムをサポートしています。それらを言語から分割して、個別に調べてみてください。Perlにはどのような継承がありますか?ここでクラスやクラスメンバーなどに使用できるアクセス修飾子の種類は何ですか?強く型付けされているかどうか 多くの言語は同様に機能しますが、一般的にどのように機能するかを知っている限り、他の言語の違いを簡単に把握できます
  • 現在のシステムを深く理解する:なぜPerlで実装されているのですか?ここでは、パフォーマンス、セキュリティ、信頼性などのさまざまな側面をどのように解決しますか?未解決の問題、警告、潜在的な違反とは何ですか?どのように対処しますか?たぶん、現在のコードベースの合理的なリファクタリングが必要ですか?

そして、あなたがそれに不満を抱いているなら、この仕事に長くとどまらないでください -基本的なスキルを学び、学習する意欲とあなたのタスクの鈍さを克服するあなたの意志を示すのに十分です!

多かれ少なかれ近い将来にあなたの2番目の仕事に応募するとき、あなたはまだジュニア開発者として扱われます!最初の仕事で学んだこと、レガシーコードとブラウンフィールドシステムを維持する問題にどのように対処したか、どのように視野を広げたか、そこで学んだ新しいクールな機能強調するようしてください。

決して、現在の仕事に飽き飽きしているということを就職の面接で決して言わないでください。それがあなたが何か他のものを探している理由です。「退屈」は非常に主観的であり、多くの場合、現在の立場で物事を学習し、それに応じてそれらを適用するという課題に耐えるのに十分ではないことを意味します。あなたの知識を広げ、学び、あなたの夢の仕事を得る意欲を示してください。


2
卒業生が後からそれを後悔している場合でも、決定に従うことを示唆するアドバイスについては+1。インタビューで自分の足を撃ったインタビューした候補者の数のカウントを失いました。候補者が卒業生に期待されるレベルの仕事をすることに退屈していることを認めた場合、それは私が採用すれば満足するという面接官の心の中にあります。卒業生であろうとなかろうと、新入社員への私のアドバイスは、仕事の課題を探し、完全に関与することです。最悪の場合、彼らは素晴らしい紹介を獲得し、せいぜい進歩と大きな課題を獲得するでしょう。
S.ロビンス

あなたの熱意はちょうど私の日を作りました。非常に健全なアドバイスのために+1。
レイヴライン

私は定期的に最大のソフトウェア企業のひとつの候補を面接し、それは間違いない、本質的に保持パターンでの仕事に大学から出てくる持っている候補者を傷つけます。
クリスピットマン

1
+1-強い人々はそこに座って、ノックする機会を待っていません。彼らは立ち上がり、それらを作成します。
荒涼とした惑星

7

ソフトウェア業界の最初の仕事は、しばしばくだらない仕事です。いくつかのプログラミングスキルを学ぶことはできますが、あなたが受けるより重要な教育は、会社で働く方法です。

定期的なスケジュールでの表示、8時間以上の作業、ソース管理ソフトウェアの使用、上司や同僚とのやり取り、実稼働サーバーがダウンして修正が必要なため午前3時に電話をかける...これらがあなたのスキルです最初の仕事から学び直します。

そうは言っても、あなたが退屈していて、あなたがしていることを楽しんでいないなら、やめてください。この仕事があなたの最終的なキャリア目標に到達するのに役立たないと感じたら、やめてください。才能のある人々にはたくさんの仕事があります。


6

質問のさまざまな側面を個別に検討します。

  1. あなたの最初の仕事は決して難しいものではありません。理由は、大学が30年以内に必要なものを教えているのに対し、企業はすでに利用可能なテクノロジーを使用しなければならないからです。30年のものが現在の最新技術よりも進んでいることを期待しています。半年間のタイムスパンにより、仕事は大学で慣れているものとは異なります。
  2. 学習はほとんど自分の時間で行われます。これは残念な事実ですが、人々のコストは非常に高いため、常に生産的なことをしなければなりません。最良の代替手段は、学習と生産的な開発を組み合わせることができる場合ですが、まだ知らない技術で作業することになり、使用している技術を理解していないという理由だけで問題を引き起こす可能性があります。実際に機能するものを作成する場合は、実稼働環境の外部で学習を行う必要があります。多くの企業では、これはあなたの自由な時間であることを意味しています。
  3. perlは単なる課題であると考える必要があります。perlだけでなく、今後30年以内に遭遇する新しいシステムに役立つように作業方法を改善する方法です。
  4. 新しいことを学ぶときは、基礎に焦点を合わせます。Perlには、正規表現、ハッシュテーブル、および多くの優れたデータ構造があります。それらを最大限に活用する方法に関するすべての知識は、将来的に役立ちます。

ポイント2は私を多少怖がらせます。私は幼い頃から始めていたので、プログラミングにはかなり良いコツがありました。それは大学でさえ非常に一生懸命働かなければなりませんでした。私の自由時間(練習、教育、勉強、録音など)の大部分を消費する音楽を演奏することは、私のキャリア志望の邪魔になっているようです。まだ多くのことを学ぶことができる仕事(プロセスだけでなく、ハードスキルについて)はどこにでもありますか?学界では、おそらく?
シュヴェルン

1
もちろん、学習の機会を提供する仕事があります。優秀な開発者は高価であるだけでなく、まれでもあります。多くの場所では、採用時により高いレベルまでトレーニングできる人を探します。これは、社内でのメンタリングまたは外部トレーニング(またはその両方)のいずれかです。
FinnNk

音楽も役に立つでしょう。まだ気づかないかもしれませんが、正確なタイミングと、音楽サークル外の人が重い数学を使って解決する必要があることを教えてくれます。高度なプログラミングは、両方の側面に大きく依存しています。
tp1

2
@schwern重要なのは、賢い人々と仕事をする仕事を見つけることです。それから、あなたは日々の仕事に取り掛かるとき、彼らにさらされることから学ぶでしょう。
クリスピットマン

5

あなたが「スタイル外」の技術と呼ぶものは、この業界の大部分の目的です。その理由は簡単です。既存のシステムを維持するために、新しいシステムを開発するよりも多くの開発が行われます。また、新しいものを開発する場合でも、多くの場合、古いものであるが実証済みで、より大きなアーキテクチャのランドスケープに適合するテクノロジーを使用して開発されます。これはソフトウェア開発の現実です。技術の「最先端」に常に取り組むことができる立場にいる開発者はほとんどいません。

私の意見では、[超クールな新技術をここに挿入]で作業することは、時間通りに、予算どおりに、期待どおりに行うよりも栄光が少ないと思います。それは経験を通してしか学べないことであり、完全に技術に依存しません。あなたは今、良いコースにいると思います。仕事でソフトウェア開発の貿易と技術を学び続け、仕事以外でできる限り技術曲線に追いつく。それが私たちのほとんどがそれを行う方法です。


+技術的なスタイルは常に変わります。今日のクールなことは、明日は誰もやらないことです。有能でプロフェッショナルでなければなりません。すべての新しいgee-whiz-bangがやって来たら、値を綿毛から分離する方法を知って、それをいつ使うべきか、いつ使わないかを知ってください。
マイクダンラベイ

5

他のすべての人に反対するこの仕事はあなたを傷つける可能性が非常に高いです。私は定期的に、大学卒業後の最初の仕事から逃げようとしている候補者にインタビューしています。彼らは通常、メンテナンスに加えて社内の「フレームワーク」に使用される傾向がある言語を使用して立ち往生していました。言い換えれば、彼らは雇用機会が限られている限り、二度とアクセスできないツールキットを使用する方法を学びました。

それに加えて、私がこれまでさらされてきたほとんどのメンテナンスショップでは、実際の開発作業に参加するために必要なスキルを教えてくれません。私は彼らの最初の仕事から出てくる誰かにインタビューしているとき、私は彼らが理解していることを知りたいです:

  1. 一般的なソフトウェア開発ライフサイクル
  2. ソース管理
  3. コードをテストする方法(TDD、単体テスト、セレンなど)
  4. OOD原則
  5. エンタープライズアーキテクチャの基本的な理解(たとえば、3層システムとは何ですか?
  6. チームと働く方法

これらのスキルのほとんどは、最初の仕事で頭のいい人たち接し、毎日彼らと仕事をすることで得ました。(ソフトウェアやビジネスについて)何も学んでいないと思われる場合は、別の仕事を探し始めてください。

編集:サイドノートとして、私は大学での仕事探しを覚えています。私はキャリアフェアに行って、法律事務所で働いている会社と話を始めました。私は彼らに彼らの開発プラクティスについて尋ね始めました、そして、彼らはVBAですべてをしていることがわかりました。彼らの時間に感謝し、そこから出ました。


+ VBAストーリー用。私はVBA自体は気にしませんが、それでキャリアを作るのですか?あなたは正しいことをした。
マイクダンラベイ

私も部分的には同意しますが、ほとんどのプログラマーは行使するよりもはるかに柔軟性があり、あなたが言及する多くのことは、ポスターが自分自身にもたらすことができるものだと思います。会社がそうでなくても、ソース管理の使用を開始します。他の人に追随を促す。テストを開始し物事を改善しようと試み始めます。あなたが取り組んでいるものが吸うなら、吸う量を少なくします。
クリストファーキャシェル

3

もし私があなたなら、確かに仕事の後の読書や他の言語(Python、Java、Scala、Ruby、C ++など)でのプログラミングを検討することをお勧めします。 Perlよりも広く使用されています。また、他の興味のある分野がある場合、私は間違いなく余分な読書を行います。

一方、使用している多くのプログラミング手法は、プログラミング言語に関係なくおそらく同じであることに注意してください。

繰り返しになりますが、私の提案は次のとおりです。あまり心配する必要はありませんが、暇なときに新しいことを学び始めてください。十分な知識を集めたらすぐに、きっともっとエキサイティングな仕事を見つけるでしょう。


2

Perlでこれ以上作業したくない場合は問題ありません。

現在、Perlに多くのフラッシュがないため、人気がないという意味ではありません。


過去5年間でPerlの勢い劇的に増加したことを指摘したいと思います。

過去2年ごとに、過去2年間に比べてより安定したPerlのリリースがありました。

Mooseは、これまでで最も優れたPerlオブジェクトシステムの1つであると考えられており、2006年初頭まで遡ります。次に人気のあるオブジェクトシステムは、基本的に単純化されたMooseオブジェクトシステムです。

Mooseの人気を証明したい場合は、Mooseに依存しているCPANモジュールの数を確認してください。

Mooseを必要とするモジュールには、常にMooseを必要とするDist :: Zillaがあります。場合あなたは、知りませんでしたディスト::ジーラは間違いなくあるのビルドに単一の最良の方法、およびリリースのCPANモジュール。


また、Perlを使用している新しいプロジェクトがまだいくつかあります。Lacuna Expanse for one。


2

誰かがゴミを拾い、トイレを掃除し、溝を掘り、マクドナルドで働く必要があります。今、あなたはそのソフトウェア開発バージョンをやっています。

それを認識し、より大きな何かを目指すことには何も悪いことはありません!

今あなたがしていることは、明日、来年、そして次の10年にあなたがすることを明確に形作ります!

違うと言う他の誰もが、同じ憂鬱な場所にいることであなたを落ち込ませたり、気分を良くしようとしています!

Perlに関しては、「キャリア」という言葉の意味ではスタイルがありません。Perlの男としてのキャリアを作りたいのでない限り、より新しく、より流行の何かを学び始めてください。Python、Java、C#はより多くの扉を開き、市場性を高めるか、Erlangのように今後数年で大ヒットする可能性があります。

つまり、「やらない方法を学ぶ」こと、行う方法と同じくらい価値があり、他の人の間違いから学ぶことは、自分自身から学ぶことよりも痛みが少ないということです。

今、あなたはそれらの両方のレッスンを受けています。


-1:誰かがゴミを拾い、トイレを掃除し、溝を掘り、マクドナルドで働く必要があります。今、あなたはそのソフトウェア開発バージョンをやっています...あなたが今していることは、明日、来年、そして次の10年にあなたがすることを明確に形作ります!-すばらしい...だから、マクドナルドでトイレを掃除したり、ハンバーガーをひっくり返したりしているとしたら、10年後にはどこへ行くのでしょうか?:?
ジムG.

その仕事には何の問題もありません。基盤なしでトップから始めることはできません。誰かがその仕事をしなければなりません、私の答えからの重要なポイントは、あなたが完全に見逃した、より大きな何かを目指すことに何の問題もないことです。

1

perlに長けた人々への需要はまだたくさんあります。ネットワーク業界、および多くの* nixベースのsysadminジョブがperlを広範囲に使用していることがわかります。

そうは言っても、私はあなた自身の限界を押し広げることを提案する他の人をエコーし​​ます。perlを使用している場合でも、プログラムを最適化および合理化する方法を見つけてください。たとえば、プログラム(多くの場合、経験の浅いプログラマーの兆候)で線形アプローチを採用している場合、保守性を改善するためにコードをモジュール化する方法を見つけることができますか?言語に関係なく、少しのコードを読み取り、それを最適化してより良いコードに変換する基本的な能力は、非常に求められているスキルです。


公平を期すために、彼はPerlをノックしませんでした、彼はそれが将来彼がやりたい種類の仕事ではないと言っていました。そのため、Perlジョブが存在するという事実は二次的です。
R0MANARMY

OPの@ROMANARMY:「Perlの仕事はめったに見ません。そうすると、通常は興味のないことをしています(フロントエンドのWeb開発など)。システムプログラミング、視覚化network programming、または少なくともバックエンドのWeb開発は「うーん...私が読んだものではなく...」で実際に仕事をするのが好きなトピックの種類であり、それらの分野で仕事があります。私はティア1のインターネット会社で働いており、perlはバックエンドの仕事に広く使用されています。
法案

1

他の言語での経験を積み上げて維持する機会を探しながら、あなたが挑戦に立ち向かうことができる献身的な従業員であることを示してください。達成できる最高品質の安定した仕事の成果を維持し、余裕のある時間を使ってより多くの仕事をするか、または他の分野でスキルと知識を開発できるものを作成できる場合は自分自身を運転します。実際のビジネス上の問題を別の方法で(より流行の言語で)解決する簡単なデモでも、スキルを向上させ、上司に積極的に外で考えていることを示すことができます。サイドプロジェクトで作業するためだけに、他の仕事を怠けていると見なされないように注意してください。

献身が鍵です。卒業生は、多くの言語で長年の経験を持つことは期待されていません。たとえあなたが「つまらない」と感じるものを超えて見ることが挑戦であっても、あなたはいつでも本質的なコミュニケーションスキルを開発し、挑戦にステップアップできることを示すことができます。次へ進むとき、スキルをアップセルする方法を学びましょう。あなたは仕事で学び続け、スキルを向上させることを積極的に求めていることを次の雇用者に示すことが期待されます。

誰もが「すべてを知っている」ことを好むことを忘れないでください。私は常に、上級職であっても、さらに学び、成長したい人を雇うことを目指してきました。


1

シュヴェルン、

私はあなたと多くの点でまったく同じだと思っていました。私は大学でJavaとPythonの強力なスキルを持って出てきました。私の最初の仕事は、Delphiでの作業でした。私はすぐにこれを心配しましたが、私は雇用がなく、大学を卒業したばかりなので、言語に関係なくプログラマーとして働いた経験があるので、弾丸を噛んで仕事をすることにしました。

私の2番目の仕事は、ほとんどの時間、Smalltalk開発を行う大規模な銀行で、PerlとJavaを少し使って作業することでした。コアJava開発者としての仕事に就くことができなかったので、私の友人は私を笑い、履歴書を傷つけていると言った。私は今、数週間以内に新しい仕事を開始するのを楽しみにしています。それは私が働きたいすべてのテクノロジーを持ち、より良い給料を持っています。

明らかに、あなたの経験が私の経験と同じであるとは言えませんが、それから逃げることができるいくつかの教訓があります。第一に、プログラミングはあなたがすることの副次的なものです。優れたドメインモデリングスキルを持ち、ビジネスプロセスを迅速に学習できる場合、ビジネスの仕組みを学習し、ほとんどの場所で見られるマイナーな問題を専攻することに時間を費やすことを避けるのではなく、長期的にはより多くの配当を支払うことになります私は働いた。

あなたが覚えておく必要がある2番目のものは、あなたが他の人の時計の上にいるということです。何をすべきかについて独自の発言権を持ち、すべてを完全に制御したい場合は、独自のビジネスを開始してください。私はあまりにも多くの人が会社に参加し、レガシー技術についてうめいているのを見てきました。私は最初に卒業したときに自分でやりました。通常、これらの人々は職場に対して有毒であるとみなされており、長くは続かない。覚えておくべき重要なことは、テクノロジーはビジネスをサポートするためのものであり、その逆ではないということです。これらの状況でできる最善のことは、彼らから機会を創出することです。さもなければ、それは別の雇用をまとめて去り、求める時です。しかし、あなたが働くすべての会社を見つけることは何らかのレガシー問題を抱えています。

私が育てた以上に、私はあなたが「制度化された」ように見えたくないと言うでしょう。これが意味することは、あなたは特定の言語と技術の使用に固執しており、それを超えることはできないということです。ドメインモデリングスキルなど、キャリアの柔軟性を高めたいと考えています。あなたのキャリアのスタート以来、私はあなたが私が始めたときに私が利用できるようにしたかったいくつかの良い資料であなたを指摘します:

情熱的なプログラマー

実用的なプログラマー

ドメイン駆動設計

キャリアプログラマー


0

仕事以外でコーディングすることはできますが、あなたはまだ自分自身を傷つけているとは感じません。あなたは最近採用されたので、エントリーレベルの開発者です。ゲームのこの段階では、開発サイクルや「すべき」ことを学ぶ必要があります。

仕事以外で何かを追求して、統計を埋めることができます。私の意見では、コーディングすることもできないこともできます。言語と構文は習得できますが、問題を自分で考えて解決することはできません。

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