エンジニア

エンジニアとしてやっていく上で大切なこと

More than 1 year has passed since last update.

先日、t_wadaこと和田卓人さんの講演で、「エンジニアとしてこの先生き残るために」という話を聞いてきたので、内容をまとめてみました。
すごくためになるお話だったので、自分の今後の行動指針にしていきたいと思っています。(願望)

大事なこと

  1. 学ぶ姿勢を持つ
  2. 手を動かして身につける
  3. アウトプットをしていく
  4. 刺激を忘れない

学ぶ姿勢を持つ

日々新しい技術が生まれていくこのご時世、常に学んでいくことはとても大事。(わかってはいるのですがなかなか大変)
そんな中で学んでいく指標としては、
・四半期ごとに技術書を読む = 3ヶ月ごとに技術書を読むことを続けていく
・毎年少なくとも1つの言語を学ぶ
言語は仕事で使ってるものかそれに近い言語が良いそうです。(でも枯れた言語は避けてナウい言語の方がベター)
目標としては、動くものアプリケーションを作成するか他の人に使ってもらえるライブラリを作成するまで!

手を動かして身につける

デールの円錐というものがあるらしく、ざっくり言うと見たり聞いたりするだけでなく、話したり手を動かしたりする方が頭に入るよということらしい。
取り組み方としては、以下のようなものがあります。

  • 写経
    技術書のサンプルコードを写して実行
    実行したらコミット(コミットログにページ番号を書き込む)
    疑問点があったらコミットログや本に合わせてメモする
    章ごとにタグを打つ

  • 毎日コードを書く
    毎日書く、ブログ、ドキュメントなどはコードを書いてから
    意味のあるコードを書く、インデントやフォーマットの修正、リファクタリングは含めない
    24時までに書く
    Githubに載せる

アウトプットをしていく

正のフィードバックループという考えがあり、アウトプットをすることでそれに対しフィードバックがあり、そのインプットを受けてさらに良いアウトプットができるようになっていくというもの。
アウトプットのチャネルとしても、以下のように様々なものがあるので、できるところからやっていくのが良いでしょう。

  • Twitter
  • blog,Qiita
  • 雑誌
  • 書籍
  • 講演
  • ライブコーディング
  • Github

ライブコーディングがエンジニアの極み(和田談)とのことなので、最終目標はライブコーディングになるでしょう。

刺激を忘れない

同じものをずっと続けていても依存化しています。

  • 定期的に自分のスキルを棚卸する
  • 外部に出て自分のスキルを相対化する
  • 使う道具を定期的に変える
  • 未知のコミュニティ
  • ペアプログラミングをする

など外部からの刺激を受け取るようにしましょう。
プログラマを続ける上で、年下の人から技術を学んでいくことは、自分にはない新しい発想を得られるなどとても重要のようです。

おわりに

エンジニアとして続けていくには、とてつもない努力が必要だということはよくわかりました。
毎日コーディングや講演などハードルが高いものもありますが、写経やqiitaへの投稿など自分のできるところからコツコツ進めていきたいと思います。

おまけ

和田さんが影響を受けたという書籍を紹介します。
プログラマが知るべき97のこと
達人プログラマー 職人から名匠への道