ここまで自動化が浸透している背景には、「新しもの好きで向上心が強い」という“ニフティのエンジニア”ならではの資質があることも見逃せない。
「エンジニア自ら、積極的に新しいツールを見つけてきて、業務効率化のために使えるかどうかを日常的に試行錯誤しています。コードを書くだけではなく、運用の効率化まで考えて自発的に行動するエンジニアの姿勢が、ニフティのDevOpsを支えていると思いますね」(竹内氏)
開発部門と運用部門のコミュニケーションも活発だという。高野氏は、「開発・運用部門の合同企画会議を毎週行っています。ユーザーからの要望が多いサービスや機能をピックアップし、開発・運用スタッフが意見を出し合って、新しく開発するサービスや機能を決めています」と話す。
こうした文化の背景には、「新卒社員の場合、入社1年目の研修期間で、開発部門や運用部門、さらには営業部門など、全ての業務領域を一通り経験してもらう」という制度の効用もある。江草氏は、「研修の際に開発部門と運用部門の両方の仕事を体験するので、両部門が密接に関わっていることを誰もが実感できるわけです。エンジニア経験者が運用担当者になるケースも多く、開発と運用の壁はほとんどありません」と、新人教育の段階からDevOpsが根付く土壌が醸成されていることを指摘する。
一方、ニフティに中途入社した高野氏は、「開発・運用部門が、それぞれの役割にとらわれることなく、共にプロジェクトに取り組んでいる姿に最初は驚きました」と振り返る。
「ニフティの開発体制は、他とはちょっと違うなと感じました。開発・運用部門がそれぞれお互いの動きを把握しながら、ごく当たり前のようにシームレスに連携しているんです。両部門の間にはスキル・知識の壁がある例が一般的かと思うのですが、ニフティの場合、フルスタックエンジニアであることが、ある意味、当たり前なんですね」
この他、開発プロセスに関する勉強会も定期的に行っているが、言語や技術の知識だけではなく、ビジネスの知識もテーマとして頻繁に取り上げているそうだ。最後に一言ずつ、それぞれが考える「DevOps」を語ってもらった。
「DevOpsという手法が重要なのではなく、開発と運用の現場がいかにビジネスに貢献していくかが重要だと思います。そのためには、全ての開発案件にDevOpsを適用しようと考えるとうまくいかないはずです。そうはいっても、ウォーターフォールとDevOpsのハイブリッドも決して簡単なことではありません。運用部門と開発部門が本音の議論を交わして、苦労しながら少しずつ連携する形、ビジネスに寄与できる形を見つけていくことが大切だと思います」(江草氏)
「クラウドが普及し、インフラがプログラマブルになった時点で、開発と運用を明確に切り分ける必要はなくなったと感じています。DevOpsという言葉や形にとらわれずに、トライアンドエラーを繰り返しながら、自社のビジネスに最も適した仕組みを模索していくことが最も大切だと思います」(高野氏)
「エンジニアがいきなり運用までカバーしようとすると、負担が大きくなりすぎます。そこで『エンジニアをサポートする手段』と考えて自動化ツールを活用するのも一つの手です。弊社でもニフティクラウドを利用してインフラ環境の構築を自動化する『CloudAutomation(β)』を提供していますが、こうした自動化ツールをうまく取り入れることも両部門の連携への近道だと思います」(竹内氏)
共通のビジネスゴールを目指して、開発・運用が共に“サービス”を開発し、共に品質を担保する――そうした創業時代から続く文化こそがニフティのDevOpsの姿なのだろう。ウォーターフォールか、アジャイルを核にしたDevOpsか、といった二元論に陥りがちな傾向もある中で、ニフティの取り組みはDevOpsの本質を教えてくれる好事例といえるのではないだろうか。
今やクラウド、ビッグデータに次ぐキーワードになったDevOps。だが前者2つが通過したようにDevOpsも言葉だけが先行している段階にあり、その意義や価値に対する理解はまだ浸透しているとはいえない。ではなぜ今、DevOpsが必要なのか? DevOpsは企業や開発・運用現場に何をもたらすものなのか?――本特集では国内DevOpsトレンドのキーマンにあらゆる角度からインタビュー。DevOpsの基礎から、企業や情シスへのインパクト、実践の課題と今後の可能性までを見渡し、その真のカタチを明らかにする。
Copyright © ITmedia, Inc. All Rights Reserved.