LIVESENSE ENGINEER BLOG

リブセンスエンジニアの活動や注目していることを発信しています

Software Design の特集に寄稿しました

この度、2022年11月18日発売『Software Design 2022年12月号』の特集「なにかと使えるSQL 基本操作から実務に役立つテクニックまで」の3章に、リブセンスのエンジニアメンバーで寄稿させていただきました。 gihyo.jp

本ブログでは、執筆者の @verdy_266 @mnmandahalf @ayumu838 の3名が寄稿に至った経緯や苦労した点を記録しておこうと思います。

きっかけ

以前弊社が『Software Design 2017年11月号』掲載の記事「データ分析に効く SQL50本ノック」に寄稿したことをきっかけに、広報を経由してご依頼をいただきました。 依頼を受ける目処がたった段階で、社内のエンジニアから執筆者を募集し、3人で共同執筆を行うことになりました。

書く内容を決めるまでの流れ

社内Slackにおけるブレスト

当初は「調査SQLの実例」というテーマでご依頼があったのですが、調査SQLとは何かについて明確に答えられるメンバーがおらず、依頼に返答する前に執筆内容について社内のSlackで散発的な議論を行いました。 議論を重ねる中でいくつか仮説を用意した上で、技術評論社の方とMTGを設定してテーマを深めていきました。

議論の中で出た案

  • 障害発生時に、SQLを使って状況を把握する、みたいな?
  • AthenaでALB logs不正アクセスチェックとか
  • 障害発生やカスタマーからの問い合わせが起点となっている感じ
  • N+1が起こってるかとか、スロークエリがあるとかをMySQLの一般クエリログとかスロークエリログとかから抽出するとか

技術評論社の方との打ち合わせ

MTGの中で、私たちが事前にイメージしていた内容をお伝えしつつ、特集全体の趣旨や他の章を含めた構成の背景について解説いただきました。それらを考慮し、最終的に「実務で役立つSQL」というテーマで執筆することになりました。前の章がSQLの文法について扱うものだったので、「とはいえORMを使っていたらSQLを使うことはないのではないか?」という疑問にお答えする形で、「普段ORMを使って開発していても、こういったケースでSQLを使うことがありますよ」ということが伝えられる構成になるように心がけました。

執筆担当者内での社内打ち合わせ

上記を踏まえて改めて担当者間で節の構成を考え、

  • 普段の開発や定常業務の中でORMを使わずにSQLを書くケース
  • 運用中によくあるトラブルと、発生時の調査で使うことが多いSQL
  • スロークエリの調査と修正方法

を3名で分担して書くことにしました。

結果的に当初想定していたよりも初心者向けの内容になったため、執筆初心者である私たちにとってもチャレンジしやすい寄稿のチャンスとなりました。

苦労・工夫したところ

テーマから実際の記事の内容を決めること

先述の通り、テーマから記事の内容を考えていく過程に最も時間がかかりました。 社内のSlackでたくさんの方が案を出してくれたうえで、執筆担当者の間でも何回かの打ち合わせを経て内容が整理されていきました。

記事内で取り上げる例を作ること

普段の業務ではやりたいことを元に実現方法を考えることが多いため、記事で取り上げるための悪い例を無理やり作成することは思った以上に大変でした。

例えば、生のSQLを書かなければいけない例を複数見つけてきたり、意図的にスロークエリを生成したりするような作業です。

社内の人に広く募集してみたり、地道にいろいろ試したりしてなんとか例を捻り出しました。

執筆段階では、何も考えずにクエリを本文に掲載すると、それだけで紙面を大幅に食ってしまうことが問題となりました。できるだけシンプルな、それでいて実務で出会ってもおかしくないクエリを掲載するように心がけました。

出版社の方に技術的こだわりを伝えながらの校正

自分たちが主体で校正するわけではなく、またエンジニアの方が校正してくださるわけではないので、記事の中でどの部分が重要であるのかについてコミュニケーションをとることが大事でした。

紙面の都合上、クエリの実行結果を全て掲載するのが難しいため、ある程度項目を絞ったり図を省略する必要があったのですが、例えば「スロークエリのプロセスを特定してkillするときに実行時間しか見えていない状態でkillしてしまうように見える」といったことが起こってしまうため、表現を整えるのに苦労しました。

図で表現しづらいものは文章で補足したり、「この図のこの部分は納めて欲しいです!」とリクエストしたりしました。

そのような制約の中でより読者にとって読みやすい日本語表現や図面の流れを作っていただき、プロの編集の方はやはりすごいなと感じました。

最後に

まず、寄稿の機会をくださった技術評論社の皆様にこの場を借りてお礼を申し上げたいと思います。

5年ぶりの寄稿依頼だったため社内にほとんどノウハウがなかったものの、リブセンスではこのような機会に気軽に手を挙げることのできる雰囲気があったため、寄稿の実現に至りました。経験が特になくても、手を挙げるだけで参加できる環境はとても良いものだと感じました。 執筆含めたいろいろなチャレンジを行いたい方、一緒に働きませんか?

hrmos.co