はじめに
はじめまして!株式会社ロジクラでエンジニアをしている甲斐と申します。
今回は弊社でエンジニアを取り巻く開発環境や施策の中で、今でも続けているチーム全体の取り組みを一部紹介しようと思います。
早いもので、ヒヨッコのつもりでいてもスタートアップで2年在籍すると相対的に古株になってしまうわけですから月日の経過というのは恐ろしいものですね。在籍している間にもどんどんと仕組みが変わっていって今振り返ると懐かしさを感じます。
1. パフォーマンス改善モブプロ
弊社ではプロジェクトの進行に関してはスクラムベースでissue作成やスクラム運用にはPMと連携して実施しますが、インフラやパフォーマンス周りではエンジニアが主体となっています。
毎週時間を取ってエンジニアで集まり、DatadogやBugsnagとにらめっこしてスロークエリ探したりN+1を探したり、ケアできていないエラーをピックアップしたりしてその場でコードを共有しながら修正するか、手こずりそうな場合はissue化してスプリントに追加するようにしています。
この施策によって数々のN+1クエリを取り除くことができたほか、勘所をエンジニア全員で共有することによって事前にN+1を回避するような対策が行われるようになりました。
PMが事業を伸ばす施策を考え、エンジニアがアプリケーションの健全な運用を考える、この両輪でプロダクトチームは成り立っています。
2. ハッカソン
通常業務から離れてテーマを定めて1日ガッツリ実装する日です。現状はロジクラに直接関係しているけど普段なかなか関われなかったり、技術的にちょっとチャレンジがいるアプローチの検証の場として使用することが多いです。
私はデータ分析の準備用にデータの作りを調査したり、全文検索用にインデックスを改善したりといったテーマに最近は注力していますが枠の時間がネタの増加に追いつかなくなってきて贅沢な悩みが出てきました。
同僚はiOSでバーコードリーダーを実装したり、ワークフローの改善を行ったり、普段後回しになりがちな実装をやるいい機会なのでどんどんロジクラに成果をフィードバックしていきたいですね。
3. DB勉強会
ロジクラの実装に日々携わって実感したのが、エンジニアとPMの知識に非対称性が非常に強いことです。
PMの視点から見れば事業レベルの話をどこまで伝えるか、という悩みがありますが、それと同時にエンジニアから見るとどのくらいシステムの構成や設計を伝えるべきか、ということが悩ましいのです。
とはいえ、あんまりブラックボックス化するとPMが作る仕様が開発の実情から大きく乖離して調整が大変になることがあり、少しでも格差を埋めようということで内部のデータについて知識を共有する機会をしばしば設けています。
特にPMに対する知識の共有という目的は満たされており、以前に比べて内部データに関する話題での齟齬が少なくなってきているのを実感しています。
CSメンバーなどにも参加してもらっています。将来的には顧客データの実態調査タスクを手離れさせたいとは思ってるのですが、レベル感を合わせきれずに置いてきぼりにしてしまったという反省もあり、機能面でもナレッジ面でも、まだまだ道は遠いなと実感させられています。
4. お披露目会
直近にリリースされた機能の紹介と、関係者にお疲れさまでしたを言う会です。
各社員の反応って様々で、広くチームをまたがって下準備していた機能もあれば仕様が明快で数人でさっと作れてしまう機能もありますし、話は聞いていても実際に動いているところを見ることで解像度が上がることもあるので、活動の共有として重要だと思っています。
開発者の中で直接お礼を言われることをモチベーションにしているかどうかというのは個人差がある内容ですが、そういう場を作ることによるチームの一体感醸成などの意味でも意義のある場です。
おわりに
施策面ではもがきながら試行錯誤を繰り返しています。色々やりすぎた結果本来のタスクを圧迫したり、スリムにしてみたらなんだか連携がぎこちなくなったり、ああでもないこうでもないと理想と現実の間で揺れ続ける毎日です。
株式会社ロジクラではそんな我々と一緒に物流業界の未来を切り開くエンジニアを募集しています! 興味がある方はぜひ こちら をご覧ください!