soft-skills
IT

SOFT SKILLS ソフトウェア開発者の人生マニュアル 書評

効能

スーパエンジニアへ進化できます

こんな人にオススメ

エンジニアに憧れがある人、もしくはより良いスキル学習を学びたい方

ソフトウェア開発者の人生マニュアル

本書にはより良いソフトウェアエンジニア人生を送るためのアドバイスやスキルハック、ノウハウなどが記載されています。
著者のジョン・ソンメズはアメリカのソフトウェアエンジニアなので、この本に記載のある全ての方法が日本のエンジニアに当てはまるとは思えませんが、とかく日本人は自己アピールが上手ではない傾向にあるので、多少厚かましくとも、参考にできる内容は多いのではないかと考えています。
ただし、アメリケン丸出し、Yeahhhhh ! I’m SUPER Software Engineer in U.S.A ! U.S.A! みたいなノリも入っちゃってます。なんせ、冒頭から

スタートから派手にいこう !
誰もがするようなことはするな

SOFT SKILLS

Fuuuuu ! It’s so cool ! Awesome! Amazing spiderman ! Captain America !

。。。。|ω`)

そんなの最初から分かっとるわ! それができたら苦労せんわい! 少しは侘び寂びの美学を学ばんかい! 
という気がしないでもないですが、悲しいかな、グローバリゼーションが進む現代ではやはり積極的に自分をアピールする必要がありそうです。
そして、ソフトウェア開発者は「事業者マインド」が必要になると著者は説いています。
ソフトウェア技術者はそのキャリアにおいて多くの間違いを犯すが、その最大の誤りは、ソフトウェア開発のキャリアを事業(ビジネス)として扱っていないことだ、とも説いています。
では、自分のキャリアをビジネス、事業として捉えた時に、提供するもの、強みとするものは何になるのか。その認識を強く改めたほうが良い、という記述もありました。

ソフトウェア開発は、様々な活動や各種サービスを包み込む広い意味の言葉だが、一般にソフトウェア開発者は、アイデアを受け取ってそれをデジタル化された現実に変身させる能力を売っている。 あなたが提供しているサービスは、ソフトウェアを作れる能力だ。

SOFT SKILLS

つまり、ただ言われたことをコーディングすることがソフトウェア開発者の仕事ではなく、顧客の要望、ユーザの願望を現実世界に落とし込み、より良い世界を構築するのがソフトウェア開発者の強みになるのです。
個人的には、ソフトウェアエンジニア、アプリケーションエンジニアは非常にやりがいのある仕事ではないかと思いますし、現代においては比較的、自立/独立しやすいスキルではないかと考えています。
そして、賢明な皆さんは副題でお気づきかと思いますが、本書はこのソフトウェアスキルを使って、人生(ゲーム)をどのように攻略していくかをまとめたマニュアルとなるのです!

中身は全然ソフトじゃない

いや、ダジャレとかではなく。
本書は著者の経験やキャリア形成の実例を交え、ソフトウェア開発者の人生マニュアルを書き上げているのですが、その内容は結構、ハードなもんです。
著者は引退するまでにかなりストイックな生活を送っていたらしく、代表的な例として、テレビ鑑賞の時間を削減することを推奨しています。

私が真っ先にテレビを標的にしたのは、ほとんどの人がもっとも大きく時間を浪費するものだからだ。
この浪費を削減しただけで、あなたの生産性は2倍、3倍になり得る。
お金が少し節約できることは言うまでもない。しかし、時間を大きく消費するものはほかにもあり、生活からそれを取り除く方法も知っておいた方がいい。

SOFT SKILLS

私自身はあまりテレビを見る方でなかったので、このあたりは苦にはならなかったのですが、人によっては楽しみにしているドラマがある、必ず見るニュース、バラエティ番組があるなど、脱テレビに関しては苦労する方もいるのではないでしょうか。
その他にも新しいスキルを学ぶための時間を捻出するために、様々な工夫が必要であるとの記載があります。
このあたり、修行者というか、求道者のストイックな空気が漂ってきそうなマニュアルとなっていますが、おそらく、著者はそこまで苦行になると考えていないのではないでしょうか。
既に何かしらのエンジニアになっている方は分かると思うのですが、システマチックに動くもの、規則正しく動作するもの、例外処理が発生しないシステムを構築することが楽しくなる時がありますよね。
おそらく、著者もそのような感覚で自分のライフスタイルをハック(システム構築)をしたのではないかと思います。
「これをした方が効率がいいんじゃないか」 「ここはパフォーマンスが出ていないな。改良しよう」 「同じような問題が毎回発生しているな。どうやったら再発を防止できるのか」 「次回はこうやったらもっと便利になりそうだ」
そんな、ソフトウェアを設計する感覚で、日々の生活をアップデートしていったのではないでしょうか。
ですので、皆さんも自分の人生を「ソフトウェアを設計するように」考えてみても面白いかもしれません。

SOFT SKILLS 感想・レビュー

ソフトウェア開発者のあるべき姿、キャリアの築き方を教えてくれる、とても良い本ではないかと思います。
ソフトウェアやアプリケーションを開発する際には、新しいプログラミング言語やフレームワークなどを学習することが必要となるのですが、本書では10のステップに分けて効率よく学習する方法も記載されています。
新しいプログラミング言語を習得しようとする場合、まずは全体像を掴んでから、その技術で遊ぶ時間を持つ方がよい、と著者は述べています。
つまり、本や技術サイトで学習する時間を長くするよりも、全体像を掴んでから、さっさと実装テストをしてみたほうが良いよ、と語っています。
あまりに事前学習なしに実装テストいわゆるプログラミング言語による遊びはできないと思うので、このあたり、バランス感覚が非常に大事になってくる、とも述べられています。
また、人生マニュアル、と銘打つだけあって、著者のユニークな半生についても記述があります。ビンポールマシンの販売を始めたり、ブログで稼いだり、かなりぶっ飛んだ半生を送っていることが分かります。
最終的に著者はある方法を使ってセミリタイア生活を送ることに成功したのですが、どのようにその成功を収めたかは、是非とも本書を手にとって確認してみてください。



P.S
プログラミングを学習したい、プログラミングで仕事の幅を広げたい、という方はスクールに行ってもよいかもしれません。
アメリカですとCodeCampといって数ヶ月引きこもりで過ごしてプログラミング技術を学ぶ専門学校もあるみたいですが、日本でも専用のスクールが充実してきた印象です。
興味ある方は是非、コードの持つ面白さに触れてみてください。