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
楽楽精算のリリースプロセス最適化/meetup_20211117
Search
Rakus_Dev
November 29, 2021
Technology
0
1.6k
楽楽精算のリリースプロセス最適化/meetup_20211117
Rakus_Dev
November 29, 2021
Tweet
Share
More Decks by Rakus_Dev
See All by Rakus_Dev
多様なマネジメント経験から導き出した、事業成長を支えるEMの4つのコンピテンシー / 4 Key EM Competencies for Growth
rakus_dev
1
1.1k
圧倒的な『顧客志向』の文化の創り方 / Product Engineer Night 20250221
rakus_dev
0
120
読書シェア会 vol.2 / Yumemi.grow 20250225
rakus_dev
0
110
ラクスCTOが語る顧客視点を重視したプロダクト開発 / RAKUSTechCon2024_Kude
rakus_dev
0
2.6k
マルチプロダクトでのプロダクトマネージャーのリアル / RAKUSTechCon2024_Inagaki
rakus_dev
4
4.6k
拡大するマルチプロダクトSaaSの顧客理解にデザイン組織はどう取り組んでいるか / RAKUSTechCon2024_Design
rakus_dev
0
2.4k
急成長する大規模プロダクト開発のマネジメント課題とアプローチ / RAKUSTechCon2024_Seisan
rakus_dev
0
2.4k
パフォーマンス向上とリソース管理のためのアプローチ / RAKUSTechCon2024_RLC
rakus_dev
0
2.2k
急成長するサービスを支えるためのインフラ戦略 / RAKUSTechCon2024_Fujii
rakus_dev
0
2.3k
Other Decks in Technology
See All in Technology
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
350
Aurora PostgreSQLがCloudWatch Logsに 出力するログの課金を削減してみる #jawsdays2025
non97
1
230
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
170
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
1
140
"TEAM"を導入したら最高のエンジニア"Team"を実現できた / Deploying "TEAM" and Building the Best Engineering "Team"
yuj1osm
1
230
Pwned Labsのすゝめ
ken5scal
2
520
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
8
750
AWS Well-Architected Frameworkで学ぶAmazon ECSのセキュリティ対策
umekou
2
150
日経のデータベース事業とElasticsearch
hinatades
PRO
0
260
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
140
AWSアカウントのセキュリティ自動化、どこまで進める? 最適な設計と実践ポイント
yuobayashi
7
960
AIエージェント入門
minorun365
PRO
32
19k
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Faster Mobile Websites
deanohume
306
31k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Producing Creativity
orderedlist
PRO
344
40k
Writing Fast Ruby
sferik
628
61k
How GitHub (no longer) Works
holman
314
140k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
650
Transcript
©2021 RAKUS Co., Ltd. 楽楽精算のリリースプロセス について 根井 達規
#RAKUSMeetup アジェンダ ・開発体制 ・リリース担当者の役割 ・リリースサイクル ・担当してみての課題と対策 ・今後の作業効率化・品質向上にむけて
#RAKUSMeetup 自己紹介 根井 達規(ねい たつのり) 経歴 2005年~2013年:エンジニアになる以前(もともと作曲家) 2014年~2020年:ラクス入社前(Sierでシステム開発を経験) 2020年11月:ラクス入社 現在
楽楽精算の開発と並行してリリース関連業務を担当
©2021 RAKUS Co., Ltd. 楽楽精算のご紹介 本題に入る前に、担当製品の楽楽精算についてご紹介 させていただきます。
#RAKUSMeetup 楽楽精算のご紹介 経費・交通費・出張費・旅費・交際費など、すべての経費精算フローを、 社内の誰もが「楽」できるようになるクラウド型の経費精算システムです。
©2021 RAKUS Co., Ltd. 楽楽精算の開発体制とリリー スフロー
#RAKUSMeetup 開発体制 ・各チーム3~4名体制 ・機能開発チーム×3 ・スマホアプリ開発チーム ・オフショアチーム ・ウォーターフォール開発
#RAKUSMeetup リリース担当となったきっかけ 元々はSREチームが楽楽精算のリリース業務を担当 楽楽精算がサービスとして成長するとともにSREの業務負荷が増え、対 応しきれなくなってきたのと、よりインフラやSREとしての業務(自動化推進 など)に専念するために開発チームにて巻き取ることとなりました。
#RAKUSMeetup リリース担当者の役割(担当作業) ・リリーススケジュールの作成,確認 ・機能開発 ・IT/ST ・品質審査 ・リリース
#RAKUSMeetup リリース担当者の役割(進捗管理)
#RAKUSMeetup リリースサイクル
#RAKUSMeetup リリースサイクル ・設計(項目決定) 開発期間開始時に各事業部でタスクを整理して、どのバージョンにどのような変更をいれるか管理す るようにしています。 ・機能開発 設計~単体テストまでの開発全行程 ・テスト期間(結合・システムテスト) 不具合の洗い出しと、その改修を行います。開発機能として優先度の高い内容を除くと、多くは前回リ リースからの実装差分に焦点を充てて確認を行います。この期間で行うのは主にリリース前の手動に
よるテスト実施してます。この期間でなくとも、自動テストや手動テストを必要に応じて回し、不具合が あれば修正します。
#RAKUSMeetup リリース メジャーバージョンアップ 新機能追加を伴う、アプリケーションリリース。 同時にBugfixなどの対応を行うことがある。 マイナーバージョンアップ Bugfixを中心とした、アプリケーションリリース。 リスクが大きいものは対象としないため、2段階リリースは行わない。 リリース時のサービス停止は発生しない。
©2021 RAKUS Co., Ltd. 担当してみて発生した課題 障害事例の紹介
#RAKUSMeetup 属人化 問題 ・あるチームの開発機能で、本来実施しておくべき作業手順(特定顧客向けの設定) が漏れており、リリース直前に手戻りが発生。 ・イレギュラーな対応を行うことでの障害リスクも増大させてしまった。 原因 ・作業手順/作業分担ができておらず、明確化していなかった 反省点 ・前任者はリリース担当の経験も長く十分にナレッジがあったため、その方式でもリス
クを検知し独自に動けていたが引継ぎ後の体制では漏れてしまった。
#RAKUSMeetup 対策 リリースサイクルのガイドラインを設ける ・特定個人への依存した運用とならないよう、リリースサイクルのガイドラインを作 成 オブジェクトや物資の不足 ・開発担当者・リリース担当者・インフラへの作業引き渡しが曖昧とならないよう、 最終チェックの場を設けた 対策結果 リリースフローが形式知化され、必要な情報は資料を見れば分かる状態となった
©2021 RAKUS Co., Ltd. 今後の展望 今後の作業効率化・品質向上に向けて改善したいこと
#RAKUSMeetup 【現状】 リリース担当者の負担が大きい リリース担当者というリリースに責任を負う人物を立てて、問題なくリリースが行える ように部署間の施策の調整をしたり、スケジュールの調整を行う役目を担ってました。 次のリリースに入るはずの機能がマージできていないときに関係者をつっつくような 役目も持っていたので、とにかく細かい作業や人間の間の調整で忙殺されてしまう。 【理想】 当事者間の調整や確認に非常に手間をとられてるので、「調整・確認」を減らしたい、 なんなら無くしたい!
#RAKUSMeetup 生産性向上に向けた効率化計画
#RAKUSMeetup やってみたいこと CI/CD ・Jenkinsによるビルド、テスト、検証環境へのデプロイは実装できてる ・ジョブが増えすぎたこともあって整理したい ・ソースコード管理にGitlabを利用してるので、GitlabCIを利用してビルド→テスト→デ プロイ→動作確認(性能検証・シナリオテスト)までの一連の流れを一つのパイプライ ンで実施できるようにしたい Selenium 自動化したシナリオテストをもっているが、全機能網羅できてるわけでない。また主要
機能を確認するだけでも5-6時間以上かかってる。シナリオテストの実行時間を減らし たい
#RAKUSMeetup 楽楽精算のリリースサイクルについてご説明しました。 サービスが拡大し環境も変化するで、システム品質を損なわずにどう開発を続けてい けるか試行錯誤してるところです。 まだまだ困っていることもたくさんありますがより良い方法を考えていきたいと思って います。