ソフトウェア
研究のかたわら、私は Auto-Koch GmbH & Co. KG でソフトウェア開発者としてパートタイムで働いています。長年にわたる主な プロジェクトが KoKi です。顧客・車両データを管理する社内 システムで、私が設計・開発し、継続的に拡張してきました。グループ各拠点で 日々の業務に実運用されています。 KoKi はほぼ単独で開発しており、そのうち約1年半は 2 人体制でした。 ソースコードは社内専用のため公開していません。
KoKi: 顧客・車両管理
スクリーンショットはすべて合成テストデータです。
KoKi は、2019年から自動車ディーラーグループの日常業務のために開発して いるウェブベースの業務アプリケーションです。顧客データと車両データを 統合し、車検(TÜV)や整備に関わるサービス業務を支援し、繰り返し発生する コミュニケーションや書類作成を自動化します。グループ5拠点に対応した マルチテナント構成で、数万件規模の顧客・車両データを管理し、日々実運用されています。
主な機能
- 顧客・車両データの統合(DMS と毎週自動で照合、必要に応じてワンクリックでも実行可能)
- 点検・車検(HU)日程の自動算出。日程がどのように決まったかを判断グラフで確認可能
- ホバーカード付きの車両行:予約、データ保護、顧客の全車両を一目で表示
- 2 段階のデータ保護同意(全般およびブランド別)
- 予約リマインダー、リマインダー付きメモカレンダー
- 顧客データでプレースホルダーを埋めるテンプレートからの SMS・メール・PDF 作成
- スタッフ向けの社内チャット
- ロール管理と漏れのない車両履歴
- 作業概要と統計(月次推移、成功率、拠点比較)
技術的ハイライト
- フレームワークを使わないバニラ JavaScript による独自のシングルページアプリケーション
- REST API ではなく WebSocket によるリアルタイム通信。アプリケーションロジックはすべてサーバー側
- PostgreSQL の LISTEN/NOTIFY トリガーによるライブ更新
- ディーラー管理システム(DMS)との定期的な自動同期
- データ同期とリマインダー自動送信のための独立したバックグラウンドサービス
- ヘッドレス Chromium を用いたテンプレートからのサーバーサイド PDF 生成
- JWT による認証、bcrypt によるパスワードハッシュ化、ロールベースのアクセス制御
- 全体を通じてパラメータ化された SQL(ORM 不使用)による SQL インジェクション対策
- 追跡可能な日程算出アルゴリズム:すべての計算をスナップショットとして保存し、ブラウザ上の説明とサーバー側の計算をクロスチェックテストで照合
- コマンド一つで自動品質保証:マイグレーション全体を通してテスト用データベースを再構築し、DMS・工場計画・SMS/メール送信のシミュレーターに加え、ユニットテスト、データベーステスト、実際の Chromium でのブラウザテストを実行
- 毎週の同期処理を指標とエラーとともに記録
- 数年来 AI 支援による開発を行っており、現在は Claude Code を使用。すべての変更を自動テストで検証
技術スタック
フロントエンド
HTML5
CSS3
JavaScript
バックエンド
Node.js
WebSocket
PostgreSQL
ツール
Puppeteer
JWT & bcrypt
Vite
Handlebars
Vitest