銀行業は人々が使用するもっとも基盤的なサービスのひとつですが、他の業界に比べて新技術の採用と顧客中心のオペレーション構造への変革の点では遅れを取っています。

10x Bankingは、クラウドネイティブのコアバンキングプラットフォームにより、銀行が顧客行動をリアルタイムで把握し、商品を迅速にリリースし、データを活用するなど、一貫した質の高いエクスペリエンスを提供できるようになりました。当社のコアバンキングインフラストラクチャーは、Amazon Web Services(AWS)に構築され、世界最大級の銀行の業務遂行と数百万人もの顧客をサポートしています。当社の目標は、このプラットフォームを拡張しながら、顧客全体にわたり継続的に機能性を強化し、サービスの中断を低減していくことです。継続的な提供、すなわち短期の連続的サイクルでソフトウェアをリリースできることにより、常に最良で信頼性の高いエクスペリエンスを顧客とそのエンドユーザーに提供することが可能になります。これは銀行業界において必要不可欠です。

リリースマネージャーとしての私の任務は、デプロイメントを成功させ、その信頼性を高めることです。エラー率と平均復旧時間(MTTR)を削減し、当社ソフトウェアの一貫性と信頼性を高めていくのが私の責任です。10xに入社して、オブザーバビリティと監視は、自社の技術が大規模環境でどのように機能しているかを理解するだけでなく、あらゆるデプロイメントやアップデートの即時的な影響を注視するためにも重要であることがわかりました。そのために、当社はNew RelicのChange Tracking機能の使用を開始しました。

導入初年度に、当社のリリースプロセスがどのように進化していったか、以下に述べます。

ツールとデータソースの統合

New Relic導入前は、複数のツールを使用して技術スタックのさまざまなエリアのデータを監視、収集していました。このツールの分散が、問題の迅速な解決を阻んでいました。エラーの根本原因を特定するのが難しかっただけでなく、問題解決を導く詳細な情報が欠如していたのです。

当社の企業ミッションは、技術革新を通じて銀行業界を進化させていくことです。ただし、すべての銀行にとって最大の優先事項はアップタイムです。稼働停止は、エンドユーザーからの信頼失墜を象徴するものです。彼らが必要なときに自分のお金にアクセスできなくなるからです。オブザーバビリティでアーキテクチャーの高度なビューを確保することは、より迅速に異常に対応し、稼働停止が発生する前に問題を解決できるようになることを意味します。これにより、継続的なリリース実施もしやすくなります。重大な緊急事態が小さな問題でしかなくなれば、チームは稼働停止ではなく一貫性に注力できるようになります。

ツールとテレメトリデータがNew Relicに統合されてから、私たちはChange Tracking機能を使用してデプロイメントと構成変更の影響を監視しました。この変更の効果は絶大でした。エラー率で急上昇が表示されると、根本原因を検証してその問題がお客様に影響する前に修正できるようになりました。New Relicは、特に当社のお客様が確認できるアーキテクチャーと確認できないアーキテクチャーのエリアをカスタマイズするのに役立ちます。お客様はフロントエンドの責任を担い、一方で当社はバックエンドのスムーズな運用を確保すればよいのです。

継続的リリースへの移行

当社は異常を特定し、平均解決時間を短縮しなければなりませんが、企業としてのミッションは革新的なソフトウェアの開発です。New Relicのダッシュボードにより、当社のソフトウェアライフサイクルの全体像が可視化され、各デプロイメントにおける「Go」と「No-Go」を、情報に基づいて判断できるようになりました。これらのダッシュボードは、複数の環境にわたるデプロイメントデータを同時に表示します。この機能は、会社全体のステークホルダーが同じ情報を共有するために必須のものでした。今では、社員の誰もが、各デプロイメントが環境のさまざまな要素にどう影響を与えるかについての統合的ビューを得ています。

当社は、1日に複数回のデプロイメントを行っています。Change Trackingにより、自信を持ってそれぞれのリリースを行い、エラーの原因をすばやく特定できるようになりました。New RelicのJenkinsとのインテグレーションで、業務はさらに円滑になりました。OpenTelemetryプラグインは、ジョブとパイプラインの実行を分散トレースとして表示するため、デプロイメントデータの監視と、その結果としてパイプラインの改善が容易になります。この可視性と、継続的リリースへの全般的な移行により、リリースマネージャーとしての業務がスムーズになりました。

New Relicから収集したデータは、混乱を理解し、同時にリアルタイムのパフォーマンスの把握も可能にします。継続的リリースに注力するハイペースな環境では、これらのリアルタイムのメトリクスが、システム全体を理解するための、そして改善の必要なサービスやAPIを特定するためのレンズとなります。いつでも迅速にリリースの状況を確認でき、顧客体験に影響を与えうるあらゆる問題を事前に解決できます。

New Relicの変更追跡機能がどう機能するかについては、こちらの動画をご覧ください。デプロイメント実施の際は、たとえそれが自身のチーム外でのデプロイメントであっても、その変更の影響、インシデントのトラブルシューティングと優先付け、迅速な解決方法を理解しましょう。