# 背景
当時所属していた会社は毎月のように新入社員がおり、いわゆる人事、総務は新入社員のためにGMailのアカウント、MoneyForwardのアカウントなど各種アカウントを手動で作らなければならない作業があった。特定のアカウントを作成し忘れたり、アカウント名を打ち間違えるといったヒューマンエラーも発生しており、これらを一括して作れるようなSlackのBotを作成した。
## 工夫したこと
エンジニア以外の全社員もSlackを使用している会社だったのでインターフェイスとしてSlack Botを採用した。Slack Botに作成のコマンドを投げることで一括でアカウント作成ができるようにした。また、データの保存先としてはRDBMSなどを考えたが、記入後にも社員情報が変更されることが想定できたため、人事、総務の方々が変更のためにわざわざ特殊な言語(SQL)を覚える必要がないように。という観点からGoogle Spreadsheetにした。実際入力間違いや、同名の人の衝突回避のためだったり、通称のほうがよいという新入社員がいくらかいたようで更新の需要はあったようでGoogle Spreadsheetを採用した利点はあった。
個人的にはじめて本格的にClean Architectureを採用したプロジェクトだった。このプロジェクトの段階ではClean Architectureの利点を感じることはできなかったがここで形だけでも守りファイル構成を勉強できたのはのちに活きたと思っている。
## 感想
新しいことが多く非常に疲弊した。Go, DDD, Clean Architectureと学ぶことが多く当時は理解せずそれっぽいことだけ形を守っていたため、終始これでいいのかと悩みながらレビュー(される側)に苦慮したりもした。現在DDD, Clean Architectureにそれなりに明るいつもりなのはこのプロジェクトを経たからであるが、このプロジェクト自体は辛い経験だった。
## 使用技術
- 言語
- Go
- GAS
- フロントエンド
- Slack (入力受付と結果表示に使用)
- ストレージ
- Google SpreadSheet
- 設計思想
- DDD
- Clean Architecture
## 担当業務
- 設計
- 実装
- バックエンド
- 運用保守