Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Eight Webフロントエンドの開発者体験(DX)向上のための取り組み / Approaches to improve the developer experience of Eight web frontend

Sansan
November 05, 2021

Eight Webフロントエンドの開発者体験(DX)向上のための取り組み / Approaches to improve the developer experience of Eight web frontend

■イベント

Sansan Builders Stage 2021
https://jp.corp-sansan.com/engineering/buildersstage2021/

■登壇概要
タイトル:Eight Webフロントエンドの開発者体験(DX)向上のための取り組み

登壇者:技術本部 Eight Engineering Unit Eight Career Devグループ フロントエンドエンジニア 鳥山 らいか

▼Sansan Engineering
https://jp.corp-sansan.com/engineering/

Sansan

November 05, 2021
Tweet

More Decks by Sansan

Other Decks in Technology

Transcript

  1. 技術本部 Eight Engineering Unit Eight Career Devグループ フロントエンドエンジニア 大学・大学院ではHCI(Human-Computer Interaction)を専攻し、

    インタラクションデザインを学ぶ。2019年、新卒でSansan株式会社に入社。 採用サービスのUI開発に従事しつつ、Webフロントエンドの開発者体験 (DX)向上に取り組む。 Twitter: @pvcresin 鳥山 らいか
  2. 1. 議論できる場を作る 2. 徐々に進められる技術選定を行う 3. 完璧を求めない 4. 後戻りしないようにする 5. 積極的にアウトプットしていく

    開発者体験(DX) DX向上を徐々に進めていくためのポイント 思い立ったらすぐに議論できる環境が重要 チームで向き合い、合意形成を行う 作業を細かく分割することで、 スキマ時間に差し込むことができる 始めから完璧を求めると進まないため、 ある程度方針が決まったら走りだす 後戻りすれば苦労が無駄になるため、 自動化やドキュメンテーションで防ぐ 技術ブランディングや採用貢献につながり、 モチベーションの向上や工数確保に寄与
  3. フレームワーク React / Redux 言語 JavaScript / TypeScript / Sass(SCSS)

    その他のツール webpack / Prettier / ESLint / stylelint • ドメインごとにフォルダ分けして各チームが開発 • その他にも社内向けライブラリなど、いくつかのリポジトリが存在 EightのWebフロントエンド 技術スタック
  4. 1. コンパイル処理の追加 • ts-loader(transpileOnly: true)+ Fork TS Checker Webpack Plugin

    • tsconfig.json は “strict”: true で型チェックを厳格に設定 2. Gitフック・CIの設定 • コードの自動整形、Lint、テスト、型チェック等 • TypeScriptを書く準備ができたのでリリース TypeScriptの導入 PC版 Eightへの導入手順
  5. • コンポーネントの実装・デザインに バラつきがあった • PC版のUIを刷新し、アプリ版と 合わせる動き そこで、 • コンポーネントライブラリを作成し、実装・デザインを揃える •

    コンポーネントカタログを作成し、デザイナーと認識を合わせる コンポーネントライブラリの作成 概要 デザインシステム構築
  6. まとめ 1. 議論できる場を作る 2. 徐々に進められる技術選定を行う 3. 完璧を求めない 4. 後戻りしないようにする 5.

    積極的にアウトプットしていく DX向上を徐々に進めていくためのポイント 思い立ったらすぐに議論できる環境が重要 チームで向き合い、合意形成を行う 作業を細かく分割することで、 スキマ時間に差し込むことができる 始めから完璧を求めると進まないため、 ある程度方針が決まったら走りだす 後戻りすれば苦労が無駄になるため、 自動化やドキュメンテーションで防ぐ 技術ブランディングや採用貢献につながり、 モチベーションの向上や工数確保に寄与