こんにちは。QAチームの本郷です。
今回から広報関係のブログも担当することになりました。よろしくお願いします!
過日、Twitterでも発信しましたが、コード品質についての社内勉強会が開かれました。
せっかくなのでブログでも紹介したいと思います!
きっかけ
シニアエンジニアのある想いがきっかけで、開催に至りました。
スタッフ間でコードの品質が重要だとなんとなくは共有してましたが、コードの品質とは具体的に何か、という点を共有したり、説明したりする機会を今まで提供できていませんでした。これを改善して、コードの品質の考え方をmmjのメンバー間で共有できるようになりたいです。
どういうコードを書くべきなのか、どういうコードを書くと保守性が高まるのか、ということを考えながらみんなにプログラムを書いてほしいですし、よりよいコードが書けるように成長していきたいです。
今回の内容
まずは主催エンジニアから、コード品質の重要性についての発表。
いちテスターとしては、コードの品質が高ければバグ(特にうっかりミスレベルの)や、改修の際に影響範囲が漏れたりといった問題も減るんだろう、ぐらいの目先の認識はあっても、いざそれがプロジェクト運営にどう影響するかまでは考える機会がなかったので、改めて図なども使いながら解説していただけたことで情報が整理できました。
また、社内で展開しつつある、QAとエンジニアが連携してのテスト(機会があればブログでご紹介します)ともあわせてコード品質向上に取り組むことで、より手戻りの少ない開発が期待できそうだなと思いました。
次に、4名のエンジニアが発表を行いました。ざっくりテーマは、「シニアエンジニア達がコードを書く上で気をつけているポイント」。
チンプンカンプンだったらどうしよう!と内心ドキドキしながら参加したのですが
非開発者の私にも理解できるレベルで説明してもらえて一安心 ε-(´∀`*)ホッ
そこはさすが、普段の業務でお客様と直接やりとりしているmmjのエンジニア。とても分かりやすい発表でした。
トピックは、マジックナンバー、N+1問題、Booleanの使い方、日本語の活用、などなど。
今見るとイケてない「これやっちゃったら俺会社休むわ」な過去のコードを実例として紹介しながら解説してくれました。
その中で、N+1問題については複数のエンジニアが取り上げていました。
パフォーマンス問題はやはり避けては通れないというところでしょうか。
また、関数名に日本語を使うことのメリット・デメリットについても議論が白熱しました。
参加者の感想
今回はエンジニアのほか、デザイナーやQA、入社面接を受けにきてくれていた学生さんと、様々な顔ぶれが参加しました。
- 自分の過去のコードを振り返るきっかけになった
- 他の人の間違いが見られて、自分だけじゃないんだと安心した
- 自分のコードも見てほしいと思った
- バグの出やすいポイントが分かった
など、それぞれの経験値や立場に落とし込んでの学びが得られたようです!
おわりに
また参加したい!との声も多く、シリーズ化されるといいなと期待しています。
続報があればまたこちらのブログにて紹介したいと思います。
京都在住でフルリモート勤務のQAエンジニア。元Web系エンジニアでJava使い。子育てのために、より自由度の高い働き方を目指してQAエンジニアへ転職。