はじめに
本投稿はSchooの年末特別企画「Schoo Advent Calendar 2016」への投稿記事になります。
7日目の今回は、ちょっと足を休めてSchooの開発メンバーがWebサービスの開発に使っているツールをご紹介したいと思います。
それでは、関連しそうなSchooの授業リンクと共に早速どぞー
1. MacBook Pro
多くの会社さんと同じかもしれませんが、開発メンバーは全員MacBook Pro
を使用しています。
特に指定されているわけではありませんが、今のところMacBook Pro + 外部ディスプレイ
という構成で全員作業しています。
もちろん開発メンバーにはデザイナーさんも含まれています。
なので僕はゴミ箱型のMac Proの実物をまだ見たことがありません、、、意外と小さいらしいですね。。。?
他の部署/ユニットではWindowsのラップトップ使いがちらほら居ますが動画編集マシンなどを除いては、デスクトップを常用している人は居ないと思います。
なんというか、そういう時代なんですねー
2. Slack
こちらもほとんどの会社さんと同じかもしれませんね。
Schooでは全社員、Slackでコミュニケーションを取っています。
業務連絡、勤怠連絡をはじめとした、全てです。
そういえば僕はSchooに入ってから、会社メールアカウントで送信をしたことがないかもしれません、、、衝撃の事実です!
ちなみに、開発の島に電話/内線は置かれていませんので静かですよ。
そして、開発メンバーはさらにChatOpsの入力インターフェイスとしてもSlackを利用しています。
3. すくすけ + GitHub + CircleCI
うん、知らないワードが出てきましたね。
scsk(すくすけ)というのはSchooで使われているSlack内チャットボット(Hubot)の名前です。
開発メンバーになると必ずお友達になるカワイイ奴です。
GitHub Issueの作成、プルリクエスト、CircleCIを利用したテスト、デプロイ、リリース作業はもちろん、日直の指名なども自動化してくれています。
(日直というのは、開発朝会の司会担当、デイリーリリース担当者のことです)
こんな感じで指名してくれます。(時間ちょっとずれてるのもかわいい)
開発チームの中にデザイナーさんが含まれている状態でも、運用タスクが均等に分散できるのは、すくすけのおかげと言っても過言ではありません。
ありがとう、すくすけー
4. Docker
開発チームに配属されて最初に時間を費やすのが、Docker環境構築です。
Webサービスの開発環境はDockerコンテナで用意されています。
入居先のDockerホストが通知されるので、そこに自分のコンテナを作成して、ローカルマシンからのアクセス設定、ポートフォワーディング設定などをしていく事になります。
うんー、なんだか難しそうですね。。。
心配いりませんよ!
開発マネージャー渾身の「はじまりの書」や、インフラ担当者が作った「導入手順書」がきっちり共有、整備されているので迷うことはありません。
Webサービスコンテナ以外にも自作のコンテナを作り放題なので、色んな実験ができるというのも魅力的です。
5. Atom + atom-sync
人気のテキストエディターですね。
開発メンバーのほとんどが、Atomを使ってWebサービスのコードを書いています。
ただ、前述したとおり開発環境はリモートに存在するので、atom-sync
というssh+rsync
を自動で行うパッケージを追加で入れています。
(なのでVimやEmacs使いの人のほうが、この開発環境にフィットしやすいかもしれませんね)
その他のパッケージについては各人の好みになると思います。
個人的に、Golang
を書く時はAtomではなくてVisual Studio Code
を利用しています。コード補完がAtomパッケージのものより使い勝手が良いのと、パッケージ入れすぎたAtomに比べて、かなり軽快に動いてくれるような気がしています。
まとめ
いかがでしたでしょうか。
みなさんが普段、お使いのツールと差があったでしょうか。
「同じツール使ってる」という方も、「こっちのツールのほうがいいぜ」という方も一重により良い開発環境を目指す思いは同じはずです!
この熱い思い、一緒に語らってみたいなーという方は是非SchooのWantedlyページをチェックしてみてください!
何卒、なにとぞ〜