ShareWis開発インターン入門

こんにちは、開発メンバーの濱田です。ShareWisでは現在、開発チーム・コンテンツチーム問わずインターンを募集中です。しかし、いざ応募しようにも「ShareWisではどんな人材が求められているの?」「どんな業務環境なの?」という疑問が湧くと思います。

そこで今回はShareWisの開発環境、特にウェブサイトの開発環境について
インターンと以下のキーワードを軸に簡単に紹介していきます。

sample_code

1. Ruby on Rails
2. GitHub (Git)
3. Pivotal Tracker

Ruby on Rails

Ruby on RailsとはShareWisウェブサイトの開発に用いているフレームワークです。
Rubyというプログラミング言語をベースにウェブアプリ向けに拡張されたもので、
最近では多くのスタートアップに採用されています。

Railsに関して、既存のコードを読む力もそうなんですが、
インターンに間違いなく求められる物の一つが英語のリーディング力。
例えばRails(Ruby)には簡単に機能を拡張出来るGemという仕組みがありますが、
基本的に使い方を知るには英語。何かトラブルが起こっても
日本語のリソースでは解決方法が得られないという事がザラにあります。

GitHub(Git)

ShareWisのコードはGitHub上でホストされていますが、
このGitHub上で GitHub Flowという手法を用いて開発を進めています。

GitHub FlowとはPull Requestという仕組みを用いて以下の流れを実現するもの。
1. 開発メンバーが最新のコードを基に自分の担当機能を実装
2. Pull Requestを作って他メンバーに実装したコードをレビューしてもらう
3. 問題なさそうならコードを取り込み。何か問題があればコメントをもらう。

これにより、コードが本番環境に反映される前に
他のメンバーによりチェックされることになります。

上記1の実装の際にはGitのコマンドを使用してもらうことになりますが、
基本的に使うのはadd, commit, push, pullなど極々限られたコマンドなのでGit初心者も安心。

Pivotal Tracker

本ブログでも度々出てきていますね。
これは開発系のタスクを管理するためのツールで、各機能要件がストーリーという形で表されます。

ShareWisでは毎週月曜日にPivotal Trackerで直近2週間分のストーリーの見直しを行い、
各メンバーにストーリーが割り振られます。

ShareWisに参加してもらう際にはまず、参加インターンメンバーに
いくつかのストーリーをクリアしてもらいお互いがShareWisでやっていけそうかという確認を取ります。

ここで割り振るストーリーはテスト用に作った物では無く
ShareWisで実装が必要とされている実際のストーリーです。
つまりインターンといえど、最初から実際の開発に参加してもらうことになります。

「いきなり自分に機能の実装が出来るのか?」とかそういう不安がよぎると思いますが、
既存のコードを壊しても、GitやGitHubによってコードの復元や
周りからのレビューの仕組みがあるため安心して開発を進める事があります。

以上、極々簡単にですがShareWisの開発フローを解説いたしました。

これらの開発フローに乗って開発したい!
というインターンメンバーを募集中ですので、興味をお持ちの方はぜひお問い合わせ下さい。