見出し画像

子供の頃ゲーマーだった僕が紆余曲折を経てアトラエのインフラエンジニアになるまで

初めまして、こんにちは。株式会社アトラエで組織力向上プラットフォームWevox(ウィボックス)のインフラエンジニアをしています。高橋です。

2022年1月に中途でアトラエに入社しました。以前はインフラではなく Ruby Perl PHPを使って、toC向けにソーシャルゲームやサブスクリプションサービスのバックエンドの開発を行っていました。現在はインフラエンジニアとしてSREやDevOps的な取り組みを行っています。

この記事では、僕が今までどういう経験を経てアトラエに入社するに至ったのか、アトラエに入社し実際に働いてみてどうだったか、について話して行きたいと思います。タイトルでゲーマーというワードが出てきますが、ゲームの話はきっかけだけで殆ど出てきません。

今までどんな経験を経てアトラエに入社したのか

まず、話が入ってきやすいように人生のグラフを示しておきます。自分はゾーンに入り最大のパフォーマンスを発揮出来ているとき、生きる喜びを一番実感できるタイプの人間なので、縦軸をそれを表す指数とし「エモ値」とします。

人生におけるエモ値のグラフ

誕生、幼少、小学校

芸術大学勤務の父とアパレルデザイナーの母のもと1991年に生まれ船橋市で育ちました。多くの展覧会や美術展に連れて行かれた事がきっかけで、作る事の楽しさを学び幼少期を過ごします。

物心ついた頃からカードゲームを始め、そのカードゲームの大会で小学校3年生の時に全国2位、世界3位の称号を手にしました。数学的な感覚や論理的な思考をカードゲームで身につけ、素直で明るく真っ直ぐに、自分の好きを追い求めることのできる子にすくすく育ちました。

中学、高校、大学

この頃から、「人に認められたい」という承認欲求を爆発させてゆき、数学的な感覚や論理的な思考を武器にひたすらそれを叶えるべく突き進んでいきます。

当時は、人に認められたい、一番になりたいといった思いが強く、受験した東京理科大学では数学の試験を満点で合格するなど、きちんと結果を残し明るく振る舞いつつも、人前では道化を演じ過ぎてしまい辛い時期だったようにも思えます。

また、物事へ取り組み方、例えば、勉強だったりの方略は人と同じやり方をやってもうまく行かず、何が幸せかの捉え方、例えば、人に求める距離感は同年代とは一致しないなど、自身が正規分布の端っこにいる人間であることに成長する過程で気がついていきます。

講師、大学院

大学卒業後は大手予備校で数学科講師として働き、中高一貫校に通う中高校生を対象に、高校1年生までに高3までの内容を終わらせるというカリキュラムを行っていました。

教え子が学習プロセスの中で自身が学ぶための方略を獲得し、身につけた知識を精緻化し体得してく方略に興味を持ち、北陸先端科学技術大学院大学に入り直し知識科学、情報科学の分野で、人間の知識を数理論理学を使って表現するオントロジーと呼ばれる辞書概念の研究を行っていました。

心理学や認知科学に近い分野で研究を行っていたこともあり自己理解が進み、この頃から徐々に他者と違う自分受け入れ、自分と違う他者を認めることが出来るようになっていきました。

インターン

情報科学研究科で最終的にアプリケーションとして形にしなければならないということもあり、早い段階で単位取得に見切りがついたので短期長期を含め、転職メディア、ゲームメディア、社内SNS、制作会社などいくつかのインターンに参加しました。

ここからエンジニアの世界に足を踏み入れるわけですが、こちらの世界にどっぷり浸かってしまい気がつけば、学業の方はなかなか決着がつかなくなってしまいます。

面白法人カヤック

過去にカードゲームで入賞した時の賞品を親がお宝探偵団に出したことでバズり、そんなことから興味を持って頂きエンジニアとして入社しました。ソーシャルゲームのバックエンドの開発に携わり、売上に直結するインゲームやスキルの実装を行っていました。

ガチャ職人として運用チームに所属し、企画職の方と連携しながらせっせとコンテンツを作ってました。この頃、自分の作ったガチャがどの位回るのか、アクティブユーザーの層をクラスター分析し、ガチャのレベルデザインなどからどのくらい当たるのか予想するのが楽しみでした。

Crunch Style


面白法人カヤックでの開発言語がperlでかなり専門性に特化した狭く深くの開発を行っていたこともあり、将来性を見据え自分の市場価値を高めるためエンジニア領域の全体を広く触ることのできる、toC向けのRubyで開発している急成長中の人が足らなそうなスタートアップ、という軸で転職を決意します。

週社したCrunch Styleは、エンジニアの数がMKやUXの数より圧倒的に少なく、チームの1日の1人辺りのデプロイ数が0.65を超えるなどハードな毎日でしたが、グロースハックで数字と向き合い日々俺らの思う最強の城を作っている感じは最高に楽しかったです。

アトラエ

Crunch Styleの課題感として感じていたのが、長くは使われない実装で短期的なリターンを獲得することが多く、日々の運用でプロダクトをカバーしオペレーションに莫大なコストをかけている点でした。もっと長期的な投資を視野に入れ開発基盤を構築し、エンジニアが幸せになれる環境を作りたいと思いつつも、社員は施策を打つUX、MKが9割に対し実装側のエンジニアが1割と非常に少なく、リソースが枯渇していたためにプロダクトのグロースを優先し、基盤構築には踏み切れないという状態でした。

また、上司のリードエンジニアの方が非常に優秀な方で、プロジェクトを回す以外にも、その辺りを1人で面倒を見ていたので権限移譲してもらえる感じではなく、インフラエンジニアとして成長し挑戦する機会を得るため、転職を決意します。デファクトスタンダードになりつつあるECSやEKSを使っていて、かつ、マイクロサービスに移行しようとしており、Rubyを使って開発を行っている会社という軸で探し、アトラエを見つけ選考に臨みました。

選考の中でインフラエンジニア、バックエンドエンジニアの方と話し、現在アトラエで感じていたり取り組んでいたりする課題やアトラエのバリューのあり方に深く共感し、内定を頂いたあと即入社を決意します。

アトラエに入社し実際に働いてみてどうだったか

入社前は、エンジニアのレベルが非常に高く「もう僕がやりたいと考えていることなんて殆どやり尽くされているかもな」などと考えていたのですが全くそんなことはなく、いい意味で裏切られました。

現状の組織体制

アトラエは前提として、いわゆる大企業などで採用される「物事の大きな意思決定がトップダウンで決まり、それにちなんだ小さな目標を立てそれぞれの部署が達成するようなヒエラルキー型の組織」ではなく、「必要に感じて社員が自ら旗振りを行い、周りを巻き込みながらプロジェクトを遂行するホラクラシー型である自律分散型の組織」を採用しています。

ヒエラルキー組織とホラクラシー組織の比較

また、僕が所属するWevoxでは丁度50人規模から100人規模を目指すような拡大期に差し掛かり、その間で生じる様々な成長痛的な問題が発生していました。

元々職能だけでチームが分かれていなかったところから、プロダクトの未来を考え技術的な投資を行うチームと、プロダクトの現在を考えそれの運用と改善を回すチームの2つに分かれ、そこから更に細かく目的ごとにプロジェクトベースでチームが分かれて行きます。

課題と取り組んだこと

チームが分かれたことでまず直面したのは、複数のチームが同じリポジトリを触ることでコンフリクトが起こり開発が困難になるというものでした。これを解決するため、機能ごとにリポジトリを分け開発を行ういわゆるマイクロサービス化が進みました。

そして、このマイクロサービス化に伴い、今まで環境が少なくそれぞれ個別に用意していた開発基盤を、複数の環境ごとに立ち上げる必要が出てきた為、それぞれの環境ごとに個別に用意するのではなく、共通のプラットフォームにを新たに用意するという課題がさらに生まれてきました。

マイクロサービス化の前後の比較

また、別の観点からの課題を挙げると、いわゆる一般的な自律分散型の組織とマイクロサービス化の相性は非常に悪いという問題もあります。

自律分散型の組織は前提として、プロダクトの全体を把握しており、自ら課題に気がつきそれに合わせて自身の能力をキャッチアップしていくことが前提となっています。

一方マイクロサービス化は、責務の範囲が大きくなり認知の壁を超えてきたので、それぞれの職能や機能に合わせ芝生を分けて開発しようというものです。これらをうまく融合し、それぞれの裁量をできるだけ大きく残し、かつ、適切に割り振る事のできる仕組みづくりが求められます。

これら2つの課題解決の為、僕が最初に取り組んだことは、devやstgなどの開発環境のログ基盤の構築でした。

WevoxはtoB向けサービスということもあり、データの管理が厳密に行われており、prdだけでなくdevやstgもsshでアクセスできる権限を持つ人は数人に限られます。しかし、マイクロサービス化によってローカルに複数の環境を立ち上げる必要がある為、一部の機能だけローカルに切り出すということが難しく、検証を行うときにはdevやstgにデプロイし行う場合がほとんどです。

したがって、ログを確認したい時は流した後でインフラエンジニアに依頼し確認するというフローで行われていました。しかし、これはあまりに非効率であったので「権限を維持したままログを見られる環境を作るべく、EKS上にCloud Watchを導入し、それぞれのコンテナのログをAWS上で確認できるようにする」というものを目指しました。

これから取り組みたいこと

現状の課題、そして上記の課題解決を経て、これからアトラエで成したいこととして、「仲間に自身のパフォーマンスを最大限出せていることに喜びを感じてもらい、それを通して組織の生産性の向上させたい」という思いが、この組織で働く中で生まれました。そして「人の足し算の組織」から「人の掛け算の組織」に変革したいと考えています。

決して足し算が悪く掛け算が良いという考えではなく、0→1のフェーズにおいては、1人が持つ裁量は常に最大であるので、足し算は正義でそれぞれの値を大きくしつつ遂行することで最大のパフォーマンスを生むことが出来ます。

一方10→100のフェーズにおいては1人がもつ裁量は常に最大を取ることは難しく、共通のプラットフォームを敷き適切な裁量を与えることで認知的な負荷を減らし、それぞれのドメインにおいての専門性を高めることで最大のパフォーマンスを生むことが出来ると考えます。

今、Wevoxは丁度1→10のフェーズが終わろうとしているところであり、これは今まで他のプロダクトでは到達していない未開拓の領域であり、何がアトラエにとって正解なのか考えるところから始まります。

個人のパフォーマンスを最大化させ組織の生産性を向上するために、僕がするべきことは2つあると考えています。

まず、技術的な取り組みとしてDevOpsやSREの観点で取り組むこと、次に、組織的な取り組みとして自律分散型の組織とマイクロサービス化を融合することです。

入社して3ヶ月が経ったところで見える世界を次の半年でより明確に見据え、自ら旗振りを行いアトラエを次のステージに進める為、開発の基盤と組織から革命を起こします。

ここまでの人生の歩みはまだゲームの長い長いチュートリアルが終わったところで、ここからストーリーがまたどんどん展開されていき、最後に何を思いエンドロールを迎えるのか楽しみです。

話が長くなってしまいましたが、ここで終わります。最後まで読んで下さりありがとうございました。

この記事が気に入ったらサポートをしてみませんか?