AWS 運用未経験から入社してやってみたこと

本エントリは、クラメソビギナーズの圧倒的成長 Advent Calendar 2020 の 23日目の記事です。

はじめに

こんにちは、CX事業本部のキムです。
今年 7月にジョインブログを書いたのが昨日のような気がしますが、もう今年も一週間ちょっとで終わる時期になったので本当にやばいです。せっかくなので入社してからの半年を振り替えてみたい気持ちができたので、クラメソビギナーズのアドベントカレンダー2020 に参加しました。AWS を完全に理解していない私がクラスメソッドに入社しどんな学びがあったのかできるだけフィルタせずに書いてみたいと思います。

やってみた

プロジェクト

AWS 完全に理解していません(7月)

配属チームである MADチーム のマネージャーハマコーさんが担当している案件にジョインし全く分からない AWS 運用周りの筋肉を鍛えるお時間をもらいました。主に AWS CDK を利用して Lambda 経由で EFS と S3 を同期させるタスクをやったり、外形監視の新機能である CloudWatch Synthetics Canary を導入しクライアントの要望に沿った体系を作ったりしました。結構自由度が高いプロジェクトだったので、ジョインさせてくださったハマコーさんに感謝しています。

コンテナ案件との出会い(8月頭)

最終的にキャンセルになりましてちょっともったいないプロジェクトなんですが、それなりに ECS と EKS の基本をインプットさせるお時間をもらったので、結構有意味な時期でした。元々 On-premise で構築されている K8s (Like GKE) だけの経験しかなかったので、既存の知識と比べて ECS、EKS それぞれどんな違いがあるのかを重点的に探してみました。AWS リソースも 7月の案件でちょっと覚えた AWS CDK を利用し ECS の Task を立ち上げたり EKS に Pod をスケールさせたり、各リソースの Lifecycle を調べてみたり cdk8s を試したりなど楽しいお時間を過ごしました。

IoT データの収集と集計、可視化基盤を運用(8月末 ~ 現在)

既に一年前から MADチームの 新井さんが構築し運用フェーズに入っている IoT プロジェクトに参加することになりました。計画的に 9月からは今年 3月にジョインした 小島さんと一緒にプロジェクトを進めることになり、私はデータパイプラインよりかは主に DevOps エンジニアっぽいタスクを消化して来たと感じています。例えば、カスタムメトリクスを取ったり、複数のサービスに CI/CDを導入したり、AWS CDK と Terraform で API Gateway + Lambda + CloudFront を IaC化したりなど自分の専門性にしたい領域のタスクを諸々もらって本当に感謝しています。

来年からは PO とロードマップを作成したり、システムのボトルネックを洗い出して改善するのが主な役割だと思うので、ちょっと本気を出してみたいと思っています。

AWS認定資格

入社してから一ヶ月後に勢いで Solutions Architect - Associate を受けてみたんですが、試験中にはギリギリ合格する雰囲気だったのに FAIL っていう単語が画面に出てきて、その後一週間ぐらい絶望した時期がありました。AWS認定資格にチャレンジする人は誰でも一回以上は経験する訓練だと思うので、このブログを読んでいる方々は FAILを怖がらなく一緒にチャレンジしていきましょうー

https://www.youracclaim.com/users/inseo-kim/badges

最初の訓練のおかげで、今は Associate 三兄弟はもちろん今月頭に Solutions Architect - Professional まで合格しました。今月末には DevOps Engineer - Professional を受ける予定があるので応援していただけると助かります。

スクラム何も分からない

8月末からジョインした IoT プロジェクトに 10月末からスクラムマスターの役割でお二人がジョインしました。メインは今年 9月に入社した かみとさん、サポートとして 深澤さんっていうポジションでチーム向けのスクラム説明会から進めることになりました。前職で何ヶ月間スクラムやったことはあったんですが、雰囲気でやっていたのでスクラムに対して自分なりの具体的な軸がない状態でした。最初は本当にうまく回せるようになるかなとちょっと心配になったんですが、スクラムマスターさんの柔軟なやり方及びチームメンバーの「やってみる」精神、スクラムイベントをもとに今だと結構チームの状態が可視化できるようになりました。

  • スプリントプランニング
  • デイリースクラム
  • スプリントレビュー
  • Fun/Done/Learn もしくは KPT
  • チームの約束を定義

まだ、ストーリーポイントの概念がピンと来ないんですが、スクラムに対する自分なりの薄い軸が出来上がったイメージがあるので感謝しています。来年からはスクラムマスターさんが抜けてエンジニアと PO だけでスクラムを回すことになったので、2ヶ月間教えてもらったスクラムを実践してみる機会として使いたいと思います。

プリセールスに参加

マネージャー:キムさん、K8s プリセールスに参加してみない?
私: (プリセールスって食べ物かしら?)あ、はい。K8s ならば参加します!
マネージャー:わっしょい!じゃ、キムさんで

はい、入社した直後である 7月頭に初プリセールスに参加しました。初体験だったのでバタバタしてたイメージが残っているんですが、なんとなくユースケースとかアーキテクチャ周りに対する最低限の答えはやってた記憶が残っています。これまで 3件ぐらい参加してきたんですが、やっぱ全てが問題解決力だなと実感しました。そして、先に問題に直面した相手に対する共感するコメントの大事さも大きな学びでした。

COVID-19 のせいで個人の実力がもっと重要になっていく世の中でプリセールスは、そこら辺の力が鍛えられる活動かなと個人的に思っています。サーバーレスやコンテナに困っている方々はいつでも MADチームに相談させてください。

技術面接に参加

CX事業本部では結構珍しい採用ルールがありまして、チームメンバーも技術面接に参加し質問したり採用への妥当性を話したりする権利があります。私も入社してから 3回ぐらい参加してご自由に課題もしくは課題以外に関する質問をたくさんやってきました。一緒に働くチームメンバーの合意を第一にする価値観も結構素晴らしいですが、個人的にはメンバー全員に面接官っていう経験値が溜まって行くのがすごくメリットだと思っています。一部の人に採用の負荷が集中しすぎると、ボトルネックになるケースは一般的に起きうる採用課題だと思っているからです。

自分の性格的にもあるテーマに対して深掘りしたり、意見交換したりするのが好きなタイプなので今後の面接でも有効的な質問を工夫し色々試してみたいと思います。

OSS コントリビュートの初心者

これまで OSS へのコントリビュートは全くやってなかったし、そもそもハードルが高いと思って主に問題が起きた箇所とか疑問になった動きが発生した場合のみコードリーディングをやるレベルだったんですが、AWS CDK の Issue を読んだり他の人が投げた pull request を理解したりなどをやりつつ OSS コントリビュートへのハードルもちょっとずつ下がって来たました。

最近もちっちゃい改修とかドキュメント修正しかやってないレベルなんですが、来年はもっと価値ある pull request を 100個以上投げてみたいと思います。(目標は高い方が良いと思う派なので笑)

https://github.com/sano307

まとめ

入社してから半年しか経っていないんですが、自分が目標したレベルより上回って成長できたかなと感じられるので、本当に良い選びだったと思います。MADチームではサーバーレスとコンテナが好きな仲間を募集しています。興味ある方はぜひ技術面接でお会いしましょう。

Webフロントエンジニア

サーバーサイドエンジニア

以上、CX事業本部 MADチーム、キム (@sano3071) でした。

明日のクラメソビギナーズの圧倒的成長 Advent Calendar 2020 の 24日目は 片岡隆一さんです。