プロが教えるわが家の防犯対策術!

私はプログラマ2年目でいまだに先輩に質問ばかりしてしまいます。
処理の流れ・ロジックを考える発想力・想像力を養うには
やはり、多くの経験を積まなければならないのでしょうか
将来的にはシステムエンジニアとして定年まで働きたいと考えていますが
この業界に生き残れるのか不安でしかたありません。
先輩社員の様にどんな仕事を割り振られても必ずプログラムを仕上げるという
自信が未だにありません。早く自信をつけたいです。将来の不安を取り除きたい
です。このままでは、結婚どころか彼女を作るのも躊躇してしまいます。
社会人2年目となるともう一人前だから質問はなるべく控え自分で解決する
能力を養えという回答をよく目にしますが、今の自分にはロジックを考える
想像力・発想力が足りず、最終的には先輩社員にヒント、解決策を聞いてしまいます。
しかし、ヒント、解決策を教えてもらったらちゃんと自分でプログラミングして
仕上げをします。ただ、この前、どうしてもわからないプログラムがあったため
先輩にその仕事を引き受けてもらったことがあります。いっそう、自信を失い
まだまだ自分には圧倒的に経験が足りないと感じました。


また、自分にできるプログラミングの仕事が少ないため、
いつも1時間位の残業しかしていません。定時で帰ることも多いです。
やはり、この業界はできる人に仕事がまわり新人やできない社員には
仕事が少ないですよね。

皆さんからの温かい応援メッセージ等を期待して質問を終わりたいと思います。
皆さんお忙しい中僕の仕事の悩み・質問をご覧になっていただきありがとう
ございます。

A 回答 (5件)

>>処理の流れ・ロジックを考える発想力・想像力を養うには


やはり、多くの経験を積まなければならないのでしょうか

新しい「処理の流れ・ロジックを考える発想力・想像力」を養うなら、そうでしょうけど、通常のお仕事に使う「処理の流れ・ロジック」であれば、「構造化プログラミング」「データフロー」「複合設計」「アルゴリズム事例集」などの書籍を調べて、そこに紹介されているロジックやアルゴリズムを使うことになると思います。

数学に例えれば、質問者さんは、2次方程式の問題を解くのに、すでに教科書に掲載されている「解の公式」とかナントカの定理を使わず、自分で「解の公式」や定理を探しだそうとして時間を使っているといえるのではないでしょうか?
もちろん「数学を学ぶ、よく理解する」という点からすれば、「解の公式」を使って、簡単に答えを出すよりも、解の公式を自分で導き出して、それから、その公式を使うほうが学びは大きいですけどね。

私の先輩(トラブル対応による過労が原因でなんらかの病気を発し、妻子を残して若くして亡くなった)は、難しいと思える仕事を、わりと楽にこなしていたようですが、どうも、ネットで検索したり、昔いた職場の優秀なプログラマの方に相談して、こっそりに似たような処理のソースをもらったりしていたみたいでした。他人の力を借りるのが上手いってことでしょうね。

科学の分野で、新しいことを発明・発見するのは、ごく一部の天才的研究者だと思います。多くの方は、それを利用する、応用するだけです。同様に、プログラミングの世界でも、数学や科学の教科書にあたるような「必読書」「有名書籍」の中にあるアルゴリズム・ロジックを学んで、それを利用・応用するのが早いと思いますよ。

>>また、自分にできるプログラミングの仕事が少ないため、
いつも1時間位の残業しかしていません。定時で帰ることも多いです。

以前の職場では、「この人がこの職場を支えている」って周囲が思っているプログラマの方は、周囲が残業する中において、ほとんど定時で帰っていましたよ。
まあ、デスマーチになってしまえば、ほとんど定時ってのは無理になります。でも、そうなりそうな場合、この方は「政治力」を発揮して、「リスケ(ジュール)」に持ち込んで、過負荷になることを防いでいるようでした。

残業が少なく、早めに帰ることが可能なら、ネットで「プログラマ必読書」として評価されている書籍を片っ端から読破することをお薦めします。
    • good
    • 3

私は26歳で、この業界に入り、SEで定年まで、生き残りました。


SEになりたいのでしたら、システム全体のなかで、自分が担当しているプログラムの位置づけを、きちんと理解しないといけません。
時間があるのでしたら、そういった設計書なり、要件定義書なり、システム全体を説明したものを読みましょう。
システムの設計思想が分かるようになれば、もうSEです。
    • good
    • 0

就職前にプログラミングの経験はあるのでしょうか?


何ごとでもそうですが、経験1年ちょっとで自信満々であれば、ただの過信です。

野球やサッカーだって経験1年じゃ経験者というのもはばかられますよね?

コンピュータソフトウェア開発は、敷居が低くて奥が深い世界です。簡単なものは普通の小学生にも十分作れますが、規模が少し大きくなるだけで格段に難しくなります。
まあ、プログラミングだけに限れば2,3年ぐらいで独力で依頼どおりのものを上げられる様になることが多いですが、そこで「プログラマとしては十分なレベルになった」として成長を止めてしまうか「やっとスタートラインに立てた」と思ってさらに勉強するかで、その後のキャリアが大きく変わると思いますよ。仮に数年でプログラマを辞めたとしても。


で、残業が少ないのなら、自由な時間を使ってプログラミングに関する本を読みましょう。仮に通勤電車の中で読むだけだったとしても毎日続ければ結構読めますよ。
お勧めは下記の3つです。

■ コードコンプリート
http://www.amazon.co.jp/dp/489100455X

筆者の言うコードコンストラクション(詳細設計から結合テスト辺り)の解説書。変数の命名に関する議論からデバッグ、リファクタリング、チューニング、コメントなどまで幅広く扱っています。特定のプログラム言語に依存しない原則・技術を、非常に基礎的な部分から学べる数少ない書籍です。


■ 達人プログラマ
http://www.amazon.co.jp/dp/4894712741

要件定義からプログラミングまで幅広い話題を扱っています。具体的なコードや手法に言及している部分も有りますが、原則・心得的なことが中心です。


■ 珠玉のプログラミング
http://www.amazon.co.jp/dp/4894712369

プログラムのアルゴリズムやテクニックを分かりやすく楽しめるように紹介した読み物です。


> やはり、この業界はできる人に仕事がまわり新人やできない社員には
> 仕事が少ないですよね。

いや、いわゆるデスマーチプロジェクトでは、能力の有無に関わらず、どのメンバーもキャパの数倍以上の仕事を割り振られますよ。
確かにまず出来る人に仕事がまわりますが、いくらこなしても残作業が増える一方という状況になるので・・・。
    • good
    • 0

SEをしている者です。



たしかに、アルゴリズムを考えるにはある程度経験を積む必要があります。
ただし、その経験は仕事だけではなく自力での勉強による経験も含みます。


自分でプログラムのロジックを考えられないことについて
それだけ自信がないということですね。

であれば当然、ご自分でもアルゴリズムの本を買ってそれに載ってるプログラムを
実際に書いて動かしてみたりして、勉強されていますよね?
先輩方に比べて働く時間が短い分余る時間を、もちろん有効活用されていますよね?

プログラム言語は会社で使っているものでなくてもいいんです。
アルゴリズムはどの言語でもほとんど共通ですから。



今現在、仕事をこなしている先輩方も、はじめから今のようにできたわけでは
ありません。個々に勉強の時間をとって、今のように成長されたはずです。
ということは、あなたも経験を積めば成長できるはずです。

頑張ってくださいね。
    • good
    • 0

その先輩にも新人の時代があり、同じように悩んで成長されたんだと思います。


つまり、最初からスキルがある訳がなく、経験がスキルを生むのです。

質問するという事は決して悪いことではありません。

ただ、質問する場合は、かならず自分で何通りかの考えを持ち、
その考えで良いかどうか、ダメであれば答えを教えて貰わず、
ヒントを貰うようにすれば良いでしょう。

そして、どういう考えが良くてどういう考えが良かったかを常に自分で検証します。
そういう繰り返しが大切だと思います。

頑張ってください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!