Remote Worker
リモートワーカー向け勤怠・請求SaaS
Remote Worker は、リモートワーカーと受け入れ企業が、勤怠・契約・請求を同じ場所で扱うWebアプリです。日々の打刻から、契約の管理、月末の請求書づくりまでをつなげます。
概要
ワーカーは出退勤・休憩を打刻し、勤務表の確認、勤怠修正・休日申請、請求書PDFの作成までを行います。企業管理者はメンバーの招待、契約・報酬条件・貸与物の管理、申請の承認、稼働状況の分析、CSV出力を行い、本部管理者は利用企業とプランを管理します。
フリーミアムの料金体系に、年額プランの日割り計算ロジックまで設計しました。メール・Slack・Chatworkへの通知、Googleログイン、Stripeによるプラン変更にも対応しています。詳細な仕様書と、28枚の紹介資料もつくりました。
アーキテクチャ
- 構成
- フロントエンド(Next.js・React・TypeScript・Tailwind CSS)と、バックエンドAPI(Laravel・PHP)を分けて構成します。
- 認証
- ブラウザの認証はセッション方式で、認証情報を JavaScript から読めない形で扱います。書き込みを伴うリクエストには、正当性を確かめる仕組みを入れています。
- データと非同期
- MySQL に保存し、キャッシュとキューに Redis を使います。メール・Chatwork・Slack の通知はキューで処理し、リアルタイム通知と、契約ステータスの毎日の確認は、本体とは別のプロセスで動かします。
- 帳票
- 請求書や勤務表のPDFは dompdf と mPDF で、集計の出力は PhpSpreadsheet で作ります。
- 実行環境
- Docker Compose で動かします。本番の操作は CI からだけに限り、GitHub Actions で CI/CD を回します。
- 種別
- リモートワーカー向け勤怠・請求SaaS
- 区分
- プロダクト(SaaS・Webサービス)
- 状態
- 開発中
- 担当
- 企画・設計・開発・資料
- 技術
- Next.js
- React
- TypeScript
- Tailwind CSS
- Laravel
- PHP
- MySQL
- Redis
- Stripe
- Docker
- GitHub Actions