SlideShare une entreprise Scribd logo
1  sur  56
Télécharger pour lire hors ligne
作る人から
作りながら運用する人に
なっていく
サイボウズ 三苫 亮
DevOpsDays Tokyo 2022
04/21 14:00-14:45 Room C
本発表について
• 開発と運用の両方を行うチームが構築した、あるサービスの基
盤、そのなかでもデプロイメントパイプラインの運用・試行錯
誤の結果得られた知見を中心にお話しします。
• 作られたパイプラインと DevOps の考え方を比較し、どのよう
な効果があったかをお伝えできればと思います。
• 特定のツールや技法についてのキーワードは出てきますが詳細
なお話はしません。
自己紹介
• 三苫 亮 (みとま りょう)
• @mitomasan
• サイボウズ開発本部
• バックエンドエンジニア
• グローバル向けAWS版kintoneチーム
このチームの実践を
お話します
本発表の想定聴衆
• 運用に恐れを持つ開発者
サービスをデプロイした後、
しばらくは開発者も運用してくれって?
インフラマンじゃないから本番環境で
トラブルが起きても対応できない!
怖すぎでしょ。
本発表の想定聴衆
• 煩雑なオペレーションに悩む運用者
アラートが鳴るたびにサービスの状況を確認。
深夜に決まった手順を流して対処。
令和時代に俺は何をやっているのか!
自律的に正常状態に復帰してくれ。
本発表の想定聴衆
• 開発と運用の間に横たわる壁を
苦々しく思っている人々
今のサービスを完璧に
運用するわ
頭痛の種は持ち込まないで
最新機能をガンガン開発して
搭載していくぞ
運用はうまい事やっといてくれ
(マズいな…)
目次
• DevOps のカギとなる考え方
• kintone というサービスやわたしたちのチーム
• デプロイメントパイプライン
• それをするために必要だったこと
• なにをデプロイ?
• まとめ
DevOps のカギとなる考え方
DevOps とはどんなことを大事にしているのかな?
DevOps のカギとなる考え方
• サイロの抑制
• アクシデントは普通のこと
• 変化は徐々に起こすべきもの
• ツールと文化は相互に関係する
• 計測は必須
SRE Workbook より
https://sre.google/workbook/how-sre-relates/
※ SRE についてのサイトですが DevOps と SRE の考え方が比較して紹介されています
サイロの抑制
• サイロができると問題を引き起こす
• 優先順位のズレ、局所最適、コラボレーション欠如…
• サイロが引き起こす問題を取り除く
• 必ずしもサイロを壊すのが正解ではない
• サイロ
• 元々は飼料・穀物などの貯蔵庫。タンク
• 業務上、他部門と連携が少なく自己完結するチームを指す
アクシデントは普通のこと
• アクシデントは必ず起こる
• あらゆるものの信頼には限界がある
• IaaS、機材、ソフトウェア、人力チェック…
• 壊れる前提、失敗する前提
• リカバリー可能にし、障害の波及を未然に防ぐ
変化は徐々に起こすべきもの
• 大きな変化は大きな結果をもたらす
• 成功も失敗も大きくなる
• 成否はデプロイするまではわからない
• リスクを小さく前進し続ける
• 小さな変化の方が予測精度が高くなる
• 方針が間違っていた時の気づきも早い
ツールと文化は相互に関係する
• 普段使うものに考え方は強く影響される
• 「言語が思考を規定する」
• 「ハンマーを持つと全てが釘に見える」
• 今のツールを変えずに文化だけ変えるのは難しく
今の文化を変えずにツールだけ導入するのは難しい
計測は必須
• パフォーマンスチューニングの鉄則と同じ
• 「推測しない、計測する」
• 改善していくためには計測して
今のシステムの姿を知らなければならない
• 継続して改善したいなら計測も継続する
kintoneというサービスや
わたしたちのチーム
どんなチームが Dev と Ops をおこなうチームになりたかったのかな?
kintone
• 業務改善プラットフォーム
• 業務アプリを簡単に作る
• ストック&フローの
データを貯めていける
グローバル展開!
• 従来は海外顧客も国内データセンターで提供
• 海外顧客向けは AWS 上で提供することに
国内データセンター
cybozu.com
AWS US Region
kintone.com
NEW
海外顧客の
アカウントは
AWS 環境に移行
何をしたかったか
• セキュリティニーズを満たしつつ
より高いパフォーマンスを実現
• 停止時間の削減とスピーディーなサービスの改善 ← 🌟
• クラウドネイティブな開発運用プロセスの確立 ← 🌟
• 販売管理システムを日本と分ける
US向けにAWS基盤のkintoneを提供開始
~ US国内のAWSデータセンターからサービス提供が可能に ~
| サイボウズ株式会社 (cybozu.co.jp)
• 開発(Dev)と運用(Ops)が分かれている
チームの姿(従来)
運用本部
運用してるよ
開発本部kintone開発チーム
開発してるよ
ここでサイロが分かれる
↓
• グローバル向けAWS版kintoneは開発本部で運用も行っている
• 国内向けに比べて規模が小さい
• 新しい開発運用プロセスを実践する場
チームの姿(現在)
運用本部
国内向けを引き続き
運用してるよ
開発本部kintone開発チーム
開発してるよ
グローバル向けを
運用してるよ
グローバル向けの運用は
組織的にはひとつのサイロ
役割分担
kintone開発チーム
• プロダクトマネージャ
• 新機能開発
• モバイルアプリ
• メンテナンス
• QA
• デザイン
• ライター
• ローカライズ
• …
AWS版のミドルウェアの開発
AWS版のサービス・インフラ運用
6 名程度
• チーム内でもいくつかのサブチームがある
サブチームの
1つです
もともとミドルウェアが分離された構成
APサーバー
全文検索
サービス
非同期処理
サービス
BLOB
サービス
DB
全文検索
エンジン
ストレージ
ミドルウェアを
AWS の利点を活かしたものにしていく
APサーバー
全文検索
サービス
非同期処理
サービス
BLOB
サービス
RDS
OpenSearch
S3
NEW
NEW
NEW
AWS の利点を活かす
• クライドネイティブ技術を使う
• イミュータブルインフラ、宣言的API、マイクロサービス、コンテナ…
• AWS に運用を任せられるものは任せていく
• マネージドサービスの活用
具体的な構築方針
• ツール
• インフラのコード化(Infrastructure as Code)ができるツールを選ぶ
• CloudFormation, Terraform, Kubernetes
• ステートフルなサービス
• マネージドサービスを使う
• RDS, DynamoDB, OpenSearch, ElastiCache, SQS…
• ステートレスなサービス
• 物理~VM~OS のレイヤはやらない(≒コンテナ、lambda)
• EKS, Lambda, Kinesis Analytics…
ミドルウェアってどんなの?
• BLOBストレージ
• サムネイル生成
• 非同期ジョブ
• 定期実行
• 全文検索
• メール送信
• プッシュ通知
• デプロイ
• サービスディスカバリ
• テナント管理
• ロードバランサ
• ログ基盤
• SLI計測
• アラート
• などなど
デプロイメントパイプライン
サービスが自動でデプロイされていくとても便利なしくみ
運用の華と言えば
• デプロイ!
• 開発されたソフトウェアを本番環境に適用
• これをしないと顧客に価値が届かない
• 安全にたくさんデプロイしたい
• しかし
• 障害はデプロイ直後が一番多い
• 何かを変更するから
チームのデプロイ対象
AWS リソース
ミドルウェア
アプリケーション
こちら
こちらはデプロイしない
デプロイのための仕組みを
アプリケーション開発チームに提供
デプロイ対象が多い
• 一つ一つは小さいけど数が多い
• 多数のミドルウェア、インスタンス、ネットワーク、DNS…
• 2 万行を超える CloudFormation のテンプレート
• 個別のデプロイ手順を用意したり手作業で行えない
• 使い分けが大変だし制約を意識できない
1 つの自動化された手順にする
• 何をデプロイするにもすべて同じ方法なら迷わない
そのために
• モノレポの採用
• 管理すべきインフラの構成やミドルウェアを
1 つの Git リポジトリにまとめる
• リポジトリに対して 1 つのデプロイメントパイプラインを作る
• リポジトリの default ブランチの状態 = 運用環境の状態にする
できあがったデプロイメントパイプライン
ステージング環境デプロイ
本番環境デプロイ
ビルド&開発環境デプロイ
巨大なピタゴラ装置
お疲れ様!
今のチームのデプロイ事情
• Pull Request がレビュー合格したらすぐにマージ → デプロイ
• マージされると開発環境、ステージング環境のデプロイを経て
本番環境までデプロイされる
• 各環境で自動のスモークテストが行われる
• 1 日平均 4 回程度のデプロイ
• 0 回の日もある
• 多い日で 1 日 9 回程度
それをするために
必要だったこと
便利なしくみの裏側は
デプロイメントパイプラインを作るのに
何が必要だったの?
• インフラのコード化
• 手作業の撲滅
• ビルドの高速化
• 現実的な速度でデプロイ
• テストの高速化・安定化
• 高速で信頼できるテスト結果
インフラのコード化
• 手作業はミスの温床になる
• ただし、単純にコード化するだけでもダメ
• 再実行を想定しないコードを書きがち
• IaaS/SaaS の変化(アップデート)で壊れることがある
インフラのコード化
• 再実行を想定しないコードを書きがち
• 宣言的に記述するツールを使う
• IaaS/SaaS の変化で壊れる
• 継続的に実行し壊れたことにすぐに気づけるようにする
• 毎日、本番環境構築と同等のデプロイメントパイプラインで
開発環境を新規作成・破棄しています
ビルドの高速化
• すべてのコードを毎回ビルド・テストは非現実的
• 時間がかかりすぎる
• 変更が入っていないコンポーネントは
成果物は変わらないのでスキップする
• ビルドの依存ファイルからハッシュ値を計算しそのハッシュを成果物のバージョ
ンとする
• 依存ファイル:ソースコード、ライブラリ、処理系のバージョン、etc
• ビルド前にハッシュ値を計算し、そのバージョンの成果物が
すでに生成されていればビルド・テストをスキップ
ビルドの高速化
サービスA
サービスB
ライブラリY
サービスC
• 処理系Xを更新した
• すべてビルド
• ライブラリYを更新した
• サービスAとBをビルド
• サービスA~Cのどれかを更新した
• 更新のあったサービスのみビルド
処理系Xで書かれたサービス
テストの高速化・安定化
• テスト対象が多く、相互に依存していると
遅く不安定な自動テストを作りがち
• 遅く不安定なテストでは判断できない
• デプロイ可能か
• デプロイが成功したか
• テストピラミッド
• テストを自動化していくための戦略
• コンシューマ駆動契約
• サービス間のテスト手法
テストピラミッド
• テストの自動化戦略
• テストをサイズ別に分類
• Small, Medium, Large
• 大きなテストは少なく、小さなテストを多く書く
• Large はその仕組みでしかテストできない
テストケースに数を絞る
• Large ほど高速化・安定化にコストがかかる
• 基盤全体を含む
e2e テスト
Large
• DBやネットワーク
通信を伴うテスト
Middle
• 素朴なxUnit
Small
※私たちのチームでの
テストサイズの定義
コンシューマ駆動契約
• 機能の提供側(Provider)と利用側(Consumer) のインターフェイ
スを契約として扱い、その契約をテストする
• サービス間の動作は契約で担保
• サービス間の e2e テストを減らせる
• Large だったテストを
Medium, Small に持っていける
※サービス間の
契約関係を図示したもの
参考)テストサイズの区分け表
Feature ユニット
テスト
Repository
のテスト
契約テスト
Consumer
契約テスト
Provider
コンポーネント
テスト
ラージ
テスト
ネットワーク モック なし localhostのみ localhostのみ localhostのみ 本物
データベース モック 本物 モック 本物 or モック 本物 or モック 本物
外部サービス モック なし モック モック モック 本物
⇦サイズ小 サイズ大⇨
何をデプロイ?
ごりっぱな仕組みで何をデプロイしているのかな?
そんなにデプロイするものある?
• エリートは 1 日に何度もデプロイするとか
そういう指標があるけど何をデプロイしてるの?
• そもそもインフラで何をそんなにデプロイ?
1 日 1000 回 無をデプロイ!
デプロイしているもの一例
• インフラの構成変更
• スケールアウト
• スケールアップ
• パラメータ調整
• ミドルウェアの改修
• リファクタリング
• 不具合修正
• 安定性向上
• パフォーマンス改善
• 調査用のログの仕込み
• デプロイの仕組み
• アラートの閾値変更
• 検知精度の向上
• IaaS費用低減策
• インスタンス数最適化
• バージョンアップ
• OS、ミドルウェア
• OSSライブラリ
• DNS 差し先の変更
• コード化したオペレーション
• などなど
それデプロイ?
• デプロイメントパイプラインで適用されるものは
すべてデプロイ扱い
• 従来の感覚だとデプロイと言わないようなものも
• 普段のデプロイの粒度が小さいので
アーキテクチャ上の大きな変更も
小さなステップに分割して徐々にデプロイする
デプロイメントパイプラインの恩恵
• 運用に開発の技法が持ち込める
• コードレビュー、静的解析、xUnit
• 軽微(と認識されがち)な作業もデプロイが
速く、安全に、自動で行われる恩恵を享受できる
コードで殴ることが
運用になるなら
僕にもできそうだ!
コード化したオペレーションって何?
• オペレーションをミドルウェア上の
REST API として実装したもの
• 調査用データの抽出
• 不整合データの解消
• 本番DBの移行処理
• 機能開発と同じようにオペレーションも実装する
• 普段開発しているコードベースに追加するので土地勘もある
俺はなんでもコードで
解決しちゃうんだぜ
コード化したオペレーションの
ライフサイクル
APIを開発 レビュー デプロイ 本番作業 APIを削除
↑
せっかく開発したものは
残しておきたい気持ちにもなるが
Gitの履歴に残るので
不要な機能はさっさと処分
ここも自動でやりたいが
まだ手動オペレーションとして実装された
REST API を踏み台サーバーで
curl で叩くことが多い
↓
まとめ
DevOps という考え方に近づけているのかな?
DevOps の考え方にあてはめてみると
• サイロの抑制
• ミドルウェア開発と運用を一つのチームで行うようになり
運用の改善を開発の文脈で行えるようになった
• アクシデントは普通のこと
• 人がやるとミスが起きるのでなるべく自動化
• デプロイメントパイプラインが継続的に実行される
DevOps の考え方にあてはめてみると
• 変化は徐々に起こすべきもの
• 小さなデプロイを何回も行う
• デプロイサイクルを何度も回せるように高速化・安定化
• ツールと文化は相互に関係する
• 本番オペレーションでもなんでも自動化していく文化ができてきた
• 計測は必須
• 今回は話せませんでした😢
• ブログやスライドで計測周りの取り組みも
情報公開されているのでぜひ参照ください!
どれぐらいかかったの?
2018/01
ミドルウェア
開発
基盤の構築
デプロイメントパ
イプラインの整備
2019/09
新規顧客の
運用開始
既存顧客の移行
インフラの改善
2020/06
日々の運用
インフラの改善
2022/04
20ヵ月 9か月 22か月
アーキテクチャや
パイプラインは
このあたりで完成
既存顧客のデータ移行や
積み残しの対応
顧客増への対応や
さらなる安定化
⇦
ここまで作る人
⇨
ここから作りながら運用する人
参考情報
• 今日の話で詳細や話せなかったことも、
ブログ・スライドで多数公開しています!
• ブログ記事
• https://blog.cybozu.io/archive/category/Yakumo
• スライド
• https://tech.cybozu.io/slides/tags/yakumo/
おしまい
グローバル向けAWS版kintone
やってやれないことはない
鋭
意
運
用
中

Contenu connexe

Tendances

マイクロサービス化に向けて
マイクロサービス化に向けてマイクロサービス化に向けて
マイクロサービス化に向けてHIRA
 
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかDDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかKoichiro Matsuoka
 
マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話Makoto Haruyama
 
開発者の生産性向上を妨げる障壁と サイボウズの生産性向上チームの取り組み
開発者の生産性向上を妨げる障壁とサイボウズの生産性向上チームの取り組み開発者の生産性向上を妨げる障壁とサイボウズの生産性向上チームの取り組み
開発者の生産性向上を妨げる障壁と サイボウズの生産性向上チームの取り組みJumpei Miyata
 
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計de:code 2017
 
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』Yoshitaka Kawashima
 
私にとってのテスト
私にとってのテスト私にとってのテスト
私にとってのテストTakuto Wada
 
組織の問題も解決するアーキテクチャ BackendsForFrontends
組織の問題も解決するアーキテクチャ BackendsForFrontends組織の問題も解決するアーキテクチャ BackendsForFrontends
組織の問題も解決するアーキテクチャ BackendsForFrontendsPIXTA Inc.
 
脱 Excel設計書
脱 Excel設計書脱 Excel設計書
脱 Excel設計書rai
 
JenkinsとCodeBuildとCloud Buildと私
JenkinsとCodeBuildとCloud Buildと私JenkinsとCodeBuildとCloud Buildと私
JenkinsとCodeBuildとCloud Buildと私Shoji Shirotori
 
ITコミュニティと情報発信に共通する成長と貢献の要素
ITコミュニティと情報発信に共通する成長と貢献の要素ITコミュニティと情報発信に共通する成長と貢献の要素
ITコミュニティと情報発信に共通する成長と貢献の要素NISHIHARA Shota
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay都元ダイスケ Miyamoto
 
Azure API Management 俺的マニュアル
Azure API Management 俺的マニュアルAzure API Management 俺的マニュアル
Azure API Management 俺的マニュアル貴志 上坂
 
アジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドアジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドHiroyuki Ito
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)NTT DATA Technology & Innovation
 
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とはがんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とはJun-ichi Sakamoto
 
Kongの概要と導入事例
Kongの概要と導入事例Kongの概要と導入事例
Kongの概要と導入事例briscola-tokyo
 
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビューTakafumi ONAKA
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugItsuki Kuroda
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけらAtsushi Nakamura
 

Tendances (20)

マイクロサービス化に向けて
マイクロサービス化に向けてマイクロサービス化に向けて
マイクロサービス化に向けて
 
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかDDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
 
マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話
 
開発者の生産性向上を妨げる障壁と サイボウズの生産性向上チームの取り組み
開発者の生産性向上を妨げる障壁とサイボウズの生産性向上チームの取り組み開発者の生産性向上を妨げる障壁とサイボウズの生産性向上チームの取り組み
開発者の生産性向上を妨げる障壁と サイボウズの生産性向上チームの取り組み
 
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
 
ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』ソフトウェア開発における『知の高速道路』
ソフトウェア開発における『知の高速道路』
 
私にとってのテスト
私にとってのテスト私にとってのテスト
私にとってのテスト
 
組織の問題も解決するアーキテクチャ BackendsForFrontends
組織の問題も解決するアーキテクチャ BackendsForFrontends組織の問題も解決するアーキテクチャ BackendsForFrontends
組織の問題も解決するアーキテクチャ BackendsForFrontends
 
脱 Excel設計書
脱 Excel設計書脱 Excel設計書
脱 Excel設計書
 
JenkinsとCodeBuildとCloud Buildと私
JenkinsとCodeBuildとCloud Buildと私JenkinsとCodeBuildとCloud Buildと私
JenkinsとCodeBuildとCloud Buildと私
 
ITコミュニティと情報発信に共通する成長と貢献の要素
ITコミュニティと情報発信に共通する成長と貢献の要素ITコミュニティと情報発信に共通する成長と貢献の要素
ITコミュニティと情報発信に共通する成長と貢献の要素
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
 
Azure API Management 俺的マニュアル
Azure API Management 俺的マニュアルAzure API Management 俺的マニュアル
Azure API Management 俺的マニュアル
 
アジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドアジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイド
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
 
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とはがんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
 
Kongの概要と導入事例
Kongの概要と導入事例Kongの概要と導入事例
Kongの概要と導入事例
 
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjug
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
 

Similaire à 作る人から作りながら運用する人になっていく

サイドプロジェクトで使う Azure DevOps
サイドプロジェクトで使う Azure DevOpsサイドプロジェクトで使う Azure DevOps
サイドプロジェクトで使う Azure DevOpsShuhei Eda
 
TDDBC osaka 2012/06/02
TDDBC osaka 2012/06/02TDDBC osaka 2012/06/02
TDDBC osaka 2012/06/02Hiro Yoshioka
 
大規模ソフトウェア開発とテストの経験について
大規模ソフトウェア開発とテストの経験について大規模ソフトウェア開発とテストの経験について
大規模ソフトウェア開発とテストの経験についてRakuten Group, Inc.
 
テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1Hiro Yoshioka
 
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops20120927 findjob4 dev_ops
20120927 findjob4 dev_opsume3_
 
kintoneの新機能を開発するお仕事
kintoneの新機能を開発するお仕事kintoneの新機能を開発するお仕事
kintoneの新機能を開発するお仕事Cybozu, Inc.
 
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践日本マイクロソフト株式会社
 
CEDEC2015講演 チーム開発をスムーズにするために
CEDEC2015講演 チーム開発をスムーズにするためにCEDEC2015講演 チーム開発をスムーズにするために
CEDEC2015講演 チーム開発をスムーズにするためにTakafumi Ikeda
 
DevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックDevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックYu Kitazume
 
マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021Yusuke Suzuki
 
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~Rakuten Group, Inc.
 
2014.11.01 Dockerことはじめ
2014.11.01 Dockerことはじめ2014.11.01 Dockerことはじめ
2014.11.01 Dockerことはじめxyzplus_net
 
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -Yukihiko SAWANOBORI
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイントKentaro Matsui
 
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】DeNA
 
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
分散開発チームによるAgile開発実践 ~いろいろハマった!よかったMakoto Iguchi
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発日本マイクロソフト株式会社
 

Similaire à 作る人から作りながら運用する人になっていく (20)

サイドプロジェクトで使う Azure DevOps
サイドプロジェクトで使う Azure DevOpsサイドプロジェクトで使う Azure DevOps
サイドプロジェクトで使う Azure DevOps
 
TDDBC osaka 2012/06/02
TDDBC osaka 2012/06/02TDDBC osaka 2012/06/02
TDDBC osaka 2012/06/02
 
大規模ソフトウェア開発とテストの経験について
大規模ソフトウェア開発とテストの経験について大規模ソフトウェア開発とテストの経験について
大規模ソフトウェア開発とテストの経験について
 
テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1
 
20120927 findjob4 dev_ops
20120927 findjob4 dev_ops20120927 findjob4 dev_ops
20120927 findjob4 dev_ops
 
kintoneの新機能を開発するお仕事
kintoneの新機能を開発するお仕事kintoneの新機能を開発するお仕事
kintoneの新機能を開発するお仕事
 
Dockerとdev ops
Dockerとdev opsDockerとdev ops
Dockerとdev ops
 
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
【de:code 2020】 Azure Kubernetes Service と Azure DevOps による GitOps の実践
 
CEDEC2015講演 チーム開発をスムーズにするために
CEDEC2015講演 チーム開発をスムーズにするためにCEDEC2015講演 チーム開発をスムーズにするために
CEDEC2015講演 チーム開発をスムーズにするために
 
DevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックDevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニック
 
マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021マイクロサービスに至る歴史とこれから - XP祭り2021
マイクロサービスに至る歴史とこれから - XP祭り2021
 
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
 
2014.11.01 Dockerことはじめ
2014.11.01 Dockerことはじめ2014.11.01 Dockerことはじめ
2014.11.01 Dockerことはじめ
 
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
 
Fcp
FcpFcp
Fcp
 
恋するJenkins
恋するJenkins恋するJenkins
恋するJenkins
 
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
SHOWROOMとDeNAで取り組んだライブ配信基盤刷新・超低遅延ライブ配信の裏側【DeNA TechCon 2020 ライブ配信】
 
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
分散開発チームによるAgile開発実践 ~いろいろハマった!よかった
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
 

Plus de Ryo Mitoma

さよなら Flaky 不安定なテストの探し方
さよなら Flaky 不安定なテストの探し方さよなら Flaky 不安定なテストの探し方
さよなら Flaky 不安定なテストの探し方Ryo Mitoma
 
kintone のレコード絞り込み置き換え事例の紹介
kintone のレコード絞り込み置き換え事例の紹介kintone のレコード絞り込み置き換え事例の紹介
kintone のレコード絞り込み置き換え事例の紹介Ryo Mitoma
 
小さなサービスも契約する時代
小さなサービスも契約する時代小さなサービスも契約する時代
小さなサービスも契約する時代Ryo Mitoma
 
京都在住、時々大阪、アメリカ向けの基盤開発
京都在住、時々大阪、アメリカ向けの基盤開発京都在住、時々大阪、アメリカ向けの基盤開発
京都在住、時々大阪、アメリカ向けの基盤開発Ryo Mitoma
 
Salary negotiation battle on Cybozu - employee side
Salary negotiation battle on Cybozu - employee sideSalary negotiation battle on Cybozu - employee side
Salary negotiation battle on Cybozu - employee sideRyo Mitoma
 
転職ドラフトを活用した給与交渉術~サイボウズ編~
転職ドラフトを活用した給与交渉術~サイボウズ編~転職ドラフトを活用した給与交渉術~サイボウズ編~
転職ドラフトを活用した給与交渉術~サイボウズ編~Ryo Mitoma
 
3000社の業務データ絞り込みを支える技術
3000社の業務データ絞り込みを支える技術3000社の業務データ絞り込みを支える技術
3000社の業務データ絞り込みを支える技術Ryo Mitoma
 
kintoneの検索高速化への取り組み
kintoneの検索高速化への取り組みkintoneの検索高速化への取り組み
kintoneの検索高速化への取り組みRyo Mitoma
 
サイボウズのリモートワーク・リモートチーム
サイボウズのリモートワーク・リモートチームサイボウズのリモートワーク・リモートチーム
サイボウズのリモートワーク・リモートチームRyo Mitoma
 
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策Ryo Mitoma
 
kintoneチームのKAIZEN文化
kintoneチームのKAIZEN文化kintoneチームのKAIZEN文化
kintoneチームのKAIZEN文化Ryo Mitoma
 

Plus de Ryo Mitoma (11)

さよなら Flaky 不安定なテストの探し方
さよなら Flaky 不安定なテストの探し方さよなら Flaky 不安定なテストの探し方
さよなら Flaky 不安定なテストの探し方
 
kintone のレコード絞り込み置き換え事例の紹介
kintone のレコード絞り込み置き換え事例の紹介kintone のレコード絞り込み置き換え事例の紹介
kintone のレコード絞り込み置き換え事例の紹介
 
小さなサービスも契約する時代
小さなサービスも契約する時代小さなサービスも契約する時代
小さなサービスも契約する時代
 
京都在住、時々大阪、アメリカ向けの基盤開発
京都在住、時々大阪、アメリカ向けの基盤開発京都在住、時々大阪、アメリカ向けの基盤開発
京都在住、時々大阪、アメリカ向けの基盤開発
 
Salary negotiation battle on Cybozu - employee side
Salary negotiation battle on Cybozu - employee sideSalary negotiation battle on Cybozu - employee side
Salary negotiation battle on Cybozu - employee side
 
転職ドラフトを活用した給与交渉術~サイボウズ編~
転職ドラフトを活用した給与交渉術~サイボウズ編~転職ドラフトを活用した給与交渉術~サイボウズ編~
転職ドラフトを活用した給与交渉術~サイボウズ編~
 
3000社の業務データ絞り込みを支える技術
3000社の業務データ絞り込みを支える技術3000社の業務データ絞り込みを支える技術
3000社の業務データ絞り込みを支える技術
 
kintoneの検索高速化への取り組み
kintoneの検索高速化への取り組みkintoneの検索高速化への取り組み
kintoneの検索高速化への取り組み
 
サイボウズのリモートワーク・リモートチーム
サイボウズのリモートワーク・リモートチームサイボウズのリモートワーク・リモートチーム
サイボウズのリモートワーク・リモートチーム
 
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
企業向けクラウドサービスの開発・運用 悩みどころのパターンと対策
 
kintoneチームのKAIZEN文化
kintoneチームのKAIZEN文化kintoneチームのKAIZEN文化
kintoneチームのKAIZEN文化
 

Dernier

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 

Dernier (9)

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 

作る人から作りながら運用する人になっていく