Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
「Famm」とプロダクト開発(AWS活用事例)
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
koheiiwamura
January 15, 2020
Technology
2.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
「Famm」とプロダクト開発(AWS活用事例)
koheiiwamura
January 15, 2020
More Decks by koheiiwamura
See All by koheiiwamura
【社内向け】AWS re:Invent2019の参加レポート
koheiiwamura
0
73
PWAをやってみたよ
koheiiwamura
0
300
Other Decks in Technology
See All in Technology
CDKで書くECSのベストプラクティス、 改めて考え直す2026 #cdkconf2026
makies
3
850
ゴールデンパスは敷いただけでは道にならない ─ 企画部門のエンジニアが技術標準を事業価値に変えるまで
mhrtech
1
230
Compose 新機能総まとめ / What's New in Jetpack Compose
yanzm
0
320
Devsumi 2026 Summer 人もAIも使える共通基盤を事業の加速装置にする~デザインシステム運用に学ぶ組織レバレッジ~ 渡辺 凌央
legalontechnologies
PRO
1
240
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
13
6.6k
LLM/Agent評価:トップ営業の発言を「正解」にする 〜暗黙的正解による評価を営業資産に変える〜
takkuhiro
1
230
SRE依存からの脱却 運用を開 発チームへ移す、 フルサイ クル開 発体制の実践
joooee0000
0
3.2k
マルチアカウント環境でSecurity Hubの運用、その後どうなった? / SRE NEXT 2026 miniLT会
genda
0
110
[2026-07-15] AI Ready なはずだったアーキテクチャと、見えてきた課題・次に目指す状態
wxyzzz
9
4k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
実践!既存 Project への AI-Driven Development 適用〜 一ヶ月で Project 唯一のフロントエンドエンジニアを作り出せ〜
lycorptech_jp
PRO
0
240
Genie Ontologyは銀の弾丸かを考える / Is Genie Ontology a Silver Bullet?
nttcom
0
410
Featured
See All Featured
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
190
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
630
Building Adaptive Systems
keathley
44
3.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Context Engineering - Making Every Token Count
addyosmani
9
1k
How to Ace a Technical Interview
jacobian
281
24k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
250
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Discover your Explorer Soul
emna__ayadi
2
1.2k
For a Future-Friendly Web
brad_frost
183
10k
Making Projects Easy
brettharned
120
6.7k
Transcript
子育て家族を支えるプラットフォーム 「Famm」 &プロダクト開発 Timers-inc
自己紹介 名前:岩村康平(あだ名:いわむ) 所属:Timers-inc 職種:サーバーサイドエンジニア 趣味:B-monster(暗闇ボクササイズ ) 好きなAWSサービス:Route53 Twitter:@k_iwamu
Agenda • Timers • Famm(事業) • Fammアプリ • 出張撮影サービス •
出張撮影サービスにおけるAWS活用事例
Agenda • Timers • Famm(事業) • Fammアプリ • 出張撮影サービス •
出張撮影サービスにおけるAWS活用事例
About Timers • 設立:2012年5月11日(7年目) • 従業員:約40名 • 所在地:恵比寿 • URL:https://timers-inc.com
• 主な事業:Famm
About Timers Vision: 古き良きを新しく
「古き良きを新しく」 • トレンドの流行り廃りを追従する事業は行わない • いつの時代も変わらない、人類の普遍的・本質的な価値観に焦点を当てた事業を 展開する
「古き良きを新しく」 • トレンドの流行り廃りを追従する事業は行わない => 長く続く事業 • いつの時代も変わらない、人類の普遍的・本質的な価値観に焦点を当てた事業を 展開する => 国や文化を超えたグローバルな展開
「古き良きを新しく」 人類の普遍的な価値観:「家族」 に基づいた事業を行う
Agenda • Timers • Famm • Fammアプリ • 出張撮影サービス •
出張撮影サービスにおけるAWS活用事例
About Famm 「家族の絆を深める」というビジョンのもと 子育て家族の生活を支えるアプリ & 関連事業のブランド
Fammの事業グループ 出張撮影サービス ママ専用スクール Fammアプリ 無料撮影会 オリジナル商品
Fammの事業グループ 出張撮影サービス ママ専用スクール Fammアプリ 無料撮影会 オリジナル商品 アプリを中心としながら複数の事業を展開し 子育て家族の生活を豊かにしていくプラットフォーム
各家族のライフステージに応じたサービスを継続して提供する Fammのこれから Famm共通ID基盤 金融サービス 育児商品 教育 人材サービス 写真 イベント キャリア
ユーザーID メールアドレス Account Marketingに 使えるデータ Data One to One コミュニケーション Marketing
Agenda • About Timers • Famm • Fammアプリ • 出張撮影サービス
• 出張撮影サービスにおけるAWS活用事例
Fammの事業グループ 出張撮影サービス ママ専用スクール Fammアプリ 無料撮影会 オリジナル商品
• 子供の写真・動画を無制限でアップロード、家族や親戚間で簡単に共有できる、子 育て家族用の写真・動画共有アプリ • 写真を使ってオリジナル商品を作り注文することができる(カレンダー、アルバム、 バースデーボード etc…) オリジナル商品注 文 Fammアプリ
写真アップロード
Fammアプリの機能例 アルバム機能 カレンダー機能 DVD機能
Fammアプリ 両親 義両親 写真をアップ 毎月カレンダー送付 ありがとう! 嬉しい!
Fammアプリの実績 • 子育てママを中心に会員数120万人を突破 • 写真の総アップロード枚数は1億枚以上 • 売上はアプリでの購買を中心に成長中。前年比200%達成
Agenda • Timers • Famm • Fammアプリ • 出張撮影サービス •
出張撮影サービスにおけるAWS活用事例
Fammの事業グループ 出張撮影サービス ママ専用スクール Fammアプリ 無料撮影会 オリジナル商品
出張撮影サービス • ¥19800~撮影可能 • 全国各地のプロカメラマンが登録 • お宮参り、七五三など、ジャンルが豊富 • カットは75枚以上 子どもの成長とともに訪れる行事にプロのカメラマンが出張して撮影
出張撮影サービスのフロー 検索 ユーザー プロフィール設定 カメラマン チャット 撮影 マッチング 予約
出張撮影サービスのUI/UX向上 • ユーザー行動の調査・SEO • ユーザー目線でのQA
ユーザー動向の調査・SEO • Google Tag Manager を利用 ◦ ユーザーの操作や離脱率などを調査 • LPを複数設置し、導線を増やす
◦ SEOに強いfammのドメインを利用し、 fammドメイン配下に設置 ◦ どのようなアプローチがユーザーに響くのか 検証を重ねる snap.famm.us LP famm.us/yyyy LP famm.us/zzzz LP famm.us/xxxx GTM
ユーザー目線でのQA 【常時】 【今後】 【リリース前】 【定期】 プライベートでも子育てしている 方が多いQAチームに レビュー依頼 一度社内限定でリリース し、
フィードバックをもらう 社員のママ友を招いて、実際に ユーザーインタビュー Fammアプリのユーザーを 出張撮影サービスに誘導
Agenda • About Timers • Famm • Fammアプリ • 出張撮影サービス
• 出張撮影サービスにおけるAWS活用事例 ◦ 0-1段階のサービスでの活用例中心
出張撮影サービスの開発 AWSのサービスをフル活用し、開発スピードや運用も意識 作業内容\期間 4月 5月 6月 7月 8月 9月~ 技術選定・環境構築
開発 QA・修正 機能追加・保守運用
全体構成
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
• ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
• ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
アプリケーションのインフラにECS・Fargateを採用 長期的な事業を見込んでいたため、開発初期からプロダクト運用面などを考慮 ECS x Fargateの採用 メリット • コンテナの導入で開発からデプロイまで一貫した 環境で行える •
Fargateによってホストサーバーの管理・運用の 工数を削減 => よりアプリケーションの開発に集中
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
◦ savings plansの導入 ◦ 開発、QA環境の夜間・休日停止バッチ • ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
◦ savings plansの導入 ◦ 開発、QA環境の夜間・休日停止バッチ • ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
Savings Plansとは Fargate・EC2の利用料金を最大72%割引で受けられる新しい料金プラン 特徴 • 1年間または3年間にわたって一定の使用量 (金額)にコミットするだけで、割引が適用 • 従来のリザーブドインスタンス (RI)よりも管理や運用の負荷が軽減
• Cost Explorerで推奨コミット金額が提示されるので、導入も簡単
Savings Plans 時間当たりの 利用料金合計 期間 (一定利用) 元々の料金
Savings Plans 時間当たりの 利用料金合計 期間 Savings Plans の コミット部分 (割引の金額でコミット
) コミット金額 コミット年数 支払い方法 による
Savings Plans 時間当たりの 利用料金合計 期間 Savings Plans の コミット部分 (割引の金額でコミット
) コミット金額 (Savings Plansでコスト削減される範囲 ) 最大72%
Savings Plans と RIの違い 項目\プラン Savings Plans RI 詳細プラン Compute
EC2 Instance コンバーティブル スタンダード 割引率 最大66% 最大72% 最大66% 最大72% 金銭的なコミットメント ◯ ◯ × × どのインスタンスファミリーにも自動 適応 ◯ × × × どのインスタンスサイズにも自動適 用 ◯ ◯ △ △ どのテナンシーやOSでも割引を自 動適用 ◯ ◯ × × Fargate使用量に自動適用 ◯ × × × 全てのリージョンに自動適用 ◯ × × ×
コミット金額の推奨 AWSコンソールで推奨金額が提示(Cost Explorer => Savings Plans)
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
◦ savings plansの導入 ◦ 開発、QA環境の夜間・休日停止バッチ • ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
開発、QA環境の夜間・休日停止バッチ lambdaからAWS APIを通じて、Serviceの必要タスク数を調整
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
• ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
定期的なバッチはECS Task Schedulingを用いて実装 ECS Task Schedulingでバッチを稼働 メリット • すでにECSクラスタが組まれている場合、導入が とても簡単
• 実行時間やライブラリ、言語に制限がない • タスク実行数も決められるので、並列分散処理な どにも対応できる
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
• ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
Cognito導入 • ユーザー認証機能としてAWS Cognitoを導入 ◦ 自前で作るより圧倒的に工数削減・信頼感 • AWS_SDKをNuxt.jsのプロジェクトにインストール
• Cognitoはセッション管理のため三 種類のTokenを生成 Cognito x AWS_SDK Token名 用途 Id_Token 認証に用いる(期限1時間)
Access_token 属性変更(期限1時間) Refresh_token Tokenの更新 • AWS_SDKは、Tokenをブラウザの ローカルストレージに保存
Nuxt.js(SSR) SEOを考慮し、Nuxt.js SSRモードを利 用。サーバーでHTMLを構築。 サーバーからブラウザのローカルスト レージを閲覧することができないため、 認証が行えない。
Cookieに保存して対応 CookieにTokenを保存し、リクエスト 時にサーバー側に送信。 Cookieの上限4kbを超えてしまい、 Tokenを保存することができない。 (Refresh_tokenがとても長い)
最終構成 • Cookie: Id_tokenのみ保存 • DB: Refresh_tokenを保存 ➔ Id_tokenの期限が切れていた場 合はDBのRefresh_tokenで更新
してセッションを維持する。
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
• ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
CloudFront + Lambda@edgeで画像リサイズ 実態 • カメラマンプロフィールページで数十枚のポート フォリオ写真を表示 • JPEGで画素数の高い画像がほとんど 課題
• 画像の表示がとても遅く、 UXが非常に悪い 解決策 • CloudFront + lambda@edgeで画像リサイズ
CloudFront + lambda@edge CloudFrontとサーバー間の通信の間に入りLambda関数を利用できる機能
CloudFront + lambda@edge CloudFrontとサーバー間の通信の間に入りLambda関数を利用できる機能 ユーザー認証 ヘッダーを カスタム アクセス先変更 リサイズ
CloudFront + lambda@edge でリサイズ 1. CloudFrontのドメイン + S3へのPath + サイズ
指定のurl-parameterを指定してリクエスト 2. S3の指定のバケットからリクエストの Pathに応じ てオブジェクト取得 3. lambda@edgeが起動して、url-parameterに応 じて画像をリサイズする 4. CloudFrontでリサイズ後の画像を cacheする parameterに応じて S3の画像をリサイズ
CloudFrontで画像のサムネイル変換 • カメラマンのポートフォリオ画像をリサイズして cacheすることで、写真の表示を早くする ことに成 功 • 複数のユーザーが同じカメラマンページを閲覧す るので、ヒット率が高く効果的 •
url-parameter(サイズ設定)が異なるとcache ヒットさせない設定もあり、様々なサイズの画像 にリサイズしてcacheできる
AWS 活用事例 • ECS x Fargate の採用 • Fargate のコスト削減
• ECS Task Scheduling でバッチを稼働 • Cognitoによる認証管理と注意点 • CloudFront + lambda@edgeでサムネイル変換
全体構成
(最後に)Timersで働きたい エンジニア大募集してます
技術 • 言語: Golang, PHP, Node.js, Javascript(Vue.js) • インフラ: AWS,
GCP, Firebase • 開発フロー: スクラム開発, Github flow • DevOps/CI: Docker, CircleCI, Fabric • データ分析:Fluentd, Embulk, Google BigQuery • 監視:Librato, CloudWatch, Mackerel サーバーレスやマネージドサービスを積極的に導入する文化 • モバイルアプリのサーバーサイド APIの設 計&開発 • AWS,GCPを利用したクラウドインフラの構 築&運用 • DevOps業務(IaC、CI/CD環境の強化) • ログ分析基盤(データストリーミング)の設 計&開発 • 大規模写真印刷システムの設計&開発 【業務詳細】 【主な技術】
自由な働き方 • 裁量労働制 ◦ 自分の仕事に対して時間を費やすのではなく結果を出す • コアタイムフレックス(10:30~16:30) ◦ 私用や勉強会なども気軽に入れられる •
リモートワーク ◦ リモートワークでも働きやすいような環境を会社として改善
エンジニアとしての成長の支援 • 技術書籍購入補助 ◦ 興味がある本なら気軽に申請して購入できる • Tech-lunch ◦ 昼休みに英語のテクノロジーに関する動画を見ながらランチをする •
海外カンファレンスの参加推奨 ◦ AWS re:Invent への参加
AWS re:Invent 2019
その他福利厚生 • ランチ代補助 ◦ 社員2人以上のランチで1000円補助 • キッズ/パートナー誕生日祝い ◦ 花束送付、特別休暇 •
妊活費用補助 • 恋愛サポート補助 ◦ 合コン/街コン費用補助 • 失恋休暇 ◦ 失恋したら特別休暇
その他福利厚生 • ランチ代補助 ◦ 社員2人以上のランチで1000円補助 • キッズ/パートナー誕生日祝い ◦ 花束送付、特別休暇 •
妊活費用補助 • 恋愛サポート補助 ◦ 合コン/街コン費用補助 • 失恋休暇 ◦ 失恋したら特別休暇 少しでも興味ある方はご連絡ください!
まとめ
まとめ • Timers • Famm • Fammアプリ • 出張撮影サービス •
出張撮影サービスにおけるAWS活用事例
appendix • Timersコーポレートサイト ◦ https://timers-inc.com • Fammアプリ ◦ https://famm.us •
出張撮影サービス ◦ https://snap.famm.us • Timers Tech Blog ◦ https://techblog.timers-inc.com
何かございましたら Twitter: @k_iwamu まで
ご静聴ありがとうございました!