開発者のための理想の環境を追求する新組織RECで 開発者3,000名の生産性と満足度をさらに高める
およそ3,000名の開発者がDevOpsを実践しているLINE。同社では、その開発プロセスのさらなる効率化を目指して、新組織 REC(Reliability Engineering Center)を立ち上げた。この組織では開発に使われるツール、環境の標準化、管理を担い、開発者にとって理想的な環境づくりを目指していくという。その展望についてRECの主要メンバーに聞く。
開発環境構築のプロフェッショナルが集結
LINEが2022年1月に立ち上げたREC(Reliability Engineering Center)は、「LINEとLINER(LINEのスタッフ)がより良く成長できる最高の環境(開発環境)を創出する」というビジョンを掲げる組織だ。日本と韓国で同時に設置され、日本のRECは主として国内の「開発者にとって価値ある環境とツールを提供する」ことと、「環境とツールをより価値あるものにする方法を探し出して実行する」というミッションを背負っている。
LINEには、グループ全体で約3,000人の開発者が働いており、DevOpsの手法をとりながら、ソフトウェア(サービス、アプリケーション)の開発、リリース、フィードバック、改善のサイクルを高回転で回している。RECの役割は、そうした開発者がより快適に、かつ高効率に仕事ができるツールと環境を整備・提供することにあるといえる。
その役割を担うために、RECには社内情報システム部門や各種サービスの開発部門などから、IT基盤やミドルウェア、開発ツール・開発環境の整備・管理などに携わってきたスペシャリストが集められ、以下の9チームに分かれて、それぞれの本業と兼務するかたちでRECメンバーとしての業務をこなしている(図も併せて参照)。
- Enterprise Devチーム:全社の開発者が利用するツールの開発・運用を担当
- Dev Supportチーム:デプロイツールやロードテストツール、監視ツールなどの開発・運用を担当
- LIAM Devチーム:社内システムから利用できる新しい統合認証認可基盤の開発・運用を担当
- LINE Auditチーム:社内システムの監査ログの保管と閲覧を目的としたログ基盤の開発を担当
- Growth Devチーム:サービスの補助開発を担当
- REC業務支援チーム:予算や契約の支援などの事務手続きを担当
- Delivery Infrastructureチーム:サーバサイドアプリケーションをデプロイするための内製ツールを開発・運用する組織
- Observability Infrastructureチーム:サーバサイドアプリケーションを監視するための内製ツールを開発・運用する組織
- SETチーム:テスト自動化のための内製ツールの開発・運用や特定のプロダクトのテスト自動化戦略の立案・実行を行う組織
RECは多種多様な開発チームの技術サポートや相談役を担い、開発者にとって理想の環境を提供することを目指す
RECメンバーの一人である吉野一也氏(LINE Enterprise Dev室 室長)は、RECの成り立ちについて次のような説明を加える。
「当社では従来、社内のさまざまな組織に、開発ツールやIT基盤の整備や管理を担当しているスタッフが点在していました。RECでは、そのような同じミッションを持つスタッフが集まり、互いのノウハウを共有しながら、多種多様な開発チームの技術サポートや相談役を一手に担い、理想的なDevOps環境の構築を目指していきます」
開発環境の集中管理で
余分な工数の削減や規定遵守を支援
RECには、もう一つ重要な役割がある。それは、開発に使うツールや環境の標準化を促進することだ。
LINEの開発者は日々の作業を進める中で、上長等に相談して適切な承認を得られれば開発に使うツールを個人の裁量で導入することもできる。
こうした個別最適化は、開発者の生産性を高める効果が期待できる一方で、ツールの不統一性を招き、それが開発者の業務効率に負の影響を与えかねないという問題を内在させている。実際、LINEでも、ツールの不統一性がいくつかの問題を生んでいたと、RECのDev Supportチームのマネージャーである髙木将樹氏は指摘する。
「当社では開発ツール選択の自由度を確保してきた結果として、センターごと、あるいはチームごとに使用するツールが異なるという状況が生まれ、ツールメンテナンスの手間が全体として大きくなったり、ツール活用のノウハウが各所に分散して共有化が進んでいなかったり、新たな優れたツールの統一的な活用がなかなか進まないなどの問題を抱えてきました。そうした問題の解決に向けて、ツールの標準化を推し進めるのも、RECの大切な役割といえます」
この点に関して、RECのEnterprise Devチームのマネージャーである岩月靖典氏は次のような説明を加える。
「例えば、DevOpsのCI(継続的インテグレーション)/CD(継続的デリバリ)の環境を築くにしても、これまでは、チームごとに異なるツールを使い、個別にパイプラインを構築して管理していました。その構築・管理をRECが一括して担うようにすれば、開発チームの工数は間違いなく減るはずです」
もっとも、開発ツール/開発環境の標準化や管理には、開発者に不自由を感じさせてしまうリスクもある。その懸念に対して髙木氏はこう答える。
「当社には、セキュリティの確保などの開発ガバナンスを目的にした開発のレギュレーションがあり、開発に利用するツールはそれらに準拠する必要があります。ゆえに、開発者はこれまで、自分たちの使いたいツールがレギュレーションに適合できるかどうかを自ら点検する必要がありました。レギュレーションに準拠したツールをRECが整備し、それを使うことでその手間を削減できるメリットは大きいと考えます。また、開発者が使いたい新たなツールがレギュレーションに適合できるかどうかをRECが点検し、開発者をサポートすることも視野に入れています」
開発者が迷うことなく業務に打ち込める
環境の提供を目指す
RECは設立から間もない組織であり、活動内容が完全に固まっているわけではない。それでも、設立の効果はすでに現れ始めているようだ。具体的には「開発者が困ったときの相談窓口」がRECに一本化されたことで、開発者からの相談や新しいツールの情報、さらには開発業務効率化のアイデアがRECに集り始め、組織・チーム横断での情報共有やコラボレーションが活性化しつつあるという。
「これまで開発の各チームがバラバラに開発の環境を整えてきたことから、優れた新ツールの情報は“口コミ”ベースで社内に広がっていくことが多くありました。それがRECの設立により、新ツールの情報提供についての仕組みも検討を始めています。それに対する開発者たちの反応はとても良好です」(髙木氏)
こうした効果をより大きくすべく、RECでは「どこに何を問い合わせれば良いか」「困りごとの解消のために、どのような資料を参照すれば良いか」といった情報を整理し、組織横断で活用できるポータル的な仕組みをつくる準備を進めている。
このようにして開発者の悩みを取り除き、迷いなく開発に打ち込める環境を構築していくことはRECの第一目標といえるが、その先には、開発者の仕事に対するモチベーションを高めるという狙いもある。
「ツールや開発環境のセキュリティを担保したり、整備やメンテナンスを行ったりするのは開発者の本来業務ではありません。その業務をRECが担うことで、LINEは開発者にとってより働きやすい場所になり、それが結果として開発者のモチベーションアップにつながっていくはずです。その実現に向けて、これからも体制づくりと活動の充実に力を注いでいくつもりです」(吉野氏)
LINEの開発組織や開発者について、インタビューやチーム紹介などの形で発信しています。是非こちらのサイトもご覧ください。
LINE Engineering
https://engineering.linecorp.com/ja/
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- IoTとクラウドを融合するSORACOM、グローバルにスケールする製品の作り方を紹介
- DevOps完全ガイド 2022
- Open Infrastructure Summit上海、LINEに聞いた大規模なOpenStackクラスター運用のポイントとは?
- DevOpsを始めるときに「何をやるべきか」を理解しよう
- レッドハットがコンテナ新製品や戦略を説明、UberエンジニアがPostgreSQLにダメ出し? ほか
- DevOpsはここから始めよう
- デブサミで垣間見たGoogleのDevOpsの凄さは人的要素の徹底排除にある
- DevOps、CI/CDパイプラインでもコンテナは大活躍!
- JFrog Japan主催による、DevOpsの最新事情がわかる開発者向けイベント「DevOps Kaigi ’21」を開催
- アプリケーションライフサイクルの最適化がモバイルアプリの企業価値を高める