コンパクトなチームなので風通しがよく、プロダクトの方向性の意思決定から実装までがスムーズに行われます。
各エンジニアの裁量が大きく、課題に対して解決策を自分で考え実装するので、自分の仕事が事業に直結します。
全社、コミュニケーションはSlackを使って行っています。
プロジェクトのタスク管理は、githubのissuesで管理し、チケットの状態変化をslackに通知しています。
インターフェイスの定義ドキュメントなど、最低限コミュニケーションに必要なもののみ管理し、コードが中心に開発を進めています。
機能の実装ができたら、プルリクエストを発行し、必ず他のプログラマのレビューを挟んでいます。
開発フローの改善や、自動化、仕組み化も常に取り組んでいます。
現状では、以下の仕組みがあります。
* APIドキュメントの自動生成
* APIコードのひな形(Goのstruct) の自動生成
* 自動テスト
* 1コマンドでの各環境(dev,production) へのデプロイ
* GitHubへのプッシュからの開発環境への自動デプロイ
* プルリクエストベースでの、コードレビューフロー
* Packer, Terraform, Ansibleを使ったインフラのコード化