1
/
5

国内有数の大規模メディアとなった今、『aumo』の開発責任者がこの3年間を振り返る。

村田 翔 Murata Jo

新卒で大手小売りチェーンに入社した後、キャリアを見直し大学院に入学。フリーランスでWebディレクターの経験を経てエンジニアとして活動する中で、創業当初のおでかけメディア『aumo』に出会い、サーバーサイドエンジニアとして開発組織にジョイン。現在はアウモ株式会社において開発責任者を務め、親会社であるグリー株式会社主催のTech Conferenceに登壇するなど、活躍の幅を拡大。趣味はタイ旅行。

ーー入社までの経歴

大学院在学中にWebサービスを立ち上げたことをきっかけに、最終的には事業を立ち上げたいと思うようになり、小規模から大規模までのWebサービスに携わることを決意しました。まずはWebディレクターとして実務経験を積み、実際に事業を作れるのはエンジニアであることを身をもって感じたことから、マークアップエンジニアとしてエンジニアのキャリアを歩み始めました。その後はWeb制作、SIerなど複数の案件を渡り歩き、インフラからフロントエンドまで幅広く経験し、2018年2月に『aumo』に出会い、入社を決めました。


ーー入社当時に担当した仕事

自分がアウモに入社した当時は、『aumo』アプリがリリースされたタイミングでした。当初はおでかけ記事の閲覧ができる機能のみだったので、おでかけしたユーザー同士が情報を交換できるようなSNS機能をこれから作り始めようとしているところでした。約半年間かけて、現在のアプリの根本となる『記事掲載+写真投稿』の形を作り上げたのが、最初に担当した仕事です。


ーー印象に残る、三大プロジェクト

まず一つめは、2019年4月にリリースした『aumo』内で店舗・施設を調べて比較することができるサイトを制作したときのプロジェクトです。初期バージョンとなるホテル領域の比較サイトは、約4ヶ月ほどで完成に至りました。この時は開発工数の削減を意識してモジュールを使いわますことができる構成にするために、デザイナーと協力して『aumo』で初めてAtomic designを採用しました。それにより、その後は短期間でグルメ領域レジャー・観光領域の比較サイトもリリースすることができました。

二つめに、今でも印象に残っているのは、同じモジュールをフロントエンド側で利用して、表示するデータだけが異なる構成を作り上げたことです。データを取得するために、サーバーサイドはREST APIを使用していたため、続々とエンドポイントが増え、増えていったエンドポイントをフロントエンドで呼び出すための似通った処理対応も増えていきました。その状態をリファクタリングするために、GraphQLを導入したプロジェクトです。

そして三つめは、顧客向けの管理ツールを制作したときのプロジェクトです。技術選定からはじめて、モデル以外はほぼゼロの状態から作っています。記事、写真、店舗や施設の情報などそれまではマイクロサービスでフレームワークも別々のものを利用してデータを管理していましたが、『aumo』内にある全てのデータを参照する必要があったため、一箇所で管理できるようにする必要があり、そこが一番苦労したポイントでした。
例えば、店舗や施設の情報はLaravelを利用していたのを、Ruby on Railsに置き換えましたが、今までは開発速度重視で属人化していた部分も多かったので、構造を紐解くのにも時間がかかり、ドキュメントとテストコードの重要さを身を持って感じました。



ーーモチベーションが上がる要因

自分自身、とにかく大きな課題を解決することが好きなんだと思います(笑)。簡単な問題より難しい問題を振ってもらった方が、やりがいを持って仕事を進めることができます。難しいプロジェクトをやり遂げることで、外部からもチームや個人の評価が上がりますよね。その結果、モチベーションが向上するため、継続的に難題を解決することが個人の成長にも繋がっていると思います。


ーー組織作りに欠かせないこと

社内では、開発する機能ごとに部門が存在して企画が進むので、それに合わせてエンジニアをアサインし、企画側とエンジニア側が対になって取り組むことができる組織体制をとるようにしています。その体制に変えてから、各エンジニアが主体的に動ける形となり、以前より組織の生産性が高く感じられる結果になりました。全体の生産性を向上させることももちろんですが、エンジニアが成長し続けられるような組織体制を作り、それが上手くいっていると感じられる時に責任者としてやりがいと面白さを感じますね。



ーー人と技術を育てる環境づくり

エンジニアが成長できる、社内外どちらでも評価される技術力を身につけることができる環境を提供したいので、技術スタックの検討の際には、既存技術だけではなくトレンドの技術も採用するようにしています。年に何度か技術選定の機会がありますが、そこではトップダウンで決めるのではなく、担当のエンジニアが主体的に決める流れにしています。
技術選定をする上では、その技術を取り入れることで「エンジニアとしての価値をあげることができるか」「人を採用する際に技術スタックを持った人が存在するか」を重視しています。技術スタックの選定を後押しできる環境を定着させて、個人がエンジニアとしての価値を高められる組織であり続けることを大事にしています。
開発組織のメンバーは、これまでも様々なプロダクトを経験した後に入社した方が多く、様々な言語やアーキテクチャを経験しているので、自然と互いに勉強し合える環境が作られていますね。


ーー新しいメンバーを迎え入れる姿勢

アウモでは、ひとりのエンジニアにサービスの一部分だけを任すのではなく、インフラからサーバーサイド、そしてフロントエンドまでフルスタックとして経験を積むことを推奨しています。また、技術選定では自分で方針を決めることができるので、自分の手で一からサービスを作り上げる力を身に付けたい方には適した環境だと思います。
それから、選定した技術のレールに沿ってコードを書くことで、コードがドキュメントになる状態を作り、たとえドキュメントが整っていない状態でも、プロジェクトに円滑に入れる環境を提供できるようにしています。



ーー将来的に目指すアウモの開発組織像

優秀なメンバーが揃う環境だと自信をもって言えますが、現在は開発組織の規模はそこまで大きくないです。これから目指すべき形は今の延長線上で、エンジニア一人ひとりが一からサービスを作れる人たちが集まる『最強集団』にしたいと思っています。アウモでの経験を活かし、社外に出ても活躍できる人を多く輩出できるような組織にしていきたい。そういった思いがあるので、それぞれのエンジニアが自身の担当業務において責任を全うすることが当然というカルチャーがあるのも魅力に感じることの一つです。


ーー最後に、この先やり遂げたいこと

この先も、社内外どちらからも評価されるエンジニアであり続けたいと思っています。いまのメンバーも、これから入社してくれるメンバーも、アウモで働いていることがブランドになるように、いかにして事業を伸ばしていくかを考えながら、難易度の高いプロジェクトをやり遂げたいと思います。そのために、まずは開発組織のメンバーと一緒にその基盤となる状態を着実に作り上げていきます。

アウモ株式会社では一緒に働く仲間を募集しています
7 いいね!
7 いいね!
同じタグの記事
今週のランキング
アウモ株式会社からお誘い
この話題に共感したら、メンバーと話してみませんか?