Heroku Meetup

こんにちは。命と書いてMikotoです。
Heroku Meetup #13 新年会 にて、登壇してきました。

軽い気持ちで登壇することを決めてしまいましたが、一瞬で参加希望者が100人を越えるという人気イベントで、内心びくびくして当日を迎えました。
いやー Herokuの注目度の高さが伺えますね。

ジョブズの人がナゼにHeroku Meetup?

実は、リクルートジョブズはリクルートグループ内でも先駆けて、Herokuを導入しました。
今年度からIT化を一気に押し進めており、その一環として社内の開発環境の改善に勤めています。
Herokuは、小さくプロジェクトを立ち上げるために有効であると判断し、導入に踏み切りました。

大企業でも、小さく始めるためにHerokuを導入してみた

当日の発表では、「どういう状況であれば、Herokuを導入する価値があるのか」という観点で、ジョブズがHerokuを導入した理由を紹介させて頂きました。

s_20150113_194036.jpg

背景

ベンチャー企業などの比較的小規模の会社で導入するメリットは、比較的理解されやすいと思いますが、大企業になると導入メリットが薄れてしまうというのが一時期前までのHerokuの評価だったように思われます。
これはHerokuの中の人から伺ったお話ですが、大企業であってもスタートアップのように新たな取り組みに対してアクティブな会社が、社内に開発チームを新設する際に、Herokuの導入を検討するという動きがあるそうです。
リクルートジョブズでも、日々、新しいアプリやサービスを提案しており、まずは小さく始めるために、内製化が鍵になると考えHerokuを導入しました。

Heroku導入のメリット

Herokuを導入する上でのメリットは、下記の3つの観点から、開発及び運用が「小さくなる」という一言に尽きます。

1. 環境調達

AWSでも同じことが主張されるのですが、こちらは主に物理的にサーバーを調達しなくて良いということと、スケールの観点から説明されます。Herokuではこれらに加えて、運用する上で必要なアプリケーションレイヤーのソフトウェアまで含めて調達できることが強みになります。
(最近はAWS Lambdaも登場したので、そちらも気になりますね。)

2. 開発フロー

Gitでソースをコミットするだけでデプロイが完了するというのは、驚異的なメリットです。ステージング環境を用意することも、同一のテスト環境を用意することも、基本的にはコマンド一発で完了です。
もちろん、プロダクトが大きくなったり、安定運用に入れば、テスト自動化などなど考えることが増えますが、初期の開発段階としては十分ではないでしょうか?

3. 必要スキル

アプリケーションを提供するためには、アプリケーション開発を行うソフトウェアエンジニアを集めるだけでは足りません。
アプリケーションを載せる実行環境を用意しなければならず、その調達・運用を行うインフラエンジニアが必要になります。
Herokuは運用コストを劇的に低減させます。アプリケーション自体のコードをHerokuにアップロードするだけで動き始めるので、ソフトウェアエンジニアに少しインフラをかじった程度の知識があれば、少なくともサービスを動かし、プロジェクトを動かし始めることができます。
まず、社内で小さな開発チームを新たに立ち上げたいと考えているのであれば、大企業であれ導入のメリットがあります。

懇親会にて

発表に対するコメントを懇親会で沢山頂きました。
特に、弊社でHerokuを利用した開発において、学生アルバイトの方にプログラミングの大部分をいきなりお願いできたという事例に大変興味を持って頂けました。
これまでの開発では、社内のシステムに関する知識が必要である場合が多く、事前インプットに時間がかかることが多々ありましたが、すぐにプロジェクトをアサインできることが強みになりました。

ちなみに

このテックブログもHerokuで動いてます!