GitHub

ギットハブ

GitHub - ユーザー事例 - 株式会社トラストバンク様

国内最大ふるさと納税サイトの開発生産性を支える
GitHub Enterprise
コードレビュー依頼時の工数が大幅に削減され
迅速な開発と品質向上を同時に実現

株式会社トラストバンク 様 株式会社トラストバンク 様

株式会社トラストバンク

2012年4月設立。「ICTで地域とシニアを元気にする」ことをミッションに、「地域が自立し、持続可能な状態にする」というビジョンを掲げているトラストバンク。新たな地域経済循環の実現を目指し、日本最大のふるさと納税総合サイト「ふるさとチョイス」をはじめ、地域通貨事業や電力事業、自治体業務支援事業などの地域支援事業を積極的に展開。「ふるさとチョイス」の流通金額は、国内6位の規模を誇る
※トラストバンク調べ

Before
  • コードレビュー依頼の手続きが煩雑で開発生産性を阻害
  • 従来のツールではレビュー依頼に一人当たり、月間約10時間の工数が発生
  • レビュー依頼やマージ作業が手作業なため手順ミスの可能性も
矢印:横
矢印:縦
After
  • 開発者同士のコラボレーションが向上し迅速な開発と品質向上が実現
  • Pull Requestでレビュー依頼が可能になり作業コストが大幅削減
  • チェックアウト→テスト→マージが安全に実施されるため人的ミスを抑止

レビューを依頼する手続きが煩雑で既存のコードレビューツールに不満

株式会社トラストバンク(以下、トラストバンク)は、「ICTを通じて地域とシニアを元気にする」というミッションのもと、自治体への資金調達、地域の産業振興、観光促進、社会問題解決などに取り組むベンチャー企業だ。同社は、地域間で「ヒト」「モノ」「おカネ」「情報」の4つの資源を循環させることで地域に活力を生み出すために、起業後間もない2012年6月に、日本初のふるさと納税総合サイト「ふるさとチョイス」を立ち上げた。

実際に現地に足を運び、自治体職員や地域の事業者・生産者と協力し、地元の隠れた魅力を発掘していくことで、ふるさとチョイスは2019年8月現在、申込可能自治体数1500以上、返礼品掲載数20万点以上、寄附金の使い道も1万2000 件以上から選べるなど、国内No.1のサイトに成長した。

「ふるさと納税は2008年に始まったもののあまり知られておらず、申込方法も紙の申込書で申請するなど使い勝手がよくありませんでした。これをもっと広めるべきだと考えた当社は、ポータルサイトを開設し、誰でも簡単にふるさと納税を始められるようにしました。それが自治体の参加も促し、現在の人気につながっていると思います」と語るのは、トラストバンク ふるさとチョイス事業本部 開発部 部長 清河 宗一朗氏だ。

同社では、自治体側で返礼品の発送や開拓を担ってもらう一方で、寄附者とのマッチングを高めるためのサービス開発に専念し、それを支えるシステム構築を迅速化したことで、申込可能自治体を広く集めることができた。しかし、そこで課題となっていたのがサービス基盤を開発する現場の作業効率の改善だった。

そこで同社は、企業向けソフトウェア開発プラットフォーム「GitHub Enterprise」を全社導入し、開発効率の抜本的な改善に乗り出した。

「以前は開発環境に、オープンソースの集中型バージョン管理システムと、Webベースのコードレビューツールを併用し、使い分けていたのですが、事業の拡大とともに社員が増えていくにつれ、そのコードレビューツールが使いづらいという不満が増え始めました。話を聞いてみると、GitHubを使いたいという社員が多かったのです」と打ち明けるのは、トラストバンク システム部 部長 高橋 圭一郎氏だ。

当時使っていたコードレビューツールはソースコードのレビューを依頼する手続きが煩雑で、手作業でコミットポイントを指定して差分のdiffを作り、それを整形してコードレビューを依頼していたため、作業に手間がかかり、それが開発生産性を阻害する要因となっていたという。

レビュー依頼で月10時間かけた工数がGitHub EnterpriseのPull Requestでほぼゼロに

そんな社内の状況に課題を感じた清河氏は、既存の集中型バージョン管理システムとコードレビューツールに代わり、セキュリティ面で堅牢なGitHub Enterpriseの採用を経営層に提案した。

清河氏が示したメリットは大きく2点あった。1つはレビュー依頼時の工数削減。試算したところ、従来のコードレビューツールではレビュー依頼の発動まで、およそ1件あたり5~10分ほどかかり、1人が1日3回レビュー依頼を実施すると、1ヶ月間に10時間程度の工数が発生していたことになる。その作業をGitHub EnterpriseならPull Requestのボタンひとつで完了するため、時間も手間もほぼゼロになる可能性があった。

もう1つは開発環境のモダナイゼーション。GitHubはソフトウェア開発プラットフォームとしてはすでに業界でデファクトスタンダードと認識されているため、新しく入社する社員のモチベーションも維持できるほか、多くのエンジニアは使った経験を持っているため、新たに教育コストがかからないというメリットもあった。

2016年10月にこれらの試算効果が認められ、正式に導入が決定。それを機に初めてAWSを活用し、そこにGitHub Enterpriseを配置。2017年2月に運用が開始された。

「現在は、ふるさとチョイスをはじめとする当社サービスの全てでGitHub Enterpriseによるソースコード管理がおこなわれています。2018年3月にふるさとチョイスは大幅に刷新し、サイトをリニューアルしましたが、前年はほぼそのプロジェクトにかかりきりとなり、そこでもGitHub Enterpriseがフル活用されました」と清河氏は振り返る。

GitHub Enterpriseの導入による効果は主に次の5つが挙げられるという。第1に「コスト削減」。導入前の試算でも明らかとなったが、従来は1人が1ヶ月に平均10時間ほどレビュー依頼の作業のために貴重な時間を使っていたが、GitHub EnterpriseではPull Request の操作だけでレビュー依頼が可能になるので作業工数と時間がほぼゼロになり、その分のコストが全て削減された形となっている。

第2に「コラボレーション開発の実現」。GitHub Enterpriseの導入によって、細かい単位でPull Requestを上げられるようになったことで、そのリクエストが問題なければすぐに本番にマージしたり、問題がある場合は次のリリースに回したりできるようになった。それにより、開発者同士のコミュニケーションとコラボレーションの質が向上。迅速な開発と品質向上が同時に実現したという。

GitHub Enterpriseを中心に皆がコードをレビューし開発者同士のコミュニケーションが活発に

第3が「CI/CD(継続的インテグレーション/継続的デリバリー)の導入」。トラストバンクでは、GitHub Enterpriseの採用を機にCI/CD ツールのJenkinsも導入・連携させ、コードがGitHub Enterpriseにプッシュされるタイミングでユニットテストを自動実行する手法を取り入れた。approveされていないものやテストしていないものはマージできない上、開発者本人がプッシュした際にエラー有無を把握し修正できるようになったため、品質が担保され、リリーススピードも向上したという。

第4は「人的ミスの抑止」。以前はレビュー依頼やマージなどの作業が全て手作業だったため、手順ミスが発生する可能性もあったが、GitHub Enterpriseはフォークした自分のリポジトリからpull requestしたい元のリポジトリページのブランチを確認して確定するだけで完了する。プッシュされると自動でユニットテストが走り、問題がなければ変更されたブランチをマージすることができる状態になるので、ミスが起きにくくなったという。

第5は「開発者以外での活用」。同社では開発者以外のデザイナーもGitHub Enterpriseを利用し、画像の差分確認などに活用している。コードを書かないデザイナーでも使いやすいと評価は高いという。

今後もトラストバンクは、社員数の増加に応じてGitHub Enterpriseのライセンスを増やしていく計画だ。また、ユーザ会でも紹介された新機能にも注目。例えばGitHubと連携する静的コード解析ツールや、2段階認証などを活用していくことも視野に入れているという。

「GitHub Enterpriseの導入を提案したのは私ですが、さまざまな効果が得られており、心から導入してよかったと感じています。GitHub Enterpriseの機能に不満はなく、トラブルもないので、マクニカのサポートサービスはあまり使っていませんが、定期的に開催されるユーザ会や勉強会では毎回新しい発見があり非常に有意義だと感じています。今後も積極的に参加したいと考えています」と清河氏は話す。

また高橋氏も、「GitHub Enterpriseを中心に皆がソースコードをレビューし合い、お互いにスキルを高め合うなど、開発者同士のコミュニケーションが活発になり、Pull Requestなどの利便性によってアジャイル開発の恩恵が受けられていると感じます。GitHub Enterpriseは操作性が優れているため未経験者にとっても導入のハードルが低く、当社にとってこれからも不可欠な開発基盤でありつづけるでしょう」と語る。

お問い合わせ・資料請求

株式会社マクニカ  GitHub 担当

月~金 8:45~17:30