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

組織戦略と GraphQL、Hasura

組織戦略と GraphQL、Hasura

Yudai Shinnoki

April 21, 2021
Tweet

More Decks by Yudai Shinnoki

Other Decks in Programming

Transcript

  1. - しんのき (Yudai Shinnoki) - https://twitter.com/konoki_nannoki - https://github.com/shinnoki - WASD

    Inc. CTO - React / React Native / GraphQL / Hasura - GraphQL Asia 2021 でスピーカーやりました 自己紹介
  2. 技術スタック React React Native Learn once, write anywhere GraphQL TypeScript

    Hasura GraphQL Engine Generate types from GraphQL schema Generate GraphQL API from PostgreSQL tables
  3. Hasura概要 - Hasura Inc. が作っている Hasura GraphQL Engine というツール -

    PostgreSQL テーブルから CRUD の GraphQL API を自動生成してくれる - 使い勝手はAppSync、Firestoreなどに近い https://speakerdeck.com/shinnoki/hasura-tohahe-zhe-ka-meritutodemerituto user テーブル query { user } mutation { insert_user update_user delete_user } subscription { user }
  4. Hasuraの便利な機能 - リッチなダッシュボード - JWTベースの認証、認可 - リアルタイム通信(GraphQL Subscription) - Serverless

    Functionを使ったビジネスロジック(Hasura Actions) - GraphQLクエリのホワイトリスト(Allow List)
  5. Hasura + GraphQL Codegen - Hasura と GraphQL Codegen を組み合わせて

    TypeScript コードまで生成 - 自分で書くコードが少ない → バグを生む可能性が少ない - デモします - 補完がきく、テーブルを消すと Codegenがコケる
  6. スタートアップのジレンマ - とにかくスピード! - 作る → 触ってもらう → 改善 の繰り返し

    - プロトタイプでもいいが、動くものはもっといい - テックリードがガガッと作ることも
  7. スタートアップのジレンマ - とにかくスピード! - 作る → 触ってもらう → 改善 の繰り返し

    - プロトタイプでもいいが、動くものはもっといい - テックリードがガガッと作ることも - テックリードがボトルネックになる - 運用やセキュリティ診断などに時間を取られる - 採用しようにも結局はテックリードの時間が取られる - 日々共有が行われる仕組みが重要(スクラム、ペアプロ、コードレビュー) 数カ月後...
  8. - 専門領域が分かる人が1人だと、そもそもペアプロやレビューができない - React、React Native、Hasuraの学習コストであれば全員が触れる - 学習コストは低ければ低いほどよい - AppSync や

    Firestore などでもよい - No Code ツールが成熟すればそっちのほうが理想 React + Hasura Frontend Backend iOS Android 全員がフルスタックエンジニア React + Hasura React + Hasura React + Hasura