EVENT REPORTイベントレポート
ヒカラボレポートとは、開催されたヒカラボにおいて、登壇者が伝えたい講演内容を記事としてまとめたものです。ご参加された方はもちろん、ヒカラボに興味があるという方も是非ご覧ください。
ヒカラボレポートとは、開催されたヒカラボにおいて、登壇者が伝えたい講演内容を記事としてまとめたものです。ご参加された方はもちろん、ヒカラボに興味があるという方も是非ご覧ください。
イベントレポートvol.2
2017/12/20(水)更新2015/10/29(木)19:30~21:30
2015年10月29日(木)に開催されたヒカ☆ラボでは、株式会社wajaの安藤大輔氏、株式会社アウローラの中武雅護氏、株式会社スタイルレシピの山内雅浩氏の3名をお招きしました。
登壇者の方々に語っていただいたのは、主に自社サービス開発における取り組みについて。自社サービス開発・運営に興味をお持ちのエンジニアを中心に、多くの方が会場に訪れました。
講演者プロフィール
最初に登壇した安藤氏は、海外ファッションアイテムを取り扱った、CtoC形式のマーケットプレイスを提供する「waja」の開発事例をレクチャーしてくださいました。
「waja」はインフラ/ネットワーク構築などの一部を除くとほぼ内製で、開発を行うエンジニアはわずか2名。人数ゆえに常に時間的な余裕がなく、コードレビューなども「やりたいときに、やりたい人が、やりたい分だけ」という具合でやってきたといいます。
約10年間、2名でやってきたため、レビューをせずとも大体のコードは把握していたとのこと
また、2005年9月に「waja」が最初に開発されてから2015年10月までは、Java 1.4をJava7に置き換えるというように、同じコードベース、同じ技術を使ってメンテナンスをされてきたと語られました。その結果、サービスが成長するにつれてコードも肥大化し、「実装が絡み合って修正がツラい」「各コードの影響範囲がわからない」などの弊害が出て、バグが続出したとのことです。
開発者2人の間で、「新しいエンジニアがほしい」という話は幾度となく上がったそうですが、「この状態で新しいエンジニアが入ってきたとして、うまく開発が回っていくのか?」と疑問を持ったことが、開発体制を見直すきっかけになったと安藤氏は述べます。
ここまで挙げた問題点に対し、安藤氏が取った行動は、開発現場へのコードレビューシステムの構築でした。具体的に採用した開発方式やツールは、「DDD(ドメイン駆動設計)」「TDD(テスト駆動開発)」「Gerrit(OSSのレビューツール)」「Jenkins(OSSの継続的インテグレーションツール)」だといいます。
「Gerrit」「Jenkins」といったツールを用いることで「UnitTest結果やレビュー結果の通知自動化」「マージ後のステージング環境デプロイ自動化」など、いくつかの工程を省力化でき、結果的に開発に集中できるようになったと語ります。
もともと、テストはやりたいと思いつつ、実行に移せなかったといいます
また、「DDD」「TDD」を採用することで、テストコードに基づきレビューが行われるなど設計・仕様に立ち返った議論がなされるようになり、開発手法が洗練されていったとのことです。その他、肥大化したシステムについては、複数のアプリケーションに分割することで、管理がしやすくなったとも語ってくださいました。
なお、TDD/DDDが導入するべきタイミングとして、サービスがある程度落ち着き、運用・保守を考えるフェーズに入ったときに向いていると、安藤氏は述べます。逆に向いていないものとして、スタートアップのような、仕様を検討しながら開発を平行して進める 場合では、テストコードを記述する時間が無駄になる可能性もあるため、難しいとも補足してくださいました。
2番目に登壇した中武氏は、アウローラが運営する女性向け求人サイト「RUN-WAY」の開発者。「元はSIエンジニアだったにも関わらず、Webサイトの作り方がわからなかった」というご自身の経歴に基づき、同じような境遇にあるエンジニアに向けて、「0からのWebサービス開発」をレクチャーしてくださいました。
参加者の中でも、1からWebサイトを作った経験がある方は少ないようでした
“0から”というテーマにふさわしく、講演は「自分のドメインに『Hello World』を表示する」という切り口からスタート。ドメインの購入やレンタルサーバの契約など、初歩的なところから丁寧に解説してくださいました。
ドメインは基本的に何でもいいとしつつも、「企業のWebサイトならば「.co.jp」を狙うべき。その際は日本国内の住所が必要である」といった具体的なアドバイスも。
サーバを選ぶ場合は、Webサイトの規模と将来性で判断すべきと中武氏は語ります。具体的には、「小規模かつアクセス増加を見込まない場合は共用サーバ」「商用サイトであるor将来的にアクセス増加の可能性がある場合は専用サーバorクラウドサーバ」と提示してくださいました。
次はWebの開発言語ごとの特徴やフレームワークの選定などの開発環境について言及し、主だった言語やフレームワークについてじっくりとご説明。「フレームワークって何?」という基本的なところも押さえており、0から始める人にも理解しやすい内容になっていました。
Webの開発言語は、Webサービス例とともに解説
言語・フレームワークも自分に合ったものを選べばOKと、中武氏は語ります。他ならぬ中武氏自身もアウローラの求人サイト「RUN-WAY」の開発では、フレームワークを選定する際に、最初にCakePHPを触って良さそうだったからという理由でCakePHPに決定したそうです。
最後には「“何で”作るかではなく、“何を”作るかが大事」と、中武氏は主張します。その理由として、「どんなWebサイトでもアクセスされないと意味がない」という旨を述べ、「どんなコンテンツを作り、開発するスピードをいかに速めるか」に気を配り、Webサイト作りにチャレンジしてほしいと、統括しました。
3人目の登壇者はスタイルレシピの山内氏。同社が提供する“日本最大のファッションレシピサービス”の「スタレピ」は、山内氏が2015年8月に入社するまで、すべて開発会社への外部委託で運営・開発されてきたといいます。同社初のエンジニアである山内氏が、「スタレピ」開発をすべて内製化するにあたり、どのような取り組みを行ってきたかを、講演では語られました。
社内の開発会社的な存在になるような開発チームを作ろうと考えた山内氏は、社内に「開発基盤」「開発環境」「開発文化」を構築することを目指したといいます。
まず、山内氏が最初に取り組んだのが人材確保。当初は社内のエンジニアが山内氏のみだったため、開発体制を整えるべく、“エンジニア3人、デザイナー1人、インターン2人”を採用したと述べました。少人数での開発のため、エンジニアの技術力が何よりも重要ということで、山内氏は採用面接時にプログラミングテストを実施し、技術力を見極めたとのことです。
エンジニアの採用はまだまだ継続していると語る山内氏
山内氏が次に行ったのは「開発環境の構築」。それまで社内にはエンジニアがいなかったため、開発を行いやすい環境ではなかったといいます。そこで「チャットをLINEからSlackに」「リポジトリをSubversionからGithubとBitbucketに」など、一般的な開発会社で用いられるようなモダンなツールを導入し、環境を整えることができたと語りました。
しかしながらツールを導入するだけでは不十分ということで、3つ目のステップとして、「開発文化の構築」について述べられました。
ここでは、実際にあったトラブル事例をご説明。「データのフォーマットが不統一だったために、バラバラのデータを1ヶ月かけて入力し直した」「検証環境を活用しないため、本番環境でバグが続出」などを説明する段では、似たような事例に遭遇した方がいらっしゃったのか、会場からは笑い声が漏れる一幕も。
こういった事例に対し、山内氏は「データ入力ツールの作成」「検証環境での十分なテスト」などの対応を行い、「開発文化」を築いていったと述べます。「開発文化」はまだまだ改善の余地があり、不完全な部分への対応が今後の課題だと山内氏は述べました。
講演の後半では「スタレピ」における検索キーワードの傾向をお話しくださいました。
今回のヒカ☆ラボが開催された10月ごろは、「ニット」「パーカー」のような秋冬モノが、やはり多く検索されるようです。また時期を問わず、色やシチュエーションとアイテム名の組み合わせや、ブランド名での検索もよく見られるとのこと。特にブランド名での検索では、プチプラブランドと呼ばれる低価格帯ブランドが目立つといいます。
アイテムの名前がわからないという場合に、ブランド名で検索するのでは?と山内氏は推測します
そのほか、検索ランキングにおける上位18個のうち、9個が男性向けレシピだったことにも山内氏は言及。「スタレピ」は女性向けを想定したサービスのため、男性からの利用も多かったことは意外だったようです。ただし、女性向けのレシピは種類が多く、個々の検索が分散していることも影響しているようで、男性ユーザーがどれほどいるかは分析中とのこと。開発を内製化したことで、こういった分析を踏まえての施策を打つスピードも上げていくことを、山内氏はお考えのようでした。
講演が終わると、次は登壇者の3名によるパネルディスカッションも実施されました。 「女性向けサービスを提供している」「女性が多く働く職場である」という共通項を皆さんお持ちであるため、掲げられるテーマも女性にちなんだものばかり。「どうすれば女性の気持ちをつかめるか?」という質問に対して、中武氏から「エンターキーを押す際は、強く叩く」という迷回答が出ると、会場から笑い声が上がりました。
そのほかにも、「業務を行う上で、つらかったことは何か?また、それをどう乗り越えたか?」「開発する上で、一番うまくいったと感じたことは何か?」など、硬派なテーマでパネリストたちから意見が交わされるシーンもあり、楽しくも実のある時間となりました。
女性の多い職場の特徴として、3名とも「華やかさがある」という点を挙げられました
講演プログラムの最後には、登壇者・参加者が一堂に会する懇親会が行われ、みなさんの交流を深まったところで、今回のヒカ☆ラボは幕を閉じました。
なお、当日に使用されたスライドは以下に掲載しておりますので、「興味があったけど参加できなかった」「当日の内容を振り返りたい」という方は、ぜひご覧ください。
株式会社スタイルレシピ 山内様 登壇資料
http://algas.github.io/hikalab-sutarepi-201509/#/