2023年8月のふりかえりです。 引き続き B 社(週2.5日)、G 社(週2.5日)に関わらせていただいております。

B 社

8 月はマネジメント 1 割、プレイヤー 9 割といった割合で対応していました。 Rails 製の EC サイトの開発業務と Engineering Manager / Scrum Master 業務を行っております。

  • TechLead 業務
    • ひきつづき各エンジニアの成果物のレビューや、設計方針の相談・レビューなどに時間を使っています。
  • EC Store Front 面改善
    • 新 UI パーツの提供に向けた PRD づくりをひと通り終え、マーケチームのメンバーとすり合わせを行いつつブラッシュアップを完了しました。
    • 上記をベースに DesignDoc の記述を進めています。
    • 上記の作業の一部ですでに使用していないとわかっている UI パーツが複数あったのでコードベースから削除しました。
      • すこし改善を入れるだけで似て非なるパーツを消せたりもしたのでそういった対応も行っています。
  • dev 環境を ECS ベースで実行できるようにするための実装を続けています。
    • 先月で一旦動く状態までできており、その続きで大小様々な改善を入れていっている最中です。
    • assets:precompile の対応をおこないました。
      • assets:precompile の処理の中で redis と mysql にアクセスが発生するのでネットワーク的に接続できるようにする必要がありました。
      • 対応方針は様々検討しましたが、最終的には GHA 上で assets:precompile したものを Docker image に COPY するという形で実装しました。
    • ログがいい感じに出ない問題がありましたが対応しました。
      • EC2 で動かす前提の設計が各所にあり、これもその問題でした。ログ出力先が log/[env].log 前提になっているのを標準出力に出せるように拡張することで対応しました。
      • また、ワーニング等の構造化されていないログが無駄に多くでていたので RUBYOPT=-W0 を設定するようにしました。
    • CDK にて ALB のタイムアウト値を調整しました。
    • CDK のコードベースが大きくなってきたので ESLint をいれました。
    • API サーバー側との通信が CORS エラーになっていたため修正しました。
      • API サーバー側に許可ドメインを追加しました。
    • Datadog 対応をおこないました。
    • EC2 側の dev 環境側で最近対応していた Basic 認証をやめて ALB による Google OIDC で認証するようにする仕組みを、この ECS ベースの dev 環境にも実装しました。
    • 他、細かい修正をいくつかいれています。
  • Developer Productivity Engineering 関連
    • Github の Dependabot のパッケージバージョンアップに機能追加があり、Renovate と同様にグルーピングできるようになったので、早速対応して回りました。
    • Renovate よりも Private Package Registry 対応がよいので時間があるときに Renovate から Dependabot への移行を進めて Renovate は使わなくなっていく方向で考えています。

G 社

8 月は BOM(部品表) を管理するシステムの導入周りを進めています。

  • 参画前までに進んでいたとおもわれる、様々な形式で整理されている BOM Excel や Google Sheets などの状況を確認しつつ、新BOM管理システムの方に投入するためのデータの準備を担当していました。
  • すでに新BOM管理システムの方に手作業等でデータが投入され始めており、他メンバーも使い方を確認したり運用方針を固めようとしている状況でした。
  • 僕の作業としては、上記した BOM Excel や Google Sheets を読み込んで新BOM管理システムに投入するCSVデータをいくつかの形式で準備するための Go の CLI を作っていた感じです。
    • こちらの作業は一通り終えていて、月末時点では上記の CLI で生成した CSV を使って実際に新 BOM管理システムへのデータインポートをおこなったりしています。
      • データ投入予定の半分くらいが完了している状況です。
    • 並行して、関係各所とデータの確認や新BOM管理システムの方で検出した制約事項などを加味した運用方針のすり合わせなども行っていました。
  • 上記とは別作業で、新BOM管理システムが提供している GraphQL の API エンドポイントがあり、それの使用感を確認したり、運用中に「こういう使い方をしたい」というユースケースに基づいたAPIコールなどを実験したり実装したりしていました。
    • 正直結構バギーな状況で実験して動かない→新BOM管理システムの運営会社へ問い合わせ、みたいな流れが頻繁に発生している状況です。
    • API のオブジェクト設計がよくないのもあって、取りたいデータを取るためのAPIコールが非常に不自然なことも使い始めの現時点でも結構感じているので Feature Request をどんどんしていったほうがいいかな、とも思っています。

おわり