サイボウズさんの内定を承諾しました.入社後は生産性向上チームというチームでエンジニアとしてやっていきます.
この記事の目的
サイボウズでやりたいことを決意表明し,この選択を正解にするために頑張る覚悟を強固にすること.
今北産業
- 身近な人たちの生産性向上がしたくて,アプローチとして特にエンジニアの技術的な生産性向上に興味がある
- 生産性向上チームでは,組織横断的に社内エンジニアの生産性を向上できる
- プロダクト開発における辛みを解決するためにはプロダクト開発の経験が大事だと感じており,プロダクトを作りながらチーム内の生産性を向上する道とかなり悩んでいたが,これまで成長したと感じたときは自分の興味に集中して行動したときが多かったため,興味のあるエンジニアの生産性向上にフォーカスして頑張ることを決断した
エンジニアとしてやりたいこと
身近な人たちの生産性向上です.アプローチとして,特にエンジニアの技術的な生産性向上に興味があります.
まず,生産性向上に興味がある理由としては,僕は面倒ごとや単純作業が苦手で,そういったものを自動化や仕組み化により解決するモチベーションが高いからです.1 回あたり 1 分かかる作業を 1 時間かけて 1 回あたり 1 秒にする,みたいなことをやりがちな人間です.特にコンピュータがすべき作業は人間ではなくコンピュータがすべき 1 と考えているので,そういった作業はついカッとなって課題解決に取り組みがちです 2.退屈なことはできるだけやらずに面白いことだけやってたいし,間違える余地があると間違えるからそもそも間違えられないようにしたい,って気持ちが根底にあります.
身近な人たちの生産性を向上したい理由としては,一番は身近な人たちに幸せになってほしいからです.世界中の人が幸せな状態が理想ですが,今の僕にそこまでできる力はないので,せめて身近な人たちだけでも幸せになってほしいものです.身近な人を幸せにする手段として生産性向上を選択しているのは,僕が単純に生産性向上が好きなのもあるのですが,生産性向上によりその人はより価値を発揮できる仕事に集中できると信じている点も大きいです.身近な人がその人らしく働くために,生産性向上というアプローチで手助けできるととても嬉しいです.
エンジニアの生産性を技術的に向上したい最も大きな理由は,僕の理想である「エンジニアを開発が楽しくて仕方ない状態にする」を実現したいからです.この理想を実現したい理由は身近な人たちの生産性を向上したい理由とほとんど同じなのですが,加えて次の 2 点もあります.
- 開発が楽しい状態とエンドユーザに届けられる価値の質や量はある程度の正の相関があると考えているから
- 興味のある技術の多くがエンジニアの生産性向上につながっているから
1 に関して,これは統計的に計ったわけではないので主張として弱いですが,僕の場合,進捗がえげつないときは大抵開発が楽しくて仕方ないときです.理想を実現するために Try&Error を繰り返し,何がなんでもやりきろうと努力しているときが最も楽しいです.もしも僕の経験則が一般的に言えるものならば,「エンジニアを開発が楽しくて仕方ない状態にする」ことでエンドユーザの生産性もまた向上できると考えています.2 に関して,僕はエンジニアの生産性向上につながる技術が好きでかつ得意なので,エンドユーザに提供する価値を作るエンジニアの足回りを整えることが最もエンドユーザの価値につながると考えています.僕はこれまでフロントエンド・バックエンド・インフラなど領域を問わず面白そうな技術を幅広く触ってきたのですが,それ故に結局自分は何に興味があるのかわからなくて悩んでいた時期がありました.しかし,興味を持って勉強してきた技術の傾向を調べてみると,どれもビックリするほどエンジニアの生産性向上につながっていました3.Web から少し離れたところだと,僕はプログラミング言語と型システムもかなり好きなのですが,これも深掘ってみるとエンジニアの生産性向上につながっていました4.
このように,僕が好きでかつ得意な,エンジニアの生産性向上につながる技術を用いて「エンジニアを開発が楽しくて仕方ない状態」にし,エンドユーザに生産性向上を狙った価値を最速かつ安全に届けていくことが今の僕が最もやりたいことです.
サイボウズでやりたいことはできる?
結論から言うと,できると考えています.僕がやりたいことをやるために,サイボウズさんでは次の 3 つのアプローチが可能です.
- エンドユーザに対するグループウェアの提供
- 社内のエンジニアに対する開発基盤の整備や生産性を向上する活動の支援
- 社外のエンジニアに対する OSS の提供や情報発信
1 に関して,サイボウズさんは「チームワークあふれる社会を創る」ために事業を展開されており,事業の一つとしてグループウェアの開発・販売があります5.このグループウェアを使うと,端的に言うと生産性が爆上がりします.例えば,メールを用いた日程調整は自分のスケジュールと睨めっこしなきゃいけなかったりバッティングの恐れがあったりと非常に辛い作業ですが,Garoon を使うと相手の空いている時間にポンっと日程を入れられるので爆速で安全に日程調整できます.サイボウズさんが提供しているグループウェアで特に気に入っているのは,グループウェアの根底にオープンな情報共有という思想がある点です.これは僕がオープンなカルチャーが好きなのも影響しているのですが,情報がオープンになっていることで各自が自律的に考えて行動できるし,ある意思決定が妥当かも検証できるし,属人化が減ってチームを動かし続けられます.また,社長の青野さんが「チームワークは組織だけではないと思います。チームワークは社会の至るところで発生するのです」と発言されている6ように,サイボウズさんのグループウェアはエンドユーザが多種多様な点も魅力的です.このように,サイボウズさんでは,素敵な思想のもとで作られているグループウェアを提供し,エンドユーザが多種多様であるために身近な人の生産性も向上しやすいと考えています.
2 に関して,これは僕が所属する予定の生産性向上チームの主な業務になります.生産性向上チームとは,「多様で価値あるサービスを迅速に提供するため、部署やプロダクトを横断して、生産的でオープンな開発基盤を整備する」をミッションとするチームです.ミッションを達成するため,エンジニアの生産性を上げる開発基盤を構築したり,自動・効率化の手法を取り入れたい他チームに導入支援を行ったり,生産性向上のための技術を探求したりしています.開発基盤の構築・運用の実例としては,AWS マルチアカウント管理の仕組みや自動でランナーの数がスケールする GitHub Actions セルフホストランナーなどがあります.詳細はこちらを見てほしいのですが,このような業務はまさに僕がやりたいことに直結しています.3 に関しても,生産性向上チームでは例えば assam という OSS を提供していたり,Zenn で積極的に情報発信していたりと,取り組めるチャンスはいくつかあるのかなと思っています.なお,そもそも 3 をやりたい理由は,身近な人の中にエンジニアが多く含まれているからです.
1 — 3 の他にも,やりたいことに挑戦するためには心理的安全性の高いカルチャーの存在が重要だと考えています. ここで,心理的安全性とは失敗したとしても挑戦が賞賛されることを主に意図しています.もしも失敗した場合に避難される環境だと失敗を恐れて挑戦できなくなってしまうため,やりたいことに挑戦するために心理的安全性を重要視しています.この点に関して,サイボウズさんに不安は抱いていないです.インターンや本選考を通して,心理的安全性の向上に取り組まれている人が多いと感じていたり,特に生産性向上チームではシステムの障害対応時にジョークが飛び交うほどです7.サイボウズさんでは積極的に挑戦していけそうです.
内定を承諾する企業を決める上で特に悩んだ点
ありがたいことにいくつかの企業さんから内定をいただいたので,どの企業さんの内定を承諾するのが最適なのか結構悩みました.
生産性向上にフォーカスする vs プロダクトを作りながらチーム内の生産性を向上する
最も悩んだ点です.僕は就業経験がほとんどない8ので,商業レベルのプロダクトを開発する際に発生するエンジニアの困りごとを実感できなかったり,発見しづらいんじゃないかと懸念していました.この点の解像度を上げるために,一度エンジニアとして就業経験を積んでおけばよかったなーとかなり後悔しました.ここの解像度を上げることを優先するならば,プロダクトを作りながらチーム内の生産性を向上する方が適してそうです.
最終的には生産性向上にフォーカスすることを決断しました.理由はポジティブなものとネガティブなもの両方あります.まず,ポジティブな理由は,僕がこれまで成長したと感じたのは自分の興味に集中して行動したときが多かったからです.おそらく興味の先に理想があって,理想を実現するために行動するからめちゃくちゃ成長するんだと思います.そのため,プロダクト開発の解像度を上げるのに苦労することにはなっても,いま最も興味のあるエンジニアの生産性向上にフォーカスするのが一番成長するのではないかと考えました.ネガティブな理由は,プロダクト開発に集中するうちに生産性向上の興味の熱が冷めることを恐れたからです.経験上,興味には消費期限があり,食べることなく腐ってしまった興味は後悔として残り続けると感じています.これは興味が強いほど発生しやすい気がしています.なんらかのきっかけで興味が再入荷されることもありますが,後悔は特に消えてはくれないです.このようなリスクを避けるため,最速でエンジニアの生産性向上にチャレンジしたい気持ちが強くなりました.
とはいえ,プロダクト開発の解像度の向上はどこかでブチ当たる壁だと思います.これを解決するために,サイボウズさんに入社するまでにエンジニアとしてバイトしたり,入社後は体験入部9や兼務などでプロダクト開発の経験を積むのがいいのかなと考えています.プロダクト開発チームのドメインによらない部分は,生産性向上チームが提供する開発基盤の開発でも経験を積んでいけるとも考えています.
挑戦する機会の多さ
挑戦する機会の多さを重要視しているのは,裁量を持って挑戦を繰り返し,多くの成功と失敗を経験することが成長につながると考えているからです.この点で悩んでいた理由としては,サイボウズさんのプロダクトは成熟してきており,挑戦する機会が少なくなってきているのではないかと懸念していたからです.この点の観測は外からだと難しいため,挑戦する機会の多さと正の相関がありそうな「プロダクトと組織の変化の多さ」を中心に見ていました.
結論から言うと,サイボウズさんは思った以上にプロダクトと組織が変化してました.まず,プロダクト面では,グループウェアを再定義するために IAM を開発されていたり,Cybozu NEXT ということで新しい価値のアイディアが色々と出てきているみたいです.生産性向上チームの場合は,Four Keysという指標を可視化するシステムを開発しようとされてるみたいです.また,組織面では,マネージャーがいなくなって,復活して,他にも領域専任のチーム体制に移行しようとされています.生産性向上チームもメンバーの数が増えてきててピザ 2 枚だとそろそろ足りなくなりそうなので,組織的に取り組めることも色々ありそうだなーと個人的に感じています.
変化が多いと未来が予測しきれなくてワクワクしますね.
その他の要素
内定をいただいた企業さんはいずれも興味があって受けていたため,魅力的な点が多かったのも内定承諾で悩んだ理由の一つです.そこで,今回はここまで述べてきたこと,特に最も興味のあるエンジニアの生産性向上に高い重みをつけて判断しました.
そして覚悟を決めた10
自分の中では納得のできる結論に達したため,覚悟を決めてサイボウズさんの内定を承諾しました.優柔不断すぎて納得のできる結論に達してからも覚悟を決めるまでウンウン唸ったりもしましたが,最後は「チームワークあふれる社会を創る」という存在意義に共感してくれる仲間を増やすスタンスで事業展開されている点など,純粋にサイボウズさんの好きなところが背中を押してくれました.残る不安は周りのレベルが高すぎるのでついていけるかわからないくらいです.
できないこと・わからないことだらけなので,理想の「エンジニアを開発が楽しくて仕方ない状態にする」を実現するためにはいくつもの壁がありそうですが,迷ったときに歯を食いしばれるだけ悩み切れたと思います.あとは,この選択を正解にするために行動するだけですね.頑張ります!
- コンピュータがすべき作業というのは,テキストのフォーマット処理とか全文検索など,コンピュータで解きやすい領域の作業を指しています.まぁ,言いたいことは「退屈なことはコンピュータにやらせよう」くらいのニュアンスです.↩
- などと供述しており.↩
- フロントエンドだと,例えば React にハマったのは関数型言語っぽく宣言的に UI を記述できて各 UI の動作を分かりやすくしやすいから.バックエンドだと,例えば OR マッパすげー!ってなったのはインピーダンスミスマッチを解決するポテンシャルを秘めていると感じたから.インフラだと,例えば Terraform カッケー!ってなったのは属人化しがちなインフラ構築をコードで管理できるから.領域を横断した技術だと,自動テストや CI/CD,Docker などもあります.↩
- プログラミング言語が好きな理由は,開発者の意図やシステムの仕様をより明確にプログラムに落とし込めるものを探し続けているから.型システムが好きな理由は,部分的にではあるがプログラムが正しく動くことを自動で保証できるから.↩
- グループウェアの詳細はこちら.↩
- サイボウズ/迷走期を経て得た学びを活かしグローバルへ拡大 - ログミーファイナンス↩
- 詳細はこちらのインターン参加記.↩
- サイボウズさんのインターンで実プロダクトに触れたり,大学のバイトで心理学実験用のシステムを開発したくらい.↩
- サイボウズさんには大人の体験入部という,他部署の仕事を体験できる制度があります.体験の期間は最長で 3 カ月みたいなので,かなりガッツリ体験できます.↩
- 生産性向上チームのメンバーである,きばちゃんリスペクト.↩