$30 off During Our Annual Pro Sale. View Details »

Introduction to the Corporate Solutions Engineering at MTC2018

Introduction to the Corporate Solutions Engineering at MTC2018

Mercari has a Corporate Solutions Engineering Team for solving the challenges faced in managing the company. In this session, Karasawa will introduce the activities of his team, the kinds of challenges they are trying to resolve, how they go about developing products to overcome these challenges, and the fundamental philosophy behind what they do.
https://techconf.mercari.com/2018/session/12

Sotaro Karasawa

October 04, 2018
Tweet

More Decks by Sotaro Karasawa

Other Decks in Technology

Transcript

  1. Introduction to the Corporate
    Solutions Engineering
    柄沢 聡太郎
    Manager (CSE)

    View Slide

  2. Introduction
    to
    Corporate Solutions Engineering

    View Slide

  3. Manager
    CSE
    Sotaro Karasawa

    View Slide

  4. メルカリにおける
    Corporate Solutions Engineering

    View Slide

  5. Corporate Solutions Engineering
    「経営課題をエンジニアリングで解決する」

    View Slide

  6. CSEの成り立ち
    1人 / 1領域
    ● 組織課題へのアプロー
    チとして Corporate
    Engineering の立ち上

    ● 1月に+2名迎え3週間後
    にReviewsのMVPを
    ローンチ
    2017/11
    8人 / 1領域
    ● Reviews を正式ローン

    ● 同時にその基礎部分と
    して Teams をローン
    チ。運用開始。
    2018/04
    20人 / 4領域
    ● CSE と名前を変え、メ
    ンバーと領域も拡大
    ● ミッションは「経営課題
    をエンジニアリングで解
    決する」
    2018/09

    View Slide

  7. 会計システム、連結決算、
    会計監査レポート
    現在のCSE
    人とチームのデータベース
    Teams、
    人事評価ツール Reviews
    People Products
    コーポレートWeb
    PR & Branding
    Wiki や Slack 連携
    Accounting Products
    Communication & Knowledge

    View Slide

  8. Teams
    ● すべての関連アプリケー
    ションの基盤となる人と
    チームのデータベース
    ● レポートラインのスナップ
    ショット

    View Slide

  9. Reviews
    ● OKR設定、自己評価、
    上長評価、360度レ
    ビュー、キャリブレーショ
    ン、フィードバック
    ● 評価イベントの実施全体
    をサポート
    Performance
    Review
    Peer
    Review
    OKR
    Feedback Calibration
    Review Cycle
    ※ 特許出願中

    View Slide

  10. Teams、Reviews そして People Products
    Teams
    Talent
    Pool
    ATS
    Review
    Cycle
    Career
    Development
    Offer
    Wait for
    Join/
    Onboarding
    Resign
    ● Teams にデータを集約。内製システムの認証・データ基盤
    ● 既存 SaaS との API 連携

    View Slide

  11. Corporate Solutions Engineering とは

    View Slide

  12. Corporate Solutions Engineering
    “経営課題をエンジニアリングで解決する”

    View Slide

  13. Corporate Solutions Engineering
    “会社の抱える様々な課題に対して
    一度実施されると望ましい状態が続くような
    本質的な解決方法を考え
    熟練していて技巧に富んだ工夫によって実現する”

    View Slide

  14. 事業会社におけるCSEの位置付け

    View Slide

  15. 事業会社におけるCSEの位置付け
    ● 事業を発展させるプロダクトそのもの
    の開発・運営に責任をもつ
    ● 要するに、お客さまの目にふれるプ
    ロダクト開発
    ● 最も重要でこれがないと成り立たな

    プロダクト開発組織
    ● 事業そのもの以外の領域で発生す
    る課題に対する本質的な問題解決
    に責任をもつ
    ● お客さまの目に触れないプロダクト
    開発
    ● ある程度の規模にならなければ必
    要とならないことも
    CSE

    View Slide

  16. 社内で始めることの価値
    ● 枝葉の最適化からではなく、本質から攻める
    ○ 逆に、枝葉の最適化は既存の SaaS を活用することが近道になる
    ことも …
    ● 最強の Dog Fooding 環境
    ● 本当の MVP から始めることができる

    View Slide

  17. CSE の始め方とアンチパターン

    View Slide

  18. CSE を始めようと思ったら

    View Slide

  19. ミニマムスタートとMVP
    最初に手を
    付ける課題
    解決に
    要する期間
    MVPの
    定義

    View Slide

  20. メルカリの事例 ~CSEの始まり
    ● 評価管理ツールの SaaS は過去に利用していた...
    ● 人事評価
    ○ 「人をどう評価したいか」
    ○ 経営陣の想いの強い部分
    評価制度の変化にクイックに対応し、
    ツールを制約にしないため内製化を決意

    View Slide

  21. CSEアンチパターン

    View Slide

  22. CSE アンチパターン (1)
    “便利屋サン”
    ● この作業自動化できますか?
    ● これまでエンジニア組織のなかった領域にエンジニアが現れる
    と、やりたいことが次々でてくる
    ● 小手先・枝葉の自動化などの要望は無限に出てくる
    → 本質的課題に向き合えなくなってしまう

    View Slide

  23. CSE アンチパターン (2)
    “ただ作りたいだけ”
    ● SaaS でその領域たくさんあるのでは … ?
    ● まずはツールを使いこなす、あるいは、本来やりたかったことに集
    中して始めることが重要
    ○ 例: 評価管理ツール、ATS、etc.
    → リソース(時間、人、お金)は有限

    View Slide

  24. MVP から次のフェーズへ
    ● 0→1 プロダクトの立ち上げから改善フェーズへ
    ● チーム体制の構築
    ● プロダクト改善
    ○ 各ポジションへのヒアリング
    ○ 振り返りアンケート
    ○ カスタマージャーニーマップ ワークショップ

    View Slide

  25. カスタマージャーニーマップ ワークショップ
    ref. https://mercan.mercari.com/entry/2018/07/26/203626

    View Slide

  26. CSEを支える技術

    View Slide

  27. Teams, Reviews の構成
    User
    Cloud SQL
    (MySQL)
    React
    +
    Redux
    API
    (Go)
    Frontend (SPA) Backend (Microservices Platform)
    REST
    Sentry
    DataDog
    PagerDuty

    View Slide

  28. Go - Backend
    Go
    API サーバーとして
    RESTのためのフレームワーク(公開予定)
    ● 型
    ● 社内の Backend の潮流として
    運用でカバーするためのツール群
    (一時的なもの)
    PHP

    View Slide

  29. JavaScript - Frontend
    React/Redux
    フロントエンド SPA
    ● 充実したエコシステム、情報量
    ● メンバーのナレッジ
    UIフレームワーク
    ● Reviews: Bootstrap 4 + reactstrap
    ● Teams: Ant Design
    redux-actions
    Flow

    View Slide

  30. センシティブなデータの扱い方
    ● 給与や評価の情報 …
    ● 開発チームや SRE でも権限のない情報を含む開発
    当初
    ● 最小の権限管理
    ● 操作ログの保存
    ● 権限保持者へのツー
    ル提供
    ● 運用時のクエリレ
    ビュー
    今後
    ● データの暗号化
    ● オペレーション上のミス
    や悪意からデータを守

    View Slide

  31. センシティブなデータの暗号化処理
    Cloud SQL
    (MySQL)
    API
    (Go)
    サーバーサイドで
    暗号化/復号
    Cloud KMS
    暗号化された
    データ
    Browser
    RAW/復号された
    データ
    秘密鍵の保管
    SELECT
    しても
    ***

    View Slide

  32. 暗号化への道のり
    データマイグレーション
    Phase 1
    Phase 2
    Phase 3
    暗号化されたデータとRAWデータ
    の両カラムを保持
    暗号化されたデータのみを利用し、
    RAWデータを削除

    View Slide

  33. CSE の今後

    View Slide

  34. CSEの今後
    ● CSE という取り組みの認知
    ● ベストプラクティスの共有
    ● 共通の悩み事
    ● 課題抽象化
    ● ...
    ● 業界における「新し
    いエンジニアリング
    組織」の定義
    ● ツールそのものを共
    有することも …

    View Slide

  35. まとめ

    View Slide

  36. まとめ
    ● 本日話したこと
    ○ 「CSEとは」「本質」「もし始めるならば」「技術」
    ● ブースコーナーに CSE もブースをだしています
    ○ ぜひ遊びに来てください (質問も歓迎です)

    View Slide

  37. View Slide