SMARTCAMP Engineer Blog

スマートキャンプ株式会社(SMARTCAMP Co., Ltd.)のエンジニアブログです。業務で取り入れた新しい技術や試行錯誤を知見として共有していきます。

エンジニア理解のためのオススメの1冊。byエンジニアをマネジメントする『マーケター』【根本思想理解編】

f:id:seomseomseom:20190724235756j:plain
UNIXという考え方

スマートキャンプでエンジニアマネージャーをしています林です。 私はエンジニアマネージャーをやっているのですが、エンジニアではありません。

マーケターとしてスマートキャンプに入社し、マーケティングの成果を最大化するためにディレクターの立場でプロダクト改善を行ううちに開発チームのマネージャーになったという経歴です。

tech.smartcamp.co.jp

非エンジニアがエンジニアのマネジメントをするにはエンジニアについて学ばなくてはいけないことが多々ありますが、私が色々と学んできた本の中で、特に役に立った書籍を紹介していこうと思います。

「UNIXという考え方」

この本をオススメする対象者と読むメリット

今回ご紹介する本は、私のようなマネージャーだけではなく、エンジニアと一緒に仕事をする人なら読んでみるととても参考になる本だと思います。

サブタイトルにある通り、UNIXの設計思想と哲学について解説した本なので特定のOSについて語ったものではあるのですが、そこには良いプログラムとはどういうものなのかという事など、プログラミングについての本質が書かれているように思います。

これらの内容はエンジニアの考え方を理解するのに一役買うと思いますし、想像力を膨らませて応用すれば、エンジニアでなくても自分自身の業務の改善に役に立つ要素が多く見つかると思います。

厚さは1cmないくらいで140ページ程の読みやすいボリュームの本なので、ぜひ読んでみてください。

この本を読んだ背景

この本は、弊社のエンジニアチームのメンバーに勧められて読みました。

私が大好きな経営者に、ミスミグループの社長をされていた三枝匡という方がいます。その方の書籍のなかで、事業組織はなるべく小さくあるべきという意味合いで「スモール・イズ・ビューティフル」という言葉が語られていますが、その話をしている時にこの本を紹介されました。 「エンジニアも同じ考えを重要視している」という文脈で、その詳細が書かれた本として教えてもらいました。

本の内容・構成・読みやすさ

この本では、上で紹介した「スモール・イズ・ビューティフル」だけではなく、プログラミングの根幹になるような考え方が様々紹介されています。

本の構成は、まず冒頭で主要な項目の概要の説明があり、次の章から項目のそれぞれについて詳しく紹介していく形になっています。

内容としては、UNIXの考え方として「教義にも匹敵する」と表現される程重要視される9つの項目と、「UNIX文化の一翼を担っている」と表現され、人によっては重要度に差がでるものの重要と考えられている10項目があります。それらの項目1つ1つについて、章やセクションを分けながら詳細に説明がされていきます。

最後にはその他のOSの思想についての説明があります。 このセッションがあることによって、相対的にUNIXについて考える事ができる構成になっていて、非常にわかりやすいですし、興味深く感じました。

構成は非常にわかりやすいですし、文章も著者の経験に基づく事例を交えながらフランクに語られている印象で、肩肘張らず読む事ができると思います。

私視点で学びになったポイント3点

①「スモール・イズ・ビューティフル」

冒頭で三枝さんが事業組織について同じことを言っているという話をしましたが、この本を読んで、「スモール・イズ・ビューティフル」は真理だなと再認識しました。

小さく分解して考え動かす事はマーケのタスクでも応用可能です。

例えばEFO(入力フォーム最適化)のためのABテストをするとき、フォームの配置の問題、フォームの入力補助の問題、誘導文言の問題、背景色の問題など切り分けてテストすると、どの項目がどれだけ影響を与えるかが明確にわかり改善PDCAを回しやすくなります。

何か施策を考える時に、最小単位に分解できているか?と考える事は施策の精度をあげるのに貢献してくれます。

②大きな一まとまりをつくるよりも、分解した小さなシステムを連携させるほうが応用がきく

スモール・イズ・ビューティフルに関連する内容ではありますが、小さな単位で作ると組み合わせでいろんな事ができるというのも真理だなと思います。この内容は、なんとなくそうだと思っていたものが言語化された感覚でした。

私でいうとこれはKPIをメンバー毎に振り分けていく時の考え方に近いと思います。大きくざっくり「みんなでこのKPIをおう」みたいな設定をしてしまうと、役割分担が不明確でメンバーが力をだしきれなかったり、終わった時に評価ができないという問題がおきます。

KPIも適切に分解し、そのKPIを追う人が結果をコントロールできる単位にすることが重要です。そのためKPI設計時に上記の考え方をもっていると、よりシャープに設計ができると思います。

③できるだけ早く試作を作成する

リーンスタートアップなどの書籍によって、今やアーリーリリースの重要性は多くの人が認識している状態だと思いますが、数十年前に既にそれが設計思想として定着していた事は驚くべき事だと感じました。

長く生き残っているものの根本思想はやはり優れている(先をいっている)と感じさせてくれ、そういうものから学ぶ事の重要性を再認識させてくれました。

できるだけ早く試作を作成する事自体は私は常に取り組んでいかないといけない事ですが、タイミングによっては徹底できてない事もあります。この件についてはしっかりと意識し、引き続きやっていきたいと思います。

この本を読んで役立った事

エンジニアを理解するという方向で役立った事としては、『エンジニアの頭の中がどうなっているか』を想像しやすくなった事があります。

日々の会話のなかで、「要素を小さく分解してるんだな」とか、「過去のプログラムを組み合わせて活用する事を考えているんだな」とかいう想像がついたり、よく言われる「闇」という状態が何となく想像できたりして、この本を読んだことでよりコミニュケーションがとりやすくなったと思います。

またリファクタリングの重要性や価値についてより理解できるようになるので、その工数を取りたいというエンジニアの要求についても合理的に理解できるなどしています。

根本思想を理解することができると、大枠何が正しくて何が間違っているかが判断できるようになり、そのレイヤーでは共通認識を持つことができます。それによるメリットはかなり大きいと感じています。

まとめ

この本は、エンジニアの考え方について理解する上で非常に役に立つ本です。

また概念を応用することで、私でいえばマーケティングなど、エンジニアリング以外の業務に役立てる事もできると感じます。

エンジニアを理解する上でも、ご自身の仕事の上でも実用的な本だと思うので、ぜひ一読される事をおすすめします。