各々のマシンローカルで動作させられるような仕組みをDockerComposeなりでまず作っておくのはマスト。
サービスのWellknownPortではなく、ずらして設定しておくと、緊急事態の時にバタバタしないですむ。
開発部分は、任意にバイパスできるようにしておくべき(DI使うっていうんなら、すげ替えられる実装を先にしておくべき。フラグで切り替えるんだろ? DI使えるっていうんなら、それくらい常識だろ? ってか、そのためのDIだって知ってるよな?)。
認証周りを外部のサービスに依存してて、その実装部分が頻繁に仕様変更されるものだから、業務開始からエラーが発生して開発が滞る(で、当人は大幅に遅刻して出社)ってのを何度も体験すると、日常的に殺意が溢れてしまう。
この辺りは、自動テストでも必要になることだから、真っ先にやっておかなければならないタスクだ。
少なくとも、自分がやるプロジェクトで、これを最初に積まなかったタスクはない。
にもかかわらず、「サービス完成してから自動テストの環境作ってぇ……」とか言って、マージが表面的にしか成功してなくて、破壊的なバージョンが本番環境にUpされてもなお、「まだ自動テストいらないでしょ」とかいう現場はもう二度と入りたくない。
TestDrivenDevelopmentってさ……。
っていうOJT上がりの技術者がいるけど、「テストできるようにシステムを組んでおかなきゃ、テストできないんだよ」というとても単純な話が理解できてない。