asken テックブログ

askenエンジニアが日々どんなことに取り組み、どんな「学び」を得ているか、よもやま話も織り交ぜつつ綴っていきます。 皆さまにも一緒に学びを楽しんでいただけたら幸いです!

あすけんエンジニアの座談会:askenを支えるインフラエンジニアたちの挑戦

あすけんエンジニアの座談会第3回目は、インフラエンジニア編となります。 インフラエンジニア2名 + 進行役を加えた3名による掛け合いをどうぞ。

(写真左から)

鈴木 一帆 | Suzuki Kazuho

インフラエンジニア

2人目のインフラエンジニア。2023年9月入社。お酒好き。日本酒とハイボールを飲んでます。 神奈川在住。ベイスターズにだんだんハマり、最近DAZNを契約してしまった。 ニックネームは「かずっぽさん」

西 秀和 | Hidekazu Nishi

プロダクト開発グループマネージャー エンジニアリングマネージャー

あすけんアプリのエンジニアリングマネージャー。2024年4月入社。 お酒と麻雀とカープを愛してます。 ニックネームがないので誰か命名して・・・

沼沢 一樹 | Kazuki Numazawa

インフラエンジニア テックリード

asken 初のインフラエンジニアとして2022年6月に入社。クマのTシャツがトレードマーク。 ニックネームは「ぬーさん」


西 askenを支えるインフラエンジニアのお二人に今日は来ていただきました。よろしくお願いいたします。まずは日頃どんな業務をしているのかを教えてください。

沼沢 沼沢です。よろしくお願いします。実はこの中だと一番社歴が長くて、 2022 年に 6 月に1人目のインフラエンジニアとして入社しました。 役割は本当にインフラ全般ですね。ただインフラの作業って常に何かあるわけじゃないんで。ガバナンスとかセキュリティ周りを自分でもやっていきたいなと思っていて、最近はその辺りも担当しています。

西 インフラチームのリーダー業務をやりつつasken全体の戦略も考えつつ、組織としてのルール設計をしたり、大いに活躍をいただいてると思ってます。ありがとうございます。 では、続いてかずっぽさんお願いします。

鈴木 鈴木です。去年の9月入社なのでそろそろ1年経ちますね。2人目のインフラエンジニアとして入社しました。ぬーさんと考えたaskenインフラの戦略の中でできることを進めていることが多いですね。最近は新機能のインフラを作っていることが多いです。

西 インフラだと監視も大きいイメージがありますが、みんなで見ている状況ですか?

沼沢 アラート対応はそうですね。エージェントをインストールしたりとかはインフラチームで対応してます。必要そうな情報は全部取得しておいて、後でダッシュボード作るなり集計して活用できればいいと考えてやっています。

西 効率よく網羅的に、監視の精度を高めていくのは今後の課題かもしれないですね。

西 先日累計会員数が1000万人を越えて、多くのユーザーを支えていますが、仕事をしている時に注意していることとか工夫していることとかあれば教えて頂きたいです。

沼沢 人数は関係ないと思っていて。1000万人だろうが 100万人だろうが、毎日利用してる人いる訳で、利用してくれてる人のために、やっぱり快適に使ってほしいじゃないですか。 ユーザーにどんな問題が起きてるかとか、起きてたとして、ユーザーは使えているのかとか、まだあまりできていなくて。ユーザーに何が起きているのか、みたいなユーザーを起点に、何か仕組みを考えるように意識してます。

鈴木 リリースした後に非機能要件が悪化しないように、意識はしてますね。可用性とか信頼性とかパフォーマンスとか、検討できてますか? ってモバイルやバックエンドエンジニアにフィードバックすることはあります。ユーザ体験を損なわないようにしたいですね。

西 最近は円安と、会員の数もすごい増えてて、AWSのコストが何もしないとどんどん上がっていく状況にあります。 それでも円安とユーザーの増加率よりAWSのコストの増加率の方が下回っている状況を保てていると思ってて。 ユーザー体験は損なわず、コストを抑えていくっていうのは結構難しい話だと思うんですけど、何を基準にコスト削減を進めていますか?

沼沢 コストは正直無駄が多かったんで削減できたものがあります。これ伝説ですけど、入って 3 日ぐらいで月数千ドルの削減してますからw

西 始めが一番効果が高いですよねw

沼沢 専門家不在だったので、「AWS で従量課金だからしょうがないよね。」みたいに諦めてたと思うんですよね。どこにコストかかってたって分析して対処する時間も取れてなかった。そこに僕みたいなめざとい奴が入ってきたんで。 例えば RDS の古いスナップショットのコストが結構かかっていて、そんな前のやつ使わないだろってことで、それを整理して削除することでコストを削減しました。

あとはCloudFrontを長期契約にしたことで結構値引が効くようになりました。長期契約にするとその期間内は構成を変更しにくくなるデメリットもあるけど、今すぐには変えないでしょ、と。選択肢としては Cloudflare や Fastly など別の CDN に変更する可能性もあるんですけど、頻繁に変えるものでもないので、契約が切れるタイミングで考えればいいじゃんってことで、さっさと契約しちゃいました。

あとはEC2をオートスケールで全部オンデマンドで買ってたんです。何台かオンデマンドにして、あと全部スポットインスタンスをちゃんと使おう、という方針に変えたことでコストを削減できた。

西 あすけんって、負荷のかかり方がわかりやすいじゃないですか。朝と昼と夜の食事時の波があるんで、そこでユーザー体験を損なわずに処理できるリソースをスポットインスタンスで対応できているってことですね。

沼沢 あとは、バックエンドで進めていたリアーキも考慮して EC2 のコスト最適化を進めました。リアーキではコンテナ化して ECS Fargate で稼働させることが決まっていたので、EC2 のリザーブドインスタンスを買うのではなく、Savings Plans を3年契約しました。3年契約したのでイニシャルは高かったんですけど、トータルで見たらかなり安い。

西 かずっぽさんはぬーさんによる改善が進んでいる状態で入社されてますが、新規インフラを作るという立場ではどうされていますか?

鈴木 そうですね。ぬーさんがSavings Plansとか用意してくれていたので、コストがどのくらいかかりそうかを事前に計算しておいて、なるべく越えないようには意識していましたね。 あとは定期的にPWG(注: Performance Working Groupというインフラエンジニア主催の社内イベント。モバイル、バックエンドエンジニアも参加している)でも毎回AWSのコストを見直しているのが大きいと思ってます。「あれ?これとか下げれるんじゃない?」とか「前月と比べてかなり増加傾向なんだけど、なんでなんだっけ?」みたいな深掘りできているのがいいです。

西 エンジニアみんなでちゃんと監視できているのがいいですよね。

西 続いて、インフラチームで策定したミッション・ビジョンについて話がしたいです。この時に込めた思いとか、こんなことがやりたくて策定したんだとか、改めて教えて欲しいです。

沼沢 インフラがやっていることって、ユーザーの課題を直接解決することではないんですよね。我々はどこまで行ってもコストセンターなので。それって嫌じゃないですか。

西 一般的には常にコストを削れと言われる立場ですよね。

沼沢 僕ら自体もコストだし、インフラもコストを削減するのが正義みたいな間違った方向に行く会社もあり、そういうの嫌だったんでなんか掲げたいなと思ってぶち上げました。俺たちはこんなことをやるんだ、何でも屋じゃないんだぞ。みたいな。

一同 (笑)

沼沢 そうじゃなくていい方向に改善するとか、ユーザー体験を損なわないようにできることをやっていくとか。セキュリティとかを僕らはやるんですよ。 非エンジニアってインフラよくわかんないじゃないですか。僕等の仕事って目に見えないことが多いんでわからないじゃないですか。僕らがどういう人かを伝えたかった。 だから「Asken for the System」っていうのはまさにそれで。システムの状態の可視化とか、それに対して見えた課題に対して手を打つっていうやっていることはまさに「あすけん」じゃん、みたいに思ったんで。

西 ”俺たちはシステムに対して「あすけん」やってんだぜ!!”という。

沼沢 コスト削減の話もそうですよね。「なんかよくわかんないけど高いんだよね」は「なんかよくわかんないけど太るんだよね」と同じで。「こんなに食べているんだよ」というように「こんなに無駄なデータ持ったままなんだよ」と可視化させて。見えたら改善できるじゃないですか。

西 エンジニアは社内に1/3しかいないんで、他メンバーに伝わりやすい良いメッセージングですよね。

鈴木 攻めと守りがはっきりしていて、何をやるべきなのかが判断しやすくなって良かったです。

入社直後にロードマップを一緒に考えさせてもらって、あれこれやりたいことを整理したんですけど、ミッション・ビジョンのおかげで基軸がはっきりしていたので、やることはこれだなって整理できた。

西 その話も聞きたかったです。ミッション・ビジョンを作って、その後にロードマップを作ったじゃないですか。現時点で取り組んでいる課題等を教えて欲しいです。

沼沢 GCP周りが整理できていないので、秩序を取り戻すようにしたいなと。アクセラレートするって意味で、この辺りが整理されていないとどんどんゴチャゴチャになって足が遅くなるわけですよね。そこにもコストかかってくるし。BigQueryやGCPの標準化することで、組織がスムーズに回るようになることを期待してます。

西 GCPは分析がメインなので、後回しにされがちなんですよね。 かずっぽさんは何かありますか?

鈴木 いろんなサーバがいるんで、CI/CDパイプラインを整えて開発をしやすくするとか、一部はできているけどまだできていないところもあるので。開発者がより開発しやすくなるとユーザーの体験も上がるはずなので、その流れを作っていきたいっていうのはあります。

沼沢 ちょうど先日Platform Engineering Kaigiに参加して、まさにそんな話を聞いてきたところで。僕らがやっているのはプラットフォームエンジニアリングなのか何なのか? みたいな話をw

西 いやあプラットフォームエンジニアリングですよ! 元々のデプロイ方法は自動化されていなくてカオスだったと聞いたんですが。

沼沢 カオスでしたよ。その当時のリリース作業手順書をもらったんですけど、「いや無理だ、絶対事故るでしょ」となって。OS のアップデートしなきゃいけない状況もあったし、リリースサイクルは全部作り直しちゃおう、となって。

西 それをやり切ったおかげで今は1Clickでできるようになって。中をみたら複雑だったんでよく作りましたね。って思いましたけど。

沼沢 バックエンドのリアーキが後に控えていたんでどこまで作り込むか迷いました。当時の運用も多分年単位で続くから、これはやっておかないとまずいよねってことで、考えうる中で最強のデプロイフローを作りました。半年くらいかかりましたよ。 このおかげで安全にロールバックできるようにもなったのでやる価値ありましたね。

鈴木 あのデプロイフローはすごい。他にもあんなにリッチなものでなくても良いので、利用頻度に応じて適切なものを用意したいですね。特に新しい環境を作っていくときにデプロイの対応していかないと負債になっちゃうんで、意識してやらないといけない。

西 ロードマップの先の将来の話として、どういう世界を描きたいのか、どういった技術を取りいえておきたいとか、そういう野心的な話はありますか?

沼沢 共通基盤を作りたいという壮大な夢はありますよ。デプロイの仕組みとか、脆弱性管理とか、非機能面でやらなきゃいけないことを全部吸収するようなイメージ。新規事業を立ち上げるときに開発チームはそのあたりのことをそこまで意識しなくてもいいような状態を作りたいです。

鈴木 共通基盤を用意すると、結果プラットフォームエンジニアリングになるんですよね。一番影響が大きい気がするので目指したいです。 個人的に気になっているのが、データの活用がもっとできるといいかなって思います。インフラとはちょっと外れるかもしれないですけど。 askenのデータって宝の山なんですけど、使いきれていない印象があって。そこにチャレンジするのも面白そうだなぁと思ってます。

西 大量データをいかに扱うかはインフラの知識やスキルも必要になると思います。 現状は日々データが増えていって全体を扱うのが辛くなってくるはずで、数年先になると不安があるので、ぜひ挑戦していただきたいです。

最後に、どんなインフラエンジニアと一緒に働きたいか、一言いただきたいです。

鈴木 「これやってみたい」、「これやりましょう」と自ら動ける人が一番いいと思います。インフラエンジニアとしてのスキルももちろん大事なんですけど、意欲がある人がいいな。

西 仕事が降ってくるのを待つより、まず自分で探していかないといけないフェーズだと思うので、受け身になられると困りますよね。

鈴木 そうですね。課題を見つけて、どうするべきか考えて、提案できる人がいいですよね。

沼沢 自分の状況をちゃんと伝えられる人。問題を発見する力も必要なんですけど、発見した時にちゃんと声をかけられる人。前提知識や前提条件に囚われないで「今こうなってるけど、これ大丈夫だっけ」といった感覚を持っている人がいいな。 あとは外に出る人。内弁慶はダメですよ。

西 今社内で利用している範囲のスキルだけ持っててもしょうがないですからね。ちゃんと世の中、業界がどうなっているのか、吸収してきてもらわないと。

まとめると、スキルは最低限のところがありつつ、受け身ではない攻めの姿勢がある人が来ていただけると嬉しいという。 もしこのブログを見て一緒に働きたいって人がいたらぜひお願いします。

募集一覧

wantedly