8回目、ケーワイケーです。
予定を変更して、今回は「効率」について考えてみようと思います。
仕事をしているとき、自分は常に効率を考えながら仕事をしているのですが、それは基本的に自分がめんどくさがりで、怠け者だからだと思っています。
極力手間をかけたくない。
極力しんどい作業はしたくない。
極力つまらない作業はしたくない。
そういった、「楽をしたい」という考えから、仕事の進め方を効率化しようとしています。
同じ結果を出せるのであれば手順は極力少なくし、同じ結果を出せるのであれば、自分が細かい作業をしなくて済むように、自動化ツールを作って作業を自動化します。
楽をするための努力は惜しみません。
効率化というものは、そういった「楽をしたい」というところから始まっているのだと個人的には思っています。
自分の知識を深めるために勉強するのも、新しい技術を学ぼうと思うのも、「楽をしたい」ためです。効率化のために、時間を割いて勉強しているわけです。
この業界にはさまざまなDBや言語、開発手法があり、それぞれに一長一短があります。
効率化を理由に特定の言語を強く推される方もいますが、わたしは効率とはそういったものではなく、メンバー構成や顧客の要望などのさまざまな外的要因を考慮して、どの場合でもその状況で開発者が「楽に」仕事をして、使用者が「楽に」使えるシステムを作ることこそが効率化だと思っています。
メンバー同士の無駄な議論やいがみ合いで労力を使うのは、わたしからすると「無駄」で「非効率」です。
例えばAという言語では処理に1秒かかり、画面に結果を表示するのにトータルで2秒かかるとします。
Bという言語を使えば処理に0.001秒かかり、画面に結果を表示するのにトータルで0.01秒かかるとします。
システム利用者が画面表示2秒にストレスを感じない場合に限定して、Aという言語を得意とする人や経験者がPJメンバーに多いのであれば、わたしはAという言語を選択します。その方がトータルで考えると「効率的」だからです。
無理やりBという言語を選んだとしても、慣れない言語でバグも増えるでしょうし、開発工数もかさむでしょう。
もちろん技術者ならBという言語を取得しておけという批判は正しいでしょうし、わたしもBという言語を勉強すると思います。
けれど、それと実際仕事で選択するか否かは別問題です。処理速度という細かな部分にとらわれてしまって、
「Bを選択しないの技術者じゃない!」
と断じるのは、仕事という枠組みの中では非効率的だと、わたしは思います。
議論でも同じだと思っています。
同じことを主張していても、批判を浴びる人と浴びない人がいる。
それは結局、主張している人が、効率化できているかできていないか(あるいはしていないか)だと思っています。
自分の主張を周りと無駄な摩擦を起こさずに主張するには効率化しなければいけません。もちろん自分の主張と相反する考えを持つ人からの反論はあるでしょう。けれど、効率化すればそれ以外の、主張している内容と関係ない批判は少なくなると思います。
余計な摩擦を減らし、最適な結果を得ることが「効率」と呼べるのではないでしょうか。
反対意見を罵倒する過激さで人を集めたとしても、それは決して主張が認められたのではなく、面白がられていたり、馬鹿にされていたり、笑われていたりするのです。
わたしなら、自分の主張は色眼鏡をかけずに聞いてもらいたい。そうすることで話を真剣に聞いてくれる人が増えて、結果的に自分が求めるものに近づけると思うからです。
偉そうに言いましたが、わたしも、まだまだ自分自身が効率化できていないと思っています。
もっともっと効率化して楽をしたい。
最終的には寝ながら仕事をしたい(最近夜泣きで本当に睡眠時間が危険なのでこういう願望が)。
そんなことを思いながら、日々勉強です。
次回こそは、2回遅れで「流行り物って遅れて採用?」を題材に書いてみたいと思います。
それではまた。