LINE Developer Meetup #55 in Fukuoka開催レポート

こんにちは、LINE Fukuokaのきしだです。

7/18(木)にLINE FukuokaカフェスペースでLINE Developer Meetup #55を開催しました。
今回はテーマを「LINEエンジニアの日常」として、コードレビューの観点の紹介とライブコーディングから、LINEのエンジニアが日々どのように開発を行なっているかを紹介しました。
†

Code review at scale: A case study of LINE for Android / 石川 宗寿(LINE)

最初のセッションではLINEから石川より、コードレビューについての勘所を、Androidアプリチームの事例から紹介しました。

開発チームの人数が増えると、コードレビューは均等でも均質でもなくなり、一部のエンジニアに大量のレビューが集中し、またレビューの質もばらつきがちです。現在「LINE」のAndroidアプリのエンジニアは50人を超えているということですが、そういったコードレビューのスケールの問題に、どういったアプローチで対処しているかを紹介いたしました。

Pull Request自体を読みやすくするために、巨大なPull Requestは小さく分解するとか、機能ごとのブランチを作らずマスターブランチで管理してフラグで機能を切り替えることなどを紹介されていましたが、今回印象に残ったのが2フェーズでのコードレビューです。

まずはプロジェクト経験の浅いエンジニアが最初のフェーズとしてコードレビューを行い、そのあとのフェーズでプロジェクトをよく知るエンジニアがレビューを行うという2フェーズです。そうすることで、大きすぎるPull Requestや表面的な問題は最初のフェーズでフィルタされ、プロジェクトをよく知るエンジニアにはより高度な問題に集中してレビューができるようになります。また、経験の浅いエンジニアもそのあとのレビューを見ることでよりよいレビューの視点を学習することができるとのことです。

マスターブランチで管理を行い機能をフラグで切り替えることについては、こちらのDroidKaigi:2019での登壇資料を参照してください。
巨大なアプリ開発を支えるフラグ管理術 / Flag-based feature management – Speaker Deck

LINE Growth Technologyのコーディング的日常 / 田中 星斗・上土井 涼馬 (LINE Growth Technology)

もうひとつのセッションは、LINE Growth Technologyの田中と上土井によるペア ライブコーディングです。LINE Growth Technologyの紹介のあと、簡単なWebアプリの開発についてライブコーディングを行ってもらいました。

今回のお題はこちらです。HTMLはあらかじめ用意しておきました。

前日までに練習も行って、スムーズにライブコーディングが行えると思いきや、当日になって次のようなページが!(きしだが こっそり追加していました)

やはり仕様変更部分ではちょっと悩んでいましたが、最終的にうまく時間ちょうどに お題どおり動かすことができました。
考えていることをリアルタイムで喋りながらコードを書いてもらっていたので、どのような意図で処理コードやテストコードを書いているのかがわかりやすく、面白かったです。
また、いつもは遠巻きに眺めているLINE Fukuokaのエンジニアたちも、食い入るように画面に見入っていたのも面白かったです。

懇親会

懇親会もいつもどおり賑やかに行われました。
いつもと違うのは、今回は「楽しかった」「LINEのエンジニアをより身近に感じることができた」という感想が多かったところです。
LINEのエンジニアが日々どのように楽しんで開発を行っているか、感じていただけたように思います。

We are Hiring!

LINEでは、そんなふうに一緒に楽しく開発するソフトウェアエンジニアを募集中です。ぜひご応募ください。

Related Post