MOSH
MOSHの開発
サービス説明
ヨガ、フィットネス、講座などクリエイターも事業運営を支援するオンラインサービス
概要
エンジニア職能リード(エンジニアリングマネージャー)兼、技術基盤チームのチームリードとして開発組織の組織と技術の底上げを行なっていました。
- 技術戦略の立案と推進
- 監視基盤の導入、CI/CD改善などの技術基盤の改善
- プロダクト開発プロセスの改善
- アジャイル思想とプラクティスのイネイブリング
- 開発組織のスケール
- 採用、評価、開発組織構造の変更と改善
アーキテクチャ
期間毎の実績
2023/07 ~ 2023/12
役割: プロダクティビティチームリード
開発組織の開発生産性を向上させる5人程のチームです。 管掌範囲は開発に関わる全てなので、技術基盤以外にもコーポレートエンジニアリングや情シス、セキュリティー対応などの役割も担っていました。 また基盤開発を行う傍ら機能開発も行っていました。 技術基盤に軸足を置きながら、エンジニア組織全体の体制やプロダクトマネジメント、開発プロセスの改善を行いました。
実績
- チームミッションの定義、目標設定
- エンジニア組織全体の体制変更の提案と推進
- テックリードの採用難易度や在籍メンバーのスキルセット、プロダクト開発の展望から開発組織の体制変更を提案し推進しました
- インクリメンタルなリリース、運用からのフィードバックなどリーン開発によるプロダクトマネジメントと現状のギャップを説明し開発組織の体制に落とこみました
- 「ソフトウェアエンジニア」から「プロダクトエンジニア」と 職能の名称を変更しジョブディスクリプションも刷新しました。
- 組織内の評価軸、推奨するアクション、求める成果などのガイドラインも策定しました
- 3人から5人の小さな開発チームを維持するユニットと言う構成を置きました
- フルサイクル開発の推進
- トラブルシューティングに当番制の個人が対応しており非効率状態だったためシステムコンポーネント群を定義し、開発ユニットに割り当てメンテナンスの責務を明文化しました
- ポストモーテムのテンプレート作成し運営を推進しました
- 技術基盤のボトルネック整理と優先順位決め
- 監視基盤の導入
- 今後の改善を見据えてまずは監視基盤として
Datadog
を導入し基本的なアラート設定を行いました - 監視のガイドライン策定や「入門 監視」の輪読会を実施し開発チームの知見を増やしたりチームで運営できる様に工夫しました
- 今後の改善を見据えてまずは監視基盤として
2024/01 ~ 2024/06
役割: プロダクティビティチームリード、エンジニアリングマネージャー(エンジニア組織リード)
新しい開発組織の体制を推進するために15人程のメンバーから構成されるエンジニア組織のリードとしてEMの役割を担わせていただきました。
実績
- 継続的デリバリーの改善
- 元々は手動デプロイしており1時間ほど時間を要しており週2回の決まったタイミングで特定のメンバーのみがデプロイ可能な状態でした
- 手動デプロイの原因となっていた複雑な依存関係の解消や、インフラ構成の改善をしながらCIによる自動デプロイを構築しました
- 翌年の上半期は、前年度上半期に比べてデプロイ回数が9倍になる成果を得ることができました。
- AWS IAMアカウント・ポリシーの管理体系の見直し
- 開発組織の拡大に応じて手動で管理していたAWS IAMアカウントをGoogle Workspace連携およびIaCによるポリシー変更の自動化を行いました
- AWSコスト最適化
- 監視ツールの導入など開発基盤のコスト増加に伴いAWSリソースのコスト最適化を行い15%程の削減を行いました
- 技術課題と解決する戦略の提案及び推進を行いました
- フロントエンドの技術基盤の刷新を推進しました
- 基盤構築及び、最初の1つ目の機能をリリースし、組織内のメンバーへのイネイブリングを行いました
- バックエンドでは300超のLambdaから構成されるサーバーレスアプリケーションのリアーキテクチャを行いました
2024/07 ~ 2024/12
役割: プロダクティビティチームリード、エンジニアリングマネージャー(エンジニア組織リード)、リファクタリング対象機能PM、デザインエンジニア、サポートエンジニア
- チームリードをしているプロダクティビティチームはエンジニアが10人程、デザイナー組織もチーム内に新設されたため合計で13人のチーム規模になりました。エンジニア組織の規模は全体で20名程でした。
- 後述するプロダクトのリファクタリングではPMとして活動しました。
- フロントエンドの技術基盤の刷新に伴いUIコンポーネントも刷新したためデザインエンジニアとしてデザイナーチームとエンジニアリングの橋渡しを行いました。
- ユーザーサポートの要望ヒアリングや業務改善を行うため窓口とエンジニアリングの橋渡しを行いました。
実績
- デザイナーと協業し共通UIコンポーネントの作成
shadcn
,TailwindCSS
のフレームワークを活用し生産性を上げながらコンポーネントを揃えていました- デザインエンジニアとして、デザイナーチームに在籍及び協業する事でデザイン活動と開発生産性のバランスを取りながら各種トークンやUIコンポーネントの管理を行いました
- プロダクト全体の再設計及びリファクタリングプロジェクトの推進
- これまで改善を重ねてきた技術基盤を使い、プロダクト機能の取捨選択から複雑化しているソースコードの再設計を行うプロジェクトを開始しました
- 他チームと議論を重ねて期待値が高い機能群を設定しプロジェクト全体のファシリテーションを行いました
- 関係者の認識を揃えやすくするため
v0 by Vercel
を使いデモ画面を構築し実際のUIを見ていただくことでコミュニケーションを円滑にしました
- 関係者の認識を揃えやすくするため
- PMとして以下の活動を行いました
- 既存機能の活用状況のリサーチ
- PRDを作成し背景、課題と対応、短期ゴール、要求などの明文化および組織全体との認識合わせ
- 概念モデル、主要フローの整理
- 初期サポートデバイス、環境
- ユーザストーリーマッピングのファシリテートとMVPスコープ決め
- リリース計画とマイルストーン設定
- サポートタスクの分析を行うための分析基盤の構築
Hono.js
を使った社内ツール、データ1元管理用の収集ツールを構築しました- 実際の構築業務はそれぞれの担当エンジニアが行ったため技術前提や全体アーキテクチャのレビューを行いました
- またサポートとエンジニア組織のフィードバックループとして、完成した分析基盤を用いてエンジニア定例でサポートチームから週次でサポート内容を共有していただく様にしてフロー改善を行いました。