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

新卒のiOSエンジニアが”クックパッドの今”を紹介!

 新卒のiOSエンジニアが”クックパッドの今”を紹介!

Haruta Yamada

August 23, 2024
Tweet

More Decks by Haruta Yamada

Other Decks in Technology

Transcript

  1. © 2024 Cookpad Inc. 2 プロフィール Haruta Yamada (paruru) -

    2024/04~ 新卒入社 (レシピ事業部) - 2019/06~ 就業型インターン - 領域: iOS, Webfrontend - 趣味: ☕ 🍳
  2. © 2024 Cookpad Inc. 6 アジェンダ • OneExperienceとは? • Globalでの開発について紹介

    ◦ 開発環境の違い ◦ 多言語対応 ◦ デザインシステム
  3. © 2024 Cookpad Inc. 8 • ユーザー体験を統一するプロジェクトが始動(2023/10~) • 日本のシステムをグローバルのシステムへ移行(iOS, Android,

    Web) ◦ 日本のプロジェクト、リポジトリはコードフリーズ予定 ◦ 多言語対応やレシピを取り込む仕組みが整っている 統合プロジェクト(One Experience)
  4. © 2024 Cookpad Inc. 9 見た目や機能も かなり違う e.g.  • 食べ方提案(日本)

     • 今日作る(日本)  • コメントでのやりとり(海外)  • リアクション(海外)
  5. ios-cookpad (日本) - VIPER - SwiftUIの導入 - GraphQL(一部) - モバ基による

    開発環境の整備 © 2024 Cookpad Inc. 13 https://techconf.cookpad.com/2019/kohki_miki.html 開発環境の違い
  6. Domain, Data Layer Presentation Layer Flow Logic global-ios (海外) -

    MVVM-C - UIKit - OpenAPI © 2024 Cookpad Inc. 14 ViewModel Interactor Model ViewController View Coordinator Datastore Model Repository Service Service Service 開発環境の違い
  7. © 2024 Cookpad Inc. 16 多言語対応(翻訳) - OneSkyでフレーズと翻訳を管理(iOS, Android, Web)

    - 英語でフレーズを追加し、後から日本語などの翻訳を取り込む - 日本限定の機能でも翻訳対象 (あとから他の国に展開することもあるため ) https://www.oneskyapp.com/ 33個のLocalizable.stringsが存在(被り有り) 日本語、英語、スペイン語、ドイツ語、アラビア語、ウクライナ語、、
  8. © 2024 Cookpad Inc. 17 多言語対応 (翻訳) Github OneSky フレーズの追加、削除

    翻訳の追加、削除 コンポーネントの変更による フレーズの追加、削除 Bitrise(CI/CD) 各リージョン向けの 翻訳を追加 エンジニア 各リージョンの翻訳者
  9. © 2024 Cookpad Inc. 18 多言語対応 (翻訳) Cooksnap つくれぽ Today

    今日つくる 人気のキーワード Today’s popular searches
  10. © 2024 Cookpad Inc. 22 多言語対応 スペース区切りで単語を分割したい “鶏胸肉 牛乳” -> “鶏胸肉”,

    “牛乳” スペース区切りで単語を分割できない “鶏胸肉” -> “鳥”, “胸” 言語や商習慣によってコンテンツや動作に違いが出る
  11. © 2024 Cookpad Inc. 23 機能出し分け A/B Testing ios-cookpad: -

    user-features(feature flag) - パターンにマッチしたユーザーに機能を提供可能 - Redshiftで抽出したユーザーグループに対して提供可能 global-ios: - FeatureToggle - アプリのバージョンやリージョンに絞って提供 - APIの1機能として柔軟に変更ができる Picture 画像の最大幅はガイド線に準じて配置してください Picture 画像の最大幅はガイド線に準じて配置してください ※どちらもローカルのフラグをコード上で定義可能
  12. © 2024 Cookpad Inc. 33 ダークモード • ハイコントラストモードへの対応 デザインシステムから逸脱した 色指定が増加

    ライトモードの色指定はそのままに、このコンポーネントだけ変えたい、、、
  13. © 2024 Cookpad Inc. 34 OneExperienceを進めてみて • これからは海外にいるユーザーにも向き合っていく ◦ ローカライズが前提の開発になっていく

    • 移行により負債を生み出してしまった ◦ リリース後の課題 • 今が一番面白いタイミング ◦ 新卒関係なく様々な挑戦できる • iOSDCに間に合ってよかった 移行後初めてのレシピ投稿