Doge log

Abby CTO 雑賀 力王のオフィシャルサイトです

覚悟を決める 新卒準備カレンダー 2011春

このエントリーは新卒準備カレンダー 2011春 : ATNDという、みんなで仕事に関して自分が考えることなどをエントリーに書いていく企画で書かれたものです。
事の発端は某所でgdgd言ってた話が膨らんでこーなったわけですが、まあその場に居合わせてのもあり何か書いてみようと思います。
はっきり言ってみんなに書きたい事が書かれてしまってるので適当です。

震災に関しては他で散々言われてますので敢えて触れません。

お前、誰よ?

@mopemope:松原 豊と言います。株式会社 Abby CTOやってます。大掃除では便所掃除を担当しています。
一時期、Seasar界隈のコミッタをしていた事もありますが、今はほぼpython界隈の人間です。
アウトプットとしてはまあなんか本とかjavaの雑誌にチラ裏みたいな事書いたりしてます。
他にも

  • PEP249の実装(pymysql、mysqlのDBドライバ)
  • PEP333のサーバ実装(wsgi server、meinheld)

など主要なPEPの実装をしてたりします。

この業界に入ったきっかけ

まあ新卒向けなので自分の時はどうだったかなというのを少し書いておきます。
僕は高校生の時からずっとバンドをやっていて、コンピューターに触れる機会も全然ありませんでした。
大学生の頃にはもうライブハウスに半分勤めてるような状態で、「まあ卒業しても最悪このままライブハウスで働くかな」といった感じでした。
それもあってか、就職活動はほぼしていませんでした。
当時2000年頃はいわゆる就職氷河期ってやつで就職活動してもまともな会社にはなかなか入れないし、就職先も工場ばっかだったせいもあります。
工場で働くのは抵抗があったので、結局卒業するまで就職先が決まってない状態でした。
まあよくある話です。
とはいえまあカタギの仕事をしてないとまずいかなと思い、その辺に売ってる就職情報誌を見て工場以外の職種に適当に電話をしてみたりしていました。
で運よく派遣PGとして潜り込むことに成功というわけです。
世の中なんとかなるもんだなと思います。

覚悟を決める

とりあえずこの職業に就いた方には是非覚悟をしてもらいたいです。
プログラマは常に新しい事を覚えなければならない職業です。この職業についてる限りそれがずっと続きます。
私が言いたいのはこの「ずっと続く」という所に関してどれくらい認識、覚悟してるのか?という点です。
もし、覚えることがめんどいとか、勉強が苦手、苦痛という人は無理にこの職業につかない方がいいでしょう。
もちろん中にはそういった事を考えなくても済むような根っからのプログラマ体質の人もいるでしょう。
(そういった人は非常に少ないです)

私は一応この職業について10年超えてますが、今でも勉強しています。
もちろんずっと続けるにはそれなりに工夫もしていかないといけないでしょう。
続かせるためにどうするか?という事も考えていかなくてはなりません。

本当に勉強しないといけないのか?

さて、本当に勉強しないといけないのか?という点ですが、しないといけません。
メシを食っていくという点でいけば。

もちろん、旧来の方法でも出来ることは多々あります。
ですが、新しい方法は旧来よりも様々な事が改善されています。
(まあ新しい方法なので当たり前ですけど)
まあ改善内容は効率、ミスをしにくくなるなどありますが一番大きいのは所要時間でしょう。
同じ仕事するのに長い時間がかかる人と短時間でミスも少ない人だとどっちに仕事をさせたいですか?
勉強していない、効率の悪いPGは基本的に仕事がもらえなくなり食っていけなくなります。

僕はひとつぐらいスクリプト言語を覚えておくことをお勧めします。
やっつけ仕事をサッと終らせるためにeclipseを立ち上げるとかオーバースペックです。
下手すると起動する間に仕事を終らせることも可能です。

動機付け

まあとは言え勉強し続けるモチベーションを確保するのはそれなりに大変です。
結局どう動機付けしていくかが問題です。
パターンとしては以下のパターンぐらいしかないでしょう。

  • 楽したい
    • 楽な方法ないの?
    • 遊びたいからさっさとこの仕事終らせる方法ないの?
  • 目立ちたい
    • 一番最初にこれをやったら目立てる
    • 日本でxxxの第一人者になりたい
  • 興味がある
    • おもしろそう
    • xxxを作ってみたい

この中からうまく選択していけばいいと思います。
ただxxxを作ってみたいシリーズは注意です。
漠然と思ってるだけでは全くもって無意味です。
少しでも自分で調べ、書けるとこだけでも書いてみることをオススメします。
完成しなくても構いません。書いて残しておく事が大切です。
少しでも書くのと書かないのでは大違いです。
真面目にやっていれば自分がレベルアップし、続きが書けるようになります。
いきなりエベレストに登ろうとしても無理なようにチマチマ経験を重ねることが大事です。

やりたいときが始め時

新卒時から覚悟しておくことがベストですが、やって遅すぎるという事はありません。
特に年齢は気にしなくてもいいです。
やりたいことがあれば今すぐはじめればいいでしょう。
私もCでHTTPサーバー書いたのは30過ぎてからなので全然問題ないでしょう。

問題はやるやる詐欺の方です。
よく「xxxxについてやってみたい」みたいな話を聞きますが、今のご時世ほとんどの事は始めようと思えば今すぐ始めれるはずです。
(もちろんそのために色々とやってることがあれば問題ないでしょう)
やらない理由探しをせず、うまくやる方向に自分を持っていくべきでしょう。

途中結果のコードなどは必ず捨てずに取っておくと良いです。
それがヒントで先に進めるような事もあったりするので。
Dropboxなどで共有しておくとどこからでも読めるのでオススメです。

オススメの書籍

僕は技術書の前に考え方を身につけるために、ロジカル・シンキング、クリティカル・シンキング系を本をまず読むことをお勧めします。
考え方の基本を学んだ方が何をやるにも効率があがるので基礎力(思考力)を上げるようなものを読むことお勧めします。
土台が違うと将来ものすごく差が出ます。

最後に

今回の震災では大変多くの方々が被害にあわれてると思います。
ですが、幸いにもネットというインフラは一部を除いて機能しています。
我々エンジニアが作った物も安否確認に役に立ったり、情報を整理するために使われたりと色んな事に役に立っています。
そういった方向でも支援することができるという事を覚えておいて下さい。
キツイ職業というイメージではなく色んな事で役に立てる職業である事を覚えておいて下さい。

また今回の震災で亡くなった方々にご冥福をお祈りします。

次は@xuwei_kさんの予定です。