読者です 読者をやめる 読者になる 読者になる

LOUPE Engineer Blog

Technology, Design, Education

Framgia x LOUPE勉強会#3

末永です。Framgiaさんと共同開催している勉強会も3回目になりました。

引き続き Skypeを使ってグローバルに勉強会をやっていますが、今回はハノイのオフィスをリモート見学させてもらいました。おしゃれなエントランスから300名規模のエンジニアの開発ルームまで。非常に活気のあふれるオフィスですごいです。

ストリートビューで見るとこちら。めちゃめちゃでかい。

https://goo.gl/maps/uJFdGFGLRQP2

 

周辺にもいくつか高層ビルが立ち並び、オフィスから下をのぞくとプールが!リゾート感溢れますね。いつかLOUPEも...!!(※ 一方LOUPEは一軒家。それはそれで楽しいです)

 

さて、それでは勉強会のレポートです!

 

発表1: 開発プロジェクトの工程

まず最初はFramgiaのHuyさんから。開発プロセスとしてよく知られるV字モデルについて丁寧に話していただきました。

昨今Web界隈ではアジャイルで高速に開発しようといった流れはありますが、アジャイルは決してV字モデルで表される開発プロセスを「省略」していいわけではないとのこと。プロセスは「省略」するのではなく、どれだけサイクルを「小さく」回すかが大事だと。改めてV字モデルについて改めて振り返るいい機会になりました。

この辺りの話は基本情報(FE)や応用情報(AP)の資格試験によく出てくる話です。

資格なんていらないという人も多いですが、資格なく開発するというのは運転免許なく運転するようなものだというワードがメンバーの心に響いていたようです。取らなくていいにしても、FEやAP、そしてより上位の高度の試験は知っておくべき内容が体系的にまとまっていていい教材です。ブログなどで断片的な情報をつまんだり、先端の技術を追いかけるよりもこういうベースの知識を詰め込んでおくことは非常に重要です。

 

発表2: BackboneにReactをチョイ足しして幸せになった話

発表の2番目は弊社ベータから。先生限定の情報共有サービス SENSEI NOTE にて最近導入したReactとBackboneの構成についての紹介。普段外に公開することのない会員限定サービスを特別に一部チラ見せ公開してます ;)

内容はスライドに任せるとして、質問として上がったのがLOUPEではどういう基準で新しい技術の選定するのかということ。今回Reactを採用しましたが、常に先端の技術を使いたいといった要求はそんなに強くはありません。新しい技術は工数を下げてくれるものが多いですがドキュメントが少なくつらい。かつ、ものによってはバージョンアップも多く追従するのがつらい。個人で小さく試しながら頃合いを見つつ、適切なタイミングでプロダクション環境でのGoを出せることが大事です。

そのためにも自分たちのプロダクトやコードベースをシンプルに捨てやすい構造に保っておくこと、これが柔軟にアップデートし続ける上で重要だと思います。設計やデザインを既存のコードに依存しすぎないシンプルなコードベースを維持していきたいですね。

 

speakerdeck.com

 

発表3: Terraform インフラをコードで書く

さて最後がTerraformでのインフラ構築について発表です。

LOUPEでは元々Herokuで運用していたものを一度VPSに変更し、最近Terraform+AWSへの切り替えを進めています。従来インフラの領域は最も属人的な領域で、ナレッジの共有が少ない領域だと思います。履歴管理もパラメータチューニングも目に見えません。それが全部コードで書けると構成もわかりやすく、メンバー間での共有もGithubのフローに乗せることが可能になります。

僕らのチームはスモールで若いメンバーが多いのでできるだけナレッジをシェアし、残す方向に持っていきたいと思っています。インフラがコードで書けて残せるのは非常にありがたいです。

似たようなものでは他にもCloudFormation等がありますが、HashiCorpのサービス群を見てみると今後に非常に期待が持てます。

 

speakerdeck.com

 

さて、今回は開発プロセスの話からJavascriptのフレームワーク、そしてインフラと多様な技術Tipsについての共有となりました。

FramgiaさんとLOUPEという規模も事業モデルも異なる2社での勉強会は意外な学びが多くあります。

 

それではまた次回は来週、楽しみです。