makotan _at_ gmail dot com

新しいタイプのSIerが持つべき特徴を考えてた 2

今後多く出てくると思われる新しいタイプのSIerがどんな特徴を持つべきかって問題を考え始めて数○間
現時点の個人的な考えをぼんやりまとめてみた 2

  • 開発と運用は仲良く分離

開発は開発だけ運用は運用だけではなく、全体最適化を考えた仲の良さと平行して守るべき部分(安定運用とかデータの保全)をきっちり守る

  • 負荷の状況と予測に合わせた適切なサーバ管理

事前に多めに予想した負荷を前提としたサーバを用意するより、足りなかったら追加するし余ったら取り除く程度の軽いノリのサーバ管理が必要

  • 徹底的なAPI

アプリケーションはAPI化を徹底的に進める
ブラウザに表示しているのはAPIをただ呼び出すだけの単なるGUI位のノリでAPI化する

  • 運用環境での厳格な権限管理

開発者が本気で頑張っても許可無く本番環境へアクセス出来ない程度の権限管理
運用担当者一人が頑張っても本番環境で悪いことが出来ない程度の権限管理
が必要

  • 機密データの暗号化、ハッシュ化

最重要機密データは全て暗号化する、プログラム的に再現する必要の無いデータは可能な限り速やかにハッシュ化する

  • 的確な漏洩防止の仕組み

最重要なデータなどは徹底した漏洩防止の仕組みを人間系も含めて構築する
漏洩防止をすると同時にトラッキングもしっかり実施する
それ以外の漏洩防止はレベルに応じて軽くする
たとえば、ソースコードやドキュメントやコードリポジトリは漏洩は望ましくないけど万が一漏れても運用環境へのインパクトが無い仕組みを構築しつつ、啓蒙活動も頑張る

  • オープンな開発環境

閉鎖環境や準閉鎖環境は運用の非常に限られた部分のみに限定し、通常の開発環境ではオープンな開発環境を構築する
新しい技術やツールやライブラリなどを積極的に社内に取り込みつつ、進化するためには必要
同時に万が一の事を考えた対策も積極的に実施する

  • オープンなドキュメント

ExcelやWordみたいに特定の環境にどっぷりのドキュメントよりも、どの環境でも編集できるドキュメントを優先する
何かをするためには特定のOSが必須な環境を作らないためにも重要

  • 高性能で快適な開発環境

予算の範囲内でなるべく高性能で快適なな開発環境を用意する
開発しない人は(たとえ上司でも)開発者のお下がりを利用する