👋

NEエンジニア「北極星」と「価値観」の紹介

2023/06/02に公開

こんにちは、NE会社で働いておりますきんじょう(@o0h_)がお送りします。

この記事は、「ZennのPublicationで会社のテックブログ的なものを作ったからスタートダッシュで連続投稿してみるぞ〜〜!」企画の2日目でございまして、我々の会社のエンジニア組織についてご紹介してみようと思います。

エンジニア組織の「北極星」と「価値観」

2021年に、当時はテックリードを務めていた身なのですが、この頃に「開発部の北極星」を描きました。自分が発案し、他のテックリードやEMを巻き込んで形にしていったものです。[1]

北極星という語彙については、アジャイルなどに興味のある人にはお馴染みとも言えそうな書籍みんなでアジャイルユニコーン企業のひみつ から取ってきています。

「結局、ネクストエンジン事業[2]にとって、開発部は何のためにあるのか?何をなすべきなのか?」の共通認識を固めたい、というのが当初の思いです。
すなわち、組織・チームとしての「我々は何故ここにいるのか」を語れるようにしよう、感じられるようにしよう!というものでした。[3]
そして、「目指すべき状態、ありたい姿」を示すものとして、北極星を定めることになります。

北極星・”ずッぱや"

そうして生まれたのが、北極星・"ずッぱや"です!!
こんな意味を持っているのですよ、というのは現在作成中のカルチャーデックの下書きをキャプチャして紹介してみます。

1つの単語で、2つの「早さ」を織り交ぜて示している言葉なのです。

「縁があって繋がれたお客様たちに対して、その期待に機を逸する事なく応え続けていけるか」というのが1つ。
開発者的に言えば、「雑に作って後々の機能追加に苦しむ」というのは避けていこうよ、という想いがあります。我々は持久走でも勝つ必要がある。

「目の前にいるお客様の課題を、いかにスピーディに解決していけるか」というのが、もう1つ。
いかに優れたデザインを考えても、それが「今すぐ手に入らない」のであれば、価値が生み出されないと考えます。デリバリー重要。
「今ここで手に入るからこそ、役に立つ」という視点をもたなければ、事業会社の開発組織としての存在意義はどこにあると言えるか・・・という感覚が、根っこにあります。
あるいは、単純に「処理が早い」「レスポンスが早い」という技術的な課題解決も、ここに含まれるかとも思います。

この両輪を激しく回し続けられる状態こそが、我々のありたい姿です。
・・・端的に言えば、「破綻しない設計品質を保ちながら超速で機能追加をし続けて、非機能要件を含む外部品質も高いハイパフォーマンスなプロダクトを作り続けられる集団になりたい!!!」という、見果てぬ夢と言えます。

空に浮かぶ星のように、いつまでも手中に収まったりはしないけど、上を見上げれば確かにそこにあって、良い方向へと導いてくれる。
そんな存在を、「北極星」と銘打ちました。

価値観 = 「ずッぱやの歩み方」

さて、ずーーーっと遠くの道標として「ずッぱや」を掲げているわけですが、コレを補う形で「価値観」も言語化しています。

言うなれば、「上を見て、遠くにある星を目指す」ことを大事にしながら、「目の前の分かれ道を、どっちに進めばいいか?」という足元の判断を支持するものが、我々のエンジニア組織が呼ぶ価値観であります。

これまた、カルチャーデック(仮)を引用すると・・・

文章として形にしましたが、とりわけ3つのキーワード「ごきげんですね。」「顧客の喜びのために」「普通の開発」を強調して社内で語っています。

エンジニア組織を方向づけるための「ガイド」ということで、技術やプロダクト開発についての向き合い方を意識したものになっています。

ごきげんですね。

例えば「ごきげんですね。」については、Team Geekなどでおなじみの表現を借りるなら、HRTの要素も含まれるものになります。

それと同時に、「他人に対して気を遣うだけ」では決して留まらないで、「心の底から、自分の課題や貢献を楽しめるようになって欲しい」という願いも込められています。

そのためには、気楽さと同時に、己への厳しさも欠かせないのではないでしょうか。
技術的な卓越・成長があってこそ、初めて「次々に出てくる課題を楽しみ続けることが出来る」ような権利を得られるはずなんだ、という思想が背景にあります。

顧客の喜びのために

「顧客の喜びのため」については、平たく言えば「技術は手段」ともいいかえられるかも知れません。

大事なのは、どんな道具・行為であれ、常にそこに「目的を持てているか」を意識してほしいな、という点です。共感できる目的を有することで、それこそインセプションデッキの「我々は何故ここにいるのか」の如く、個々人の内発的な動機を誘発しやすくなるはずだ、と考えます。

また、その反面で、結局はここでも技術的な卓越は必ず求められるのです。
「技術は手段」的な言い方は、ともすれば技術を軽視しているようにも思える表現ではありますが、一歩立ち止まって「優れた技術力を無くして、必要なものを必要なタイミングで必要な相手に届けることが可能だろうか?」と考えて見る必要があります。

アジャイルソフトウェア開発宣言は(顧客にとって)価値のあるモノを届ける事の重要性を説いていますが、その背後の原則には明確に「技術的卓越性と優れた設計に対する不断の注意が機敏さを高めます」と記されているのです。
我々としては、この点をブレさせないようにしていきたいです。

普通の開発

3つ目、これについてもユーモアを詰め込んだ、「一見すると真逆のこと」が本質にあります。

「普通」とは、決して「退屈」ということではありません。
より煽り気味に、焚き付けるような言い方を選んだとしたら、「自分たちがデファクトスタンダードたれ」「ベストプラクティスを創造し続けろ」とでも言えるようなものです。

例えば、「10年前の普通」と「今日の普通」と「10年後の普通」は、この変化の激しいIT/Web領域においては、絶対に姿を変えていることは確かですよね。[4]
普通の開発を”し続ける”ためには、常に時代について行く実行力が必要です。尖った事をしてそれを誇ることは求めませんが、「ちゃんとモダンである」ことが最低ラインとなります。
継続的に、最先端でなくても「いい位置」を保ち続けるのが如何に大変なことであるか。この業界で働いている方であれば、想像に難くないかと思います。

この事実は何とも歯がゆいのですが、我々の現状として、レガシーなアーティファクトに苦しめられている側面があります。だからこそ、改めて「価値観」を文言に落とし込む際に、この「普通の開発」という表現に想いを込めたのです。

現状の肯定+進化の余地+自分たちへのチャレンジを突きつける => 価値観

といったような、NE株式会社エンジニア組織のカルチャーステートメント・アイデンティティについてのご紹介でした!

こうした言葉を策定するにあたっては、エンジニアメンバーの有志を募って、「どういうものが自分たちらしいか」「どういう風な進化を望むか」を自由に議論するための、ワークショップを開催しました。
その際に出てきた視点や、実際の言葉を元に、最終的な形に落とし込んでいます。


↑「色々やってますよ〜」を何となく示す図

(こうした考え方や一連の流れなどの策定プロセスについて、それはそれで機会があったらどこかで発信してみたいところです。動機、設計、実行、浸透etc..)

意識したのは、「(最終的に誰かが作文するものであっても)自分たちの身から湧き出た言葉かのように感じられるようにする」「ただ現状を肯定するのではなく、先へ向かおうとする意思や好奇心を掻き立てる」ようなものにしたい、ということです。

前者はアドラー心理学で言う所の「自己一致」的なニュアンスを含んでいますし、後者はコーチングなどの領域で出てくる「クリエイティブ・テンション」の役割に近いでしょうか。
環境の中にいる個々人が感じている「我々の組織」に関するイメージと、他人から与えられた「正解」が不一致な状態ではエネルギーが失われます。 かといって、「上を目指して方向づけする」ようなチャレンジを含んでいなければ、激しい競争に晒されるビジネスの現場においては「緩すぎる」ような状態に陥りかねません。

あまりにも自分たちからかけ離れた絵空事を投げつけるのではなく、一歩や二歩ずつ手を引いてくれるような、そんな存在にしたいなと思っています。

オマケ:「文化」を築くにあたって

北極星とか価値観とか、アイデンティティとかカルチャーとか・・・とにかく「文化」について”手を入れる”のって、非常に気を遣いますよね。
このあたりの、「文化とは何なのか」については、数年前に自分なりに思考したことを個人のブログに書いてみたりしています。おおよそ、今も同じ考えです。

https://daisuki.nichiyoubi.land/entry/2020/05/30/130403

そんな「文化」的なものを、なぜ敢えて(文言という)形式化するのか・・・?といえば、「組織が一致団結して強くなっていくために、それが必要になるタイミングが来る」からなのだな、と。この会社に入って、タイトルが付くようなリーダーを拝命するようになってから、改めて感じます。

プログラミング的な比喩を使うのであれば、「名付け」行為に近いように思うし、あるいは「具象から本質を見抜いて、抽象化(InterfaceやAbstractを定義する)」ことに近いのかな、とも思いました。

若くして、緊密にお互いの存在を感じられるような集団であれば、自ずと「不文律でも同じ温度感でみんなが感じていられる」ような状態を保てると思います。ダックタイピングですよね。
それに対して、初期衝動・歴史・コミュニケーションの蓄積etcといった、「共有するものが違う」「触れる深さ・頻度が違う」ような個々人が集団の中に入ってきた時に、やはり「目に見えない」のは曖昧さを生むのです。
曖昧さが何を生むか・・・といえば、「メンテナンス性の悪い組織」ですよね。

そうならないために、「依存できる十分に安定した抽象」は必要なのではないでしょうか。
自分としては、やりたいこととしては「一緒にいる全員が、安心して自分の居場所を作れて、組織を前向きにし進化を促す依り代を築くこと」なのだた思っており、そのためのツールとして「(文言化した)文化」を活用していきたいです。

こちらからは以上です

そんな訳で、o0hがお送りしました。
まだまだ冒険は始まったばかり、俺たちの戦いはこれからだ!な日々ではありますが、どんどんとチャレンジを積み重ねていけるエンジニア組織になっていきたいなーと思っています。
中にいる人にとっても、我々のサービスに触れてくれる人にとっても、良い未来を作りたいです。


まだまだ続くアドベントカレンダー風リレー更新、 明日は、na_it_oさんが登場します!

脚注
  1. 元々は「Hamee株式会社・プラットフォーム事業部・開発部」に共有する概念として、策定したものです。今では、それを引き継ぐ形で「NE株式会社のエンジニア組織」をスコープに共有されているものになります。 ↩︎

  2. 我々の会社が提供しているプロダクトです。https://next-engine.net/ ↩︎

  3. ちなみに、この活動を進めていくにあたってソフトウェアと経営マガジンをめちゃくちゃ参考にしています。非常に良い話にあふれており、色々な人に力強くオススメ ↩︎

  4. このあたりは、個人的にも探求していきたいテーマの1つであり、過去にカンファレンスで発表した内容とも近接しています(PHPerKaigi2023, 2020) ↩︎

GitHubで編集を提案
NE株式会社の開発ブログ

Discussion