+

HotjarがGitLabで50%高速なデプロイを実現した方法

  • Kubernetesインテグレーション
  • エンドツーエンドの可視性
  • デプロイの高速化
業界テクノロジー
従業員数従業員100名
地域リモート
ソリューションGitLab Silver

GitLab Ultimateがチームにもたらすメリットについてご覧ください

無料トライアルを開始

成長中のオールリモート企業であるHotjarは、Jenkinsに代わる強化されたCI/CDツールを探していました。

Hotjarは、Kubernetesインテグレーション、CI/CD、ソースコード管理のためにGitLabを導入し、既存のツールを置き換えました。

GitLabにより、すべての開発者がCI/CDパイプラインを扱いやすくなり、新しいサービスのブートストラップのプロセスがより透明でアプローチしやすくなりました。DevOps/SREチームがボトルネックになることもなくなりました。

- Vasco Pinho, SREチームリード, Hotjar
行動分析ソフトウェアのリーディングカンパニー

Hotjarは、従来のウェブ分析を超えて、ユーザーがウェブサイト上で実際に何をしているかを理解しやすくする行動分析ソフトウェアです。定量的および定性的な行動分析ツールを備えたHotjarは、カスタマーエクスペリエンス、パフォーマンス、コンバージョン率を改善する方法の概要を提供しています。

同社は2014年に設立され、20か国以上に100人以上のメンバーを擁する完全リモート企業です。世界中で50万以上のサイトがHotjarを使用しており、顧客の大半は米国とヨーロッパに集中しています。口コミがマーケティング戦略の中核となり、顧客基盤の大部分を牽引してきました。

リモートワーカーに適したツールを求めて

Hotjarは完全リモートであるため、コミュニケーションが最大の課題の一つです。会社が成長するにつれて、コミュニケーションの重要性はますます高まっています。「100人と18人のコミュニケーションは全く異なります。今ははるかに多くの情報があるため、チームが必要なときに情報を利用できるようにしつつ、関係のない情報で全員を圧倒しないようにするバランスが重要です」と、HotjarのPeople OpsスペシャリストであるSara Bent氏は述べています。

Hotjarは、増加する開発者の作業構造と、煩雑なレガシーシステムに課題を抱えていました。すべての開発者がレガシーツールを使用して同じコードベースで作業する必要があり、生産性が低下していました。「私たちが解決しようとしていた問題は、この状態からより多様なセットアップへの移行方法でした。いくつかのインフラストラクチャのレガシー部分がありますが、新しいマイクロサービスのデプロイもあり、生産性を落とさずに社内の開発者数を増やし続けられるよう、すべての新しいものをうまく統合する方法を模索していました」と、HotjarのSREチームリードであるVasco Pinho氏は説明しています。

開発者はソースコードのホスティングにBitBucketを、CI/CDにJenkinsを使用していました。一部のレガシーアプリケーションの制約により、パイプラインをサポートするために大量のJenkins固有のコードを開発・保守する必要がありました。これは多くのリソースを消費し、時間の効果的な使い方ではありませんでした。すべてのマイクロサービスと一部のビルドパイプラインのプラットフォームとしてKubernetesを使用していました。

Hotjarは、Kubernetesインテグレーションを提供し、Jenkins CI/CDの代替となるツールを探していました。CI/CDにBitBucketやConcourseを試しましたが、どちらも必要なソリューションを提供できませんでした。「ライフサイクル全体を提供するKubernetesネイティブ製品という点では、実際にはあまり多くの競合を見つけられませんでした。いくつか検討したものや、セルフホストが必要なものもありました。Jenkins XはKubernetesネイティブですが、実際には非常に未成熟で、まだ多くのバグがありました」とPinho氏は述べています。

ネイティブでより多くを得る

HotjarはGitLabをセットアップしてローカルで実行し、トライアルを通じて適切なツールを見つけたことを確認しました。「Jenkinsの代替を探すことから始まりましたが、GitLabのパイプラインを試してみると、開発体験を単一のツールに完全に統合し、すべてのCI/CD要件を満たす方法がわかり、コードもGitLabに移行することを検討し始めました」とPinho氏は述べています。「開発者たちはGitLabのインターフェースと機能がBitbucketより優れていると考えました。特にコードレビューのフローが優れており、プラットフォーム全体を採用することにしました。」

Jenkinsでは、チームは現在GitLabでネイティブに得られる多くの作業を行うために大量のカスタムコードを作成していました。コード管理側では、Bitbucketのクラウドバージョンを使用していました。現在は、すべての開発作業とCI/CD実行のホスティングにGitLab.comを使用しています。「これは素晴らしく、他の多くのプロバイダーが提供していないものです。実際のウェブサイトのホスティングを心配する必要がなく、独自のビルドインフラストラクチャを実行する柔軟性を維持できます」とPinho氏は述べています。

Hotjarが維持したい柔軟性の一部は、リモートで働き、それをうまく行う能力です。「創業者たちは最初からリモートで働いており、リモートワークに関するすべてのプロセスを確立する必要がありました。これにより、リモートでのコミュニケーションとコラボレーションがうまく機能するための非常に強固な基盤が築かれました。私たちはこれに意識的に取り組んでいます」とBent氏は述べています。GitLabのワークフロープロセスのエンドツーエンドの可視性により、開発者は常に全員が何に取り組んでいるかを確認できます。情報へのアクセスは、Hotjarのリモートコミュニケーションの維持に役立っています。

デプロイの増加、AWS EKSの改善、開発ワークフローの向上

すべてのエンジニアリングチームと一部のカスタマーサポートチームメンバーがGitLabを使用しています。ユーザーはMRプロセスに満足しており、全体的なユーザーエクスペリエンスはBitBucketから大幅に改善されています。レビュー環境は、視覚的なレビューが必要な作業にとって画期的な機能です。レビュー環境により、パイプラインの早い段階でエラーを検出でき、以前のようにステージ環境に影響を与えることがなくなりました。

GitLabはKubernetesとネイティブに統合されており、開発チームはツールが常にメンテナンスなしで自動的に動作することを信頼できるため、安心感を得ています。チームは以前、Jenkinsを使用する際に「物事をつなぎ合わせる」ことに多くの時間を費やしていたとPinho氏は述べています。開発者は現在、バグや修正ではなく、本番環境に集中できるようになりました。ビルドCI時間は、Jenkinsでの以前の実装から30%短縮されました。ノードあたりのビルド密度が高くなり、スケールアップ操作が少なくなったため、ビルドCIの変動性も大幅に減少しました。

Hotjarは、ソースコード管理と独自のワークフローをホストする必要があるソリューションを避けたいと考えていました。現在、チームはGitリポジトリがダウンしている理由を解明しようとするのではなく、優先タスクと主要なビジネスに集中できます。GitLabにより、Hotjarは計画プロセスにあるアップデートを確認できます。「これは間違いなく印象的でした。トライアル中に2つのリリースがあったと思います。トライアル中に見つけた問題が、トライアル中に出たリリースで修正されました」とPinho氏は述べています。

GitLabプロジェクトはAWS EKSクラスターに接続し、テストはKubernetes Operatorを使用してクラスター内で実行され、カバレッジ結果を報告し、アーティファクトがAWS ECR/S3にアップロードされます。レビュー中にEKSクラスター内でレビュー環境が起動します。マージ後、アーティファクトは再びEKSの本番環境にデプロイされます。「古いシステムでは約8分かかっていたデプロイ自体が、今では約4分に短縮されました。つまり、デプロイ時間が半分になりました。インシデント解決スキーム全体の中では非常に小さく聞こえるかもしれませんが、全体的に影響を与えています」とPinho氏は述べています。開発者は、ボトルネックを生み出すインザループの共有ステージング環境の代わりに、スタンドアロンのレビュー環境を活用することで、時間と労力を節約しています。

Hotjarのリモート文化は引き続き繁栄しています。「ほとんどの人が同時にオンラインであり、MRは数時間または数分以内にレビューされることが期待でき、問題のデバッグやプロジェクトの議論などのためにビデオ通話に一緒に参加できます。完全リモートオフィスの通常の問題である、質問への回答が翌朝になるということは確実にありません」とPinho氏は述べています。

GitLabはHotjarの開発コラボレーション能力を向上させるだけでなく、透明性にも影響を与えています。「私たちはしばしば類似点を見つけ、『彼らもそれをやっていて、両社にとってうまくいっている、素晴らしい』と安心します」とBent氏は述べています。

Hotjarは最近、GitLabのハンドブックが公開されているのを見て、自社のハンドブックを公開しました。「他の企業が何をしているか、人々がどのように言葉を選び、それが会社をどのように反映しているかを見ることができるのは素晴らしいことです。以前は公開チームマニュアルがありませんでしたが、今はあります」とBent氏は付け加えました。GitLabの統合プラットフォームは、Hotjarを最先端のソフトウェアで最新の状態に保ち、オールリモート文化の近代性を刺激しています。

ケーススタディに記載されている情報や関係者はすべて、発表時点のものです。