体験を伝える―『ガジェット通信』の考え方

面白いものを探しにいこう 本物を体験し体感しよう 会いたい人に会いに行こう 見たことのないものを見に行こう そしてそれをやわらかくみんなに伝えよう [→ガジェ通についてもっと詳しく] [→ガジェット通信フロアについて]

セプテーニ・オリジナルのCTOが語る!開発言語にScalaを採用した理由とは

TechAcademyでは、Scalaで開発を推進するセプテーニ・オリジナルと共同で、インターネット企業、Sl企業での勤務経験がある方向けのScala奨学生コースを特別企画として開催します。

短期間でScalaの技術を磨きたい、正しいエンジニアリングスキルを身につけたいと思っている方はぜひエントリーください。

 

今回は、全社でScalaの導入を進める株式会社セプテーニ・オリジナルとコミックスマート株式会社のCTOとして働かれている杉谷保幸さんにお話を伺いました。

いくつかの事業を立ち上げる上でScalaという言語を採用した背景、社内の教育制度や文化について語ってもらっています。

Scalaに興味を持っている方やこれからScalaを始めようと考えている方は、必見のインタビューでしょう。

 

前職の経験を生かしPHPからScalaを全社導入

――最初に、自己紹介をお願いします。

株式会社セプテーニ・オリジナルとコミックスマート株式会社のCTOを務めております杉谷と申します。どちらもセプテーニグループの会社で、Webサービスの企画、開発や、マンガ事業を手掛けており、私はそれぞれの会社の開発責任者という立場です。

この会社に入ったときはエクゼクティブエンジニアという立場だったのですが、最初のミッションはコミックスマートのマンガ配信サービス「GANMA!」を成功させることでした。

2つ目は、セプテーニ・オリジナルの開発文化を作るというミッションを任され、やること自体は今も昔も変わっていません。

 

――今、何人ぐらいのエンジニアの方が働いていらっしゃいますか?

日本とベトナムで、それぞれ60人ぐらいです。

 

――言語は何を使って開発されているのでしょうか?

ほぼ100%Scalaを使っています。ドメイン駆動設計(DDD)という手法も取り入れており、プロジェクトの運営スタイルとしては、スクラムという開発手法を採用しています。

僕が入社する前は、PHPで作っていましたが、コードの汚さや保守性の甘さが課題として残っていました。そこでまず初めに、開発体制の整備を行うことにしました。

 

具体的には、前職で当時流行っていたScalaとドメイン駆動設計を両方持ち込みました。

当然テストを書くという文化もまだなかったので導入しました。また、コードレビューの文化も育っていなかったので、Confluence、JIRA、Stash(現在はBitbucket)を導入し、コードレビューやドキュメントの集め方、タスクの進捗などを整えられるようにした上で、スクラムという手法を普及させていきました。

 

Scalaを使う良さとは

――新しくScalaのエンジニアも採用していたのですか?

当時は、そもそもScalaエンジニア自体がほとんどいなかったので、既存のエンジニアを教育してプロジェクトを進めました。

 

――Scalaを導入するタイミングに苦労などは無かったですか?

最初のミッションであった「GANMA!」の開発に関しては、問題は特にありませんでした。サーバもScalaでできていますし、AndroidアプリもScalaでできているくらいです。

新しいプロダクトを作る場合は、Scalaで開発できるように、まず「GANMA!」事業で基礎を学んだ後、Scalaで新プロダクトを作るところから始めていき、そこから株分けしていき導入を進めていきました。

 

――教育は、どのような形でされているのですか?

まずは、Scalaに慣れるためにTDD研修で使われるような身近な課題を元にテストを書きつつ、Scalaを書き始めました。

その次はPlay Frameworkを使って掲示板を作ってみる、そして、ドメイン駆動設計の本を読んだあとで、それをドメイン駆動設計で書き直してみるというのを1人あたりレビュアー5人で育てるという体制を敷いています。

1 2 3次のページ
TechAcademyマガジンの記事一覧をみる
  • 誤字を発見した方はこちらからご連絡ください。
  • ガジェット通信編集部への情報提供はこちらから
  • 記事内の筆者見解は明示のない限りガジェット通信を代表するものではありません。