情熱プログラマー
市場を選ぶ
- 偶発的プログラミングという言葉がある
- 場当たり的に少しずつコードを書き足すこと
- トランプの城のように脆い
- 時に、君は偶発的キャリア選択をしていないか?
- 自分自身を「商品」と捉えて、戦略を考えて行動せよ
先んずるか、やられるか
- テクノロジ採用曲線
- 新旧を横軸に、採用件数を縦軸に取ったグラフ
- 両端だとハイリスク・ハイリターン
- 中心付近はローリスク・ローリターン
- バランスが大事かも
需要と供給
- 競争のポイントを価格から能力に帰ることが大事。そのためには:
- オフショアがやっているような仕事は避ける
- ニッチなテクノロジに注力する
- ただし、コモディティ化された技術であっても、需要が拡大していく中でハイエンドな仕事も生まれていく、というパターンもあるのでそれはそれで OK
コーディングはもう武器にならない
- ビジネス・経営の言葉を話せるエンジニアになると非常に強い
- 技術がわかる経営陣だとうれしいでしょう?その逆と思えばいい
- その意味で、どの業界を選ぶかはとても重要
一番の下手くそでいよう
- ハイレベルな集団に身を置け
- 集団心理により周りに振る舞いを合わせた結果、成長できるから
- 怖いかもしれないが、君は思ったよりひどくないし、失うものはないんだ から恐れるな
自分の知性に投資しよう
- ニッチなテクノロジーを学ぶとよい。なぜなら:
- 採用機会が増える
- 自己啓発と純粋な楽しみのために学べる人は、仕事にも意欲的な人物だと判断される
- 自分自身を高め、更に有能な人間になれる
- 採用機会が増える
親の言うことを聞くな
- 親の忠告は必然的に「不安」に根ざしたものであり、「失わないこと」が重視される
- しかし、面白さはリスクを犯した先にある。例えば転職とか。
- 面白さがなければ情熱は保てない
- しかし、面白さはリスクを犯した先にある。例えば転職とか。
万能選手になろう
- ビジネスは流動的だから、生き残りの鍵は「柔軟性」になる
- 汎用性のある人間になる
- 特定の役割やテクノロジで自分自身を規定するな
- 地位 - Manager / Developer
- Platform/OS
- Code or Data
- Infrastructur or Application
- Business or Technology
スペシャリストになろう
- スペシャリストとは特定の分野について深い見識があること
- 単に他のことを知らない、という意味ではない
自分の人生を他人任せにするな
- 1 つのテクノロジに掛けるのは愚かな選択
- どうしても選ぶならベンダ技術でなくせめてオープンソースを選択せよ
- 些末な詳細を学ぶよりも、抽象化された概念のパターンを習得することが最も大事
愛せよ、さもなくば捨てよ
- 情熱があれば
- 凡人からの一歩を踏み出せる
- 中毒者のように学べる、そしてそれが結果に現れる
- 情熱が持てるように色々探そう、試そう
- テクノロジ
- ビジネス
- チームの大きさ
- ウォーターフォール or アジャイル
製品に投資する
魚の釣り方を学ぶ
- 釣り方を自ら積極的に学び、一生の糧にしよう
- どういう仕組みなのか、なぜそうなるのかを、問い続ける、学び続ける
- 仕事で使うツール
- 使っているテクノロジ
- ウィザードの裏側
- ビジネス
ビジネスの仕組みを学ぶ
- 企業財務の基礎は時代に左右されないので学ぶ価値は高い
- ボトムライン(最終損益)
- コストセンター or プロフィットセンター
- 財務の知識があれることで、想像力を働かせて Profit を生み出す or コストを削減することができるようになる
師匠を探す
師匠の役割とは:
- 弟子の手本となる
- もって、弟子に対してより上を目指す動機を与える、など
- 何を学ぶべきかを示す
- 大量の学ぶべきものの中から最も重要かつ最適なものに絞り込んでくれる
- 評価・フィードバックを与える
- 成長の手助けになる
- 人脈を与える
- 「何を知っているかよりも誰を知っているかが重要」
師匠になる
- 教えることで物事を深く理解できる
- 強い社会的なつながりを得られる
- 教えることは気分がいい
一に練習、二に練習
- 実務で練習するという考えは捨てて、時間を投資しろ
- 練習の枠組み
- 身体的技術
- ほとんど使ったことのない機能を探して学ぶ
- 開発環境にあらかじめ用意されているツール群を学ぶ
- 初見
- オープンソースのコードをダウンロードしてできるだけ短時間で理解してみる
- 即興
- 小さいけど難しい問題を、タイマーを仕掛けて練習してみる
- 身体的技術