Sansan

  1. 仕様検討

    • 弊社のミッションを実現するべく、プロダクトチームがプロダクトの方針を決定する
    • プロダクトマネージャーが仕様検討を行い、開発チームと共に仕様を決定する
  2. アーキテクチャ・設計

    • 開発チームが技術的な観点で設計・実装する
    • アーキテクチャは、使うべきものを使うということを意識する
  3. 実装

    • 最新の技術だけにとらわれない、その時点でのベストプラクティスを追求した実装を行う
    • 開発ツールはなるべく、最新のものを使用する
    • ソース管理にはGitHub、CIはJenkinsを使用
    • コードレビューはPull Requestで行っており、2人にレビューしてもらい、ApproveされたらコードをMergeする
  4. テスト

    • 開発が完了すると、プロダクトチームとのレビューを繰り返し、機能をブラッシュアップする
    • レビューが通れば、月曜日〜木曜日の間であれば毎日リリースを行う
  5. リリース

    • 反映

      • どの機能がどれだけ使われていて、それらが営業活動にどのように貢献しているかを測定
      • 測定結果をプロダクトの開発計画や仕様策定に反映

    コア技術

    • 開発
      利用言語
      C# 7、JavaScript(jQuery、Bootstrap、LESS等)、Swift、Kotlin
      フレームワーク
      .NET Framework 4.6.1(ASP.NET MVC、ASP.NET Web Forms、ASP.NET Web API)
      データベース
      PostgreSQL 9.6、ElastiCache
    • 管理
      リポジトリ
      Git、GitHub
      プロジェクト
      Pivotal Tracker、YouTrack、Targetprocess、ZenHub等
      CI,テスト
      Jenkins、Bitrise、NUnit
    • インフラ
      インフラ
      AWS(EC2、S3、SQS、DynamoDB、SES、RDS等)
      運営・監視
      Zabbix、CloudWatch、NewRelic、Amazon Elasticsearch Service、Fluentd、Chef

    Eight

    1. 仕様検討

      • 開発者全員参加
      • 実装する機能の理解、大まかな作業スケジュールの決定
    2. 設計

      • 主にUMLを用いて大まかな設計の共通理解を図る
      • 詳細な設計は実装担当を割り振り、実地する
    3. 実装

      • 各担当により作業が進む。ペアプロで取り込む場合もある
      • テストファースト、さらにこまめにコードビューをgithubで行う
      • インフラの変更はChefのレシピとして追加するなども行う
    4. テスト

      • 本番と同等のステージング環境にて最終テスト
      • データ入力システムやスマフォアプリとの連動も確認
      • 問題がなければリリースモジュールへの取り組みを行う
    5. リリース

      • Web:1週間に2〜3回
      • iOS:1〜2週間に1回
      • Android:1週間に1回
    6. 反映

      • リリースによる効果測定を行い、定量評価を実地
      • 結果をチーム全体で共有し、以後の開発計画や仕様、優先順位などを見直す

    コア技術

    • 開発
      利用言語
      Ruby、JavaScript、Swift、Kotlin
      フレームワーク
      Ruby on Rails, Sinatra, React.js, Babel, Gulp
      データベース
      MySQL
    • 管理
      リポジトリ
      Git、GitHub
      プロジェクト
      Zenhub
      CI,テスト
      Jenkins、RSpec、Bitrise
    • インフラ
      インフラ
      AWS(EC2、S3、SQS、VPC、Route53、Elasticache、RDS、SWF、Cloudwatch、SES、Redshift等)
      運営・監視
      Mackerel、fluentd、Chef、Capistrano、NewRelic、Terraform