こんにちは、CTOのあんちぽちゃんです。
先日、このブログで組織面における「いるだけで成長できる環境」というコンセプトについて書きました。一方、技術面におけるコンセプトもあって、その中でキーワードとして「事業を差別化できる技術」というフレーズを提示しています。
そのような技術を我々が作っていくためにはどうしていけばいいのか、エンジニアに関する制度的取り組みはそのこととどう関係しているのかについてあらためて社内向けに文章にまとめたのですが、せっかくなのでこちらにも掲載しておこうと思います。
この話の前提になっている「エンジニア職位制度」については、私が書いた以下のエントリをご参照ください。
(このエントリはPepabo Advent Calendar 2015の25日目の記事です)
他社に負けない競争力を持つためには高度な技術力が必要
事業で他に負けない競争力を持つためには、少なくとも以下の3つのいずれかで優位性を持つ必要があるとよくいわれます(元ネタはマイケル・ポーターの『競争の戦略』です)。
- コスト・リーダーシップ
- 差別化
- 集中(ニッチ)
そのような競争優位性は、もちろんエンジニアだけでなく、会社・事業部全体として作り出していくものですが、ペパボはWebサービスという、技術によって作り上げるもので事業を行っている会社なのですから、いずれの道を進むにしても技術力が大きく問題になってきますし、さらにいえば、技術力で他社に負けないかどうかということになります。なぜなら、
- コスト面で優位に立つには、我々は大企業ではないので物量ではなく技術的なブレークスルーが必要
- 差別化で優位に立つには、他のサービスに負けない技術で差をつけなければならない
- ニッチ戦略で優位に立つには、独創的な技術でもってユニークなサービスを提供することが必要
という理由からです。そう見ると、結局は1〜3全てを含んだ意味において、他社から「差別化」する高度な技術が必要であるということになります。
エンジニア職位制度はその技術力を醸成するためのもの
そのことを前提とした場合、エンジニア職位制度もその一部である人事制度や、制度とまでいかなくとも、日頃の雰囲気作りを含めた生産性向上のための取り組みは、上述した競争優位性を醸成し、それをもって1〜3のすくなくともいずれかの道を通って、結果として他を圧する業績を残すためのものであるべきです。
すなわち、競争に打ち勝つために必要な「事業を差別化できる技術」を生み出すための方法のひとつとして、エンジニア職位制度を位置づけることが必要です。
それでは、「事業を差別化できる技術」を生み出すためにはどうしたらよいのでしょうか。その答えを、いま僕が明確に持っているわけでは、残念ながらありません(答えがわかっていれば、既に実行しているでしょう)。ただ、このようにしていけばいいのではないか?という信念は持っています。
専門職は、高度な専門的な能力を持ち、それに基づく倫理、社外を含めたコミュニティを持つ
エンジニア職位制度は、1〜3等級までとは異なり、専門職としての4等級以上について定めるものです。すなわち、専門職としてふさわしい能力を持っているかを認定する制度であるといいかえられます。では、専門職とはなんでしょうか?
いろいろな定義があり得ますが、よく使われる定義としては以下の様なものがあります(専門職の倫理(professional ethics)より引用)。
- 理論的・体系的で高度な専門的知識と長期の訓練を要する専門的能力
- 倫理綱領による道徳的整合性の保持
- 組織化された専門職団体の存在
これは、たとえば弁護士や医師などを思い浮かべると、「なるほど」と了解しやすいのではないでしょうか。
ところで、Webエンジニアがここでいう専門職であり得るのかどうかについては意見が別れるところでしょう。たとえば、1.については確かにそういうひとはいるように思えますが、2.や3.については、Webエンジニアにとってのそれらは、無条件には存在を認めることはできないでしょう。
ただ、2.を「エンジニアリングの専門家として事業の成長に有効だと信ずる意見をしっかりと持ち、それを主張できること」、3.を「単に社内における職種ではなく、社外を含めたエンジニアコミュニティ(人の集まり、勉強会、OSS、書籍やWebの技術情報など)」と解釈すると、そういったものは存在するように思われます。すなわち、1.の能力に基いて2.があり、そのような人々の集団として3.があるということです。
エンジニア専門職が「事業を差別化できる技術」を生み出す
他社との競争に打ち勝ち、結果として高い業績をあげるための「事業を差別化できる技術」を生み出すには、高度な技術力が必要であることは、冒頭に述べた通りです。そのためには、エンジニアのできるだけ多くの人々が、上記の定義にいう「1. 理論的・体系的で高度な専門的知識と長期の訓練を要する専門的能力」を持ち、また、「2. 倫理綱領による道徳的整合性」に基いて行動する必要があります。
また、「3. 組織化された専門職団体の存在」に対応する、社内外におけるエンジニアコミュニティにおける影響力の発揮や、それらのコミュニティへの参加が1.の能力を高めることに大いに役立つことは自明であるし、最も効率的であると信じます。ペパボが、社内外におけるアウトプットを特に重視しているのは、そのような理由によります。
ところで、1.の定義における「理論的・体系的で高度な専門的知識」とはなんでしょうか?もちろん、IT関連の資格のようなものがそれを証すということもあり得ますが、Web業界のように変化の激しい事業環境においては、それだけでは十分とはいえません。そのような能力は、「理論的・体系的」という言葉が示す通り、不断の学習、そしてその振り返りによって形成されるものであると思います。
このことを踏まえると、エンジニア専門職とは、「高い業務遂行能力を前提としつつも、それを理論的・体系的なものとして昇華した、高度な専門的知識・能力」を持つ者が、まずはその要件であると考えます。つまり、現に業務として担当しており、遂行する能力が高いということを超えた、理論的・体系的な知識・能力が必要であるということです。
業務があって知識・能力があるのではなく、高度な知識・能力を業務に適用することで、高い生産性を発揮できる、という順番で技術を認識し、実行するということです。
「事業を差別化できる技術」を持つ専門職としてのエンジニアになってほしい
繰り返しになりますが、高い業務遂行能力は前提です。それなくしては、高度な知識・能力もなにもあったものではないことは自明です。また、仮にそうした知識・能力を持っていたとしても、2.や3.における実践ができていなければ、すなわち行動がともなっていなければ、会社にとってなんの意味もないことであるのもまた、自明なことです。
みなさんには、業務をきっちりと高いレベルで遂行した上で、これまで述べてきたようなエンジニア専門職としてふさわしい知識・能力を身につけ、そのことにより「事業を差別化できる技術」を生み出し、結果として高い業績をあげることに大きく貢献してほしいと思っていますし、そのことを最大化するのがCTOの大きな役目のひとつであると考えます。
今回、立候補した方々はもちろんのこと、現在エンジニア専門職にある方々、また、いまはそうでなくてもこの先に成長していきたい方々は、ぜひとも上記したような観点から自分を、そして周囲の人々の思考・行動についてあらためて考えてみてください。