BASEプロダクトチームブログ

ネットショップ作成サービス「BASE ( https://thebase.in )」、ショッピングアプリ「BASE ( https://thebase.in/sp )」のプロダクトチームによるブログです。

BASE全体のインフラ知識底上げのため AWS JumpStart に参加してもらいました

この記事は BASE Advent Calendar 2022 の21日目の記事です。

Platformグループでグループマネージャー をしている 松田@tadamatu ) です。

先日、エンジニア15名に AWS JumpStart(AWS研修プログラム) に参加してもらいました。
この記事では、参加の目的や感想、実際参加してどうだったのか、などを伝えさせていただこうと思います。

「AWS JumpStart(AWS研修プログラム)」とは?

AWSが 無償 で提供してくれている研修プログラムで、AWS初学者のエンジニアを対象とした、実践的な2日間の研修プログラム です。

https://awsjumpstart221020.splashthat.com

将来的にAWS活用をリードする人材になるための第一歩をスムーズに踏み出せるようなプログラムをご提供します 単なるAWSサービスの学習だけでなく、要件に合わせて適切なアーキテクチャを検討・設計する経験を積む部分にフォーカスした内容となっております 本イベントは、数時間の事前勉強会 (録画動画を事前配布)と2日間のワークショップ(参加必須)で構成されています

 

参加の目的

現在BASEでは、私達のグループが主導をして絶賛 リアーキテクチャ を進めています。
「モジュラモノリス」を中心 として、新しく環境を作り直そうとしているのですが、 インフラ環境としては今後もAWSを中心に構築 を予定しています。

「モジュラモノリス」を選んだ理由は様々あるのですが、理由の一つとして 「モジュールの独立性」 というものがあります。

BASEではエンジニアの数が多くなるにつれて、 現状のモノリシックな環境では修正のたびに

  • コード影響範囲の調査に時間が取られる
  • 関係者が多いため意見も増えコンセンサスをとりづらくなる

など、多大なコストを支払わなければならないという状況が増えてきています。

これらを解決するために、モジュールという単位で適切なコンテキスト分解し、それぞれに コードオーナー(チーム単位)を設置し、責務の分離を行う計画です。
責務の分離を行うことで、よりスムーズな開発を促し、スケーラビリティも確保をしたいと考えています。

これにはチーム内で物事を考え、仕様を決定し、完結する力が求められることになります。
AWSでアーキテクチャを考えたり、試したり、インシデント調査したりするために、アプリエンジニアのインフラ知識の底上げが課題と考えていました。

そこで、まずは初手として「AWS JumpStart」への参加をしてもらったという流れです。

参加者はなんと15名!

今回は各チームから1名ずつ 「エンジニアとしては中級〜上級だが、AWSの知識は初級〜中級」な15名に参加してもらいました。
数回に分けるなどの案もありましたが、せっかくだからお祭り感も出たほうがよさそうといったノリで、全員一気に参加してもらうことになりました。

15名x2日というのはなかなかの工数です。
しかし、ここはCTOが二つ返事でOKをくれました。ありがたい。

研修スペックを少しご紹介

研修内容は公式ページ を見ていただきたいのですが、掲載されていない情報を載せておきます。

雰囲気

  • 今回の研修には約130人のエンジニアが参加
  • Web、ゲームなど様々な業種からの参加
  • 業種混同で34チームに分かれてアーキテクチャ検討などをを行う
  • 参加者のレベル感は様々で、知識が豊富な方々から経験が浅い方々までといった感じでワイワイと進む

使用ツール

  • Amazon Chime(zoomライクな動画ツール)
  • Slack(申請をすると参加を促されます)
  • Bluescape
  • ハンズオン用のAWSアカウント

参加者の感想

参加者に感想をもらいましたので紹介させていただきます。 今後参加を検討されている方のために、ポジティブな意見もネガテイブな意見も 包み隠さず書いておきます。

勉強になった

  • どういう AWS サービスがあるのかを紹介するだけでなく、なぜそのようなアーキテクチャ設計にしたのか、非機能要件の評価基準も詳細に解説してくれてとても勉強になった。
  • AWSのサービスについて何か聞いたことがあるくらいでも安心して参加できる内容で、インフラ設計やその評価観点についても体系的に学べたのが良かった。
  • AWSとちょっとだけ仲良くなれそうだなと感じた2日間だった。

インフラに興味を持った

  • これからが本番だぞ!と言う気持ちで色々調べたいなと思った。AWS詳しい人に向かっていく勇気がついた。
  • インフラは難しいという印象をずっと持っていたが、AWS Certified Solutions Architect の資格に興味を持った。
  • AWSのサービスやオプションが色々あり、まだまだアーキテクチャを構築する上で知らないといけないことは多いなと感じた。

ハンズオンが良かった

  • 「ECSタスクの停止した場合の挙動」や「Aurora MySQLのフェールオーバー時の挙動」を実際にハンズオンで確認したけれどほとんど見る機会もないので少し感動した。
  • アーキテクチャを検討するにあたり、押さえるべきポイントを実例を踏まえて経験できたのは良かった。
  • やっぱり実際に手を動かすと理解が深まるなと思った。

AWSの進化に驚いた・新しい発見があった

  • AWSサービスは日々進化しており、より使いやすくなっている。複雑なインフラ整備も、今となってはクリックだけで完結できるようになっていて驚いた。
  • 主要なサービスを包括的に一覧する意味では大変有益だったと思います。事前学習動画は全社員見ておいた方が良いかも。
  • S3 の料金体系が様々あって下がっていってるのには驚いた。

他業種との交流が良かった

  • Web系ではない業種の方からの質問が新鮮だった。

システムアーキテクトに相談できてよかった

  • 予想が付くような質問に対しても、想定よりも多くの情報を頂けた。
  • AWSのテクニカルサポーターの方もナレッジが豊富で、さまざまなユーザーケースに対して適切なアドバイスを出してくれて、頼りに感じた。
  • AWSのSAならどうアーキテクチャを考えるかの思考プロセスが分かりやすかった。参考にしたい。

楽しかった

  • 即席チームでのワーク、楽しく行えました。
  • ワイワイできて、非常に楽しかったです!

時間が足りなかった

  • 構成や負荷に対する懸念が出てきたが、二日間ではできなかった。残念。
  • アウトプットがアーキテクチャ図のみだったので、もっと細かい改善フィードバックを得たかった(発展編みたいな研修があれば参加したい)

疲れた

  • 研修の中で一番タフだったのはアーキテクチャ検討でした。
  • ずっと思考している時間が続くので、一日の終わりには結構疲れがきます...

その他

  • VPCを作るといった普段しない作業も合ったけれど、概ね知っている内容だったので、上級者の場合はただ手を動かすだけの作業になってしまう可能性があるかも。
  • アーキテクチャ検討のレベル感がやや高いと感じる場面があったので、人によっては大変な場合もありそう。

現在の業務に生かせそうか

こちらもヒアリングしていますので、まとめておきます。

活かせそう

  • 実はもう既に現在進行形で活かしている状況です!
  • SREチームが何をしているのか、また何を話しているのかの解像度が上がりそう。コミュニケーションロスは減らせそう。
  • インシデントなどでやり取りされている単語の意味がわかるようになった。
  • インフラ視点も考慮したシステム開発できるようになりそう。今後イチからインフラを構築するPJに参画する機会があれば大いに活かせそう。
  • 今後の新規開発で考慮する点、考え方が少し分かった気がする(インフラも考慮に入れた提案などはできるかも)
  • インフラに興味を持った。恐怖心がなくなった。
  • アプリケーションの後ろで何がどう動いてるかをイメージできるかどうかがとても重要だと感じた。
  • 実際にインフラを構築しなくても、アプリケーションエンジニアとして開発を進めていく中、パフォーマンス向上・スケーラビリティなどの文脈でインフラ視点が大事になってくる場面も多いのでとても有意義であった。

微妙、活かせるか分からない

  • 直接日々の業務にすぐに役立てられるというような類のものではなかったかなという印象です。
  • 直近、インフラアーキテクチャを構築していく機会というのはなかなかないのでイメージがしづらい。
  • SREではないので、AWSのサービスを設定したりすることはないため直接的に活かすことは難しそう。
  • サービスのエンジニアだとゼロから構築することは稀で、既存のBASEのインフラ資産を活用する方向に行くことがほとんどなので微妙。

で、結局「AWS JumpStart」どうなの?

ちなみに私は提案者であり参加者ではありません。

参加後に研修レポートを書いてもらったものをまとめてこの記事を書いているのですが、レポートには長文だったり、非常に臨場感あるものもあり、ハンズオン、検討会などが本当に楽しかったのだろうなということがヒシヒシと伝わってきました。
次回は私も参加したいと思えるくらいに。

トータルしてプラスの意見が多く参加してもらって良かったなと感じています。

「微妙、活かせるか分からない」という意見もありましたが、実際のところアプリケーションの後ろで何がどう動いてるかをイメージできるようになったはずですし、考え方の幅が広がったと思いますので、マイナスの意見を書いてるエンジニアでも全く無駄ではないと考えています。
また、インフラの苦手意識の克服、耐性ができたのも非常に良かった点だと考えています。

最後に

「AWS JumpStart」について書いてきました。
SREを目指していない人でも、開発に活かせる内容ですし、後日談でAWSの方と話をしたときには「内容はさらにパワーアップさせるよう動いています」という話も聞いています。

しかし、知識は使ってなんぼ

リアーキテクチャもまだまだれからが本番です。
今後もBASEエンジニア全体のナレッジ底上げを目的とした様々な施策を実施していきたいと考えています!

もしBASEにご興味を持っていただけたならば、カジュアル面談なども実施しておりますので、気軽にお話させていただければと思います!

最後まで読んでいただきありがとうございました。

さて、明日は @02 @tsubo の記事が公開予定です!お楽しみに!