開発環境を最適化してビジネスの勝ち筋をつくるためにCircleCIを採用
Cinnamon AI sharpens their competitive edge by eliminating CI/CD maintenance
Dev/Opsに有効な開発環境を構築したい
「創造あふれる世界を、AIと共に」をミッションとし、100人を超える優秀なAIリサーチャーをアジアに擁し、ビジネスAIの領域で事業を拡大している株式会社シナモン。国内外の大手保険会社・金融機関・製造業など多様なクライアントに対して、AIを活用した企業の働き方改革や業務生産性を向上させるソリューションを中心に、文書読取・解析エンジン・音声認識エンジンなどのAIサービスを提供している。
シナモン社はベトナムに開発拠点を設けており、現在は約30名の開発者が在籍している。このベトナムの開発拠点にクラウド版のCircleCI Cloudが導入された。導入以前はJenkinsを利用していたが、Dev/Opsに有効な開発環境をつくりたいとかねてから考えていた開発マネージャーがCircleCI導入をリードした。
「デプロイはマネージドサービスに任せて、開発者には弊社の事業をより成長させる付加価値のある業務に集中してほしいと考えていました。開発者は専門職のため給与が高く、投資対効果を考えても取るに足らない業務は自動化したい。弊社ミッションである『創造あふれる世界を、AIと共に』を開発で具現化する施策として、CircleCIの導入を決めました。
またCircleCIのようなモダンなテクノロジーの導入は開発者にもメリットがあります。モダンなテクノロジーを導入することで、開発者が挑戦しがいのある、スキルアップを促す環境が構築できるからです。日本やアメリカと同様、将来的にはベトナムでも企業選びにおいて開発者が企業の開発環境を重要視するようになるでしょう。そのため先手を打って優位性を確立しておきたいという意図もありました」
一方でCircleCIを実際に受け入れる開発側では、Jenkinsを保守、デバッグすることに対して負荷を感じており、それが課題となっていた。「Jenkinsサーバーでジョブを処理するためにいくつかのリソースを配置する必要があります。ジョブが失敗している場合、その原因特定のデバッグに時間がかかってしまいます」(陳氏)。「デバッグは毎週、開発者1、2名が1日がかりで行っていてかなりの時間を取られていました。またJenkinsサーバーのマシン性能にジョブの実行時間が左右されてしまうのも問題でした」(Nhất氏)。
こうしたマネジメント側、開発側双方の意向により、開発に最適なマネージドサービスの導入を推進していくことになった。マネージドサービス導入にあたって、CircleCIを含めた複数のサービスを比較検討している。CircleCIの採択に至ったのは「前職でCircleCIを導入・活用していたので信頼性があったこと、ビジネス視点でDev/Opsとの親和性が高かったこと、コスト面でビルド単価が抑えられる優位性があったこと、この3点が決め手となりました」と理由を挙げている。またCircleCIは、Facebook、CyberAgent、DeNA、LINE、Cybozuなど多くのハイテクベンチャー企業が採用していたのも、社内でCircleCI導入を決定する際の説得材料となった。
「We can save time by scaling the number of parallel jobs, and we can save costs with CircleCI’s pay-as-you-go solution.」
Sony Huynh | DevSecOps Lead | Cinnamon
4カ月後には開発チームの大多数がCircleCIを利用するように
開発現場にCircleCIを導入する際には、着実に浸透させていくためスモールスタートしていったとのこと。「開発者の誰しもが、トレンドにある新しい技術を使いたがるというわけではありません。いきなり全員に利用を無理強いしてしまうと、定着させるのが難しくなります。最初は数名から利用し始めて小さな成功体験を積み上げていき、徐々に開発チーム全体に広げていきました」。
この間、CircleCI社は導入をサポートすべくレクチャーを実施した。「CircleCI社の方にレクチャーしていただいたのが、すごく評判良かったんですね。とても分かりやすかったようで、開発メンバーがとても喜んでいました。学習コストを下げる意味でも助かりました」。スモールスタートやレクチャーなどの施策が功を奏して、結果、導入当初は数名だった利用が4カ月後にはほぼ全員の利用までに広がった。
競合他社の動向を含めた高い視座で開発環境を常に最適化していく
開発チーム全体でCircleCIを利用するようになった現在。開発者は次のようにメリットについて語っている。「使いやすく、スケーラブルな並列処理ができる点です」(Luận氏)。「Docker Layer Caching と SSHログインによるデバッグを活用していますね。SSH機能を使用したデバッグは、Jenkinsで代替手段を見つけることができず本当に役立っています」(陳氏)。「簡単にデバッグができる点は魅力ですね。予期しないバグを減らしつつ、早期にミスを見つけられます。また優れたドキュメントが用意されているのも助かりました」(Nhất氏)。(※:ドキュメントの充実についてはCircleCI社が意識して取り組んでいる施策の一つ。日本語のドキュメントはもちろん、英語技術ブログの翻訳も用意している)。
こうしたCircleCIが開発者にもたらしたメリットは、当初の狙い通りDev/Opsに有効な開発環境を提供することへとつながった。「単純作業ではない創造的な開発に時間を割けるようになってきました。例えば弊社にとって重要な業務となるAIのチューニングなどです。これからも開発者がより価値のある業務に集中できるような環境づくりを着実に進めていくつもりですが、今回のCircleCIの導入によって環境づくりに弾みがついたと感じています」。
最後にマネージドサービス導入を検討されている方に向けて、どういった考え方で取り組むべきか、アドバイスを伺った。「そもそも開発者って単純作業を嫌がる気質がありますよね。単純作業が続くと開発者のモチベーションや生産性が下がっていくので、Dev/Opsの観点から見てそのリスクは見逃せないものとなります。ですから単純作業をテクノロジーで自動化できるのであれば、それはテクノロジーにやらせるのがいいと思うんです。さらに言うと、単純作業を自動化するテクノロジーが世の中に存在するのであれば、内製するよりもそれを買って導入するのが一番の解決策なのではないでしょうか。
『そうは言ってもなかなかその考え方が社内に理解されづらい』という方もいらっしゃるかもしれませんが、競合他社がすでにマネージドサービスを導入して効率化/生産性向上に努めているとしたらどうでしょう。弊社の事業領域では、効率化や生産性を高める取り組みの一つとして、競合他社がCircleCIのようなモダンなマネージドサービスを導入しており、いくらJenkinsで頑張っていても彼らには勝てないという危機感を持っています。自社の事情だけでなく、競合他社の動向を含めた視点で開発環境を常に最適化していくことが、ビジネスの勝ち筋をつくるためにも、とても大切な取り組みだと思います」。
株式会社シナモンについて
ビジネス人工知能(AI)ソリューションを提供するAIベンチャー。AI-OCR、音声認識、自然言語処理(NLP)と言ったAIソリューションを提供して、企業の収益性や生産性を改善しています。株式会社シナモンでは、 積極的に人材募集中です。 こちらの募集情報をご覧ください。https://cinnamon.is/recruiting/