採択
2023/09/01 18:10〜
Track D
スポンサーセッション(20分)
スポンサーセッション

グループ企業を横断するGENDAにおけるアプリ開発の最大効率化手法

nato_ring Kohei Natori

株式会社GENDAは純粋持株会社でありながらエンジニアが在籍し、グループ企業各社のプロダクト開発を行っています。

私たちモバイルエンジニアの使命はどのプロダクトにおいてもスピーディかつ堅牢で高品質なアプリ開発を行うことです。
しかしながらプロダクトによって使用する技術、歴史、文化、成長フェーズなどが異なる中でこれを実現することは容易ではありません。

本セッションでは、グループ企業を横断した少人数で効率的な開発を実現するために、弊社モバイルエンジニアのこれまでの取り組みとその成果をご紹介します。

採択
2023/09/03 15:05〜
Track B
スポンサーセッション(20分)
スポンサーセッション

スタートアップ企業のフェーズ転換期を乗り越えるためのリアーキテクト戦略 -個からチームへ-

horitamon horitamon

Voicyは「音声プラットフォームVoicy」を開発している創業7年目のスタートアップ企業です。
2022年7月に27億円の調達を発表し、スタートアップのフェーズとしても事業成長を求められるフェーズとなりました。
それに伴い、モバイルアプリに求められる品質レベルもプロダクトリリース初期と比べて大きく変化しました。

本セッションでは、スタートアップ企業が事業成長のフェーズ変化で直面する課題と、それ乗り越えるためのリアーキテクト戦略についてお話しします。

  • 「魅力的品質」だけでなく「当たり前品質」も重視する品質基準への転換
    • ユーザー数増加によるスケーラビリティ問題への対策
    • n=1不具合の扱い方の変化
  • 複数チームによる並列開発化
    • 機能の疎結合化、脱共通化
    • 非機能要件の動作を保証するためのテスト設計
採択
2023/09/02 11:35〜
Track D
スポンサーセッション(20分)
スポンサーセッション

マルチモジュールアーキテクチャへの移行と開発プロセス改善の取り組み

kurapy_nnn Natsumi Oishi

楽天グループが運営する「楽天ラクマ」は、今年でサービス開始12年目を迎えます。
Objective-CのSwiftへの書き換え完了後の取り組みとして、アーキテクチャの改善、SwiftUIへの置き換え、開発プロセスの改善などに取り組んでいます。
また、改善を行う中でリリース前のテスト項目に漏れが発生するなどの課題に直面し、ドキュメンテーションや共有方法について改善を行うことでコミュニケーション面での課題の改善を図っています。
このセッションでは、ラクマで行っているリファクタリングの内容や開発ルールなどの取り組みについてご紹介します。

  • マルチモジュールアーキテクチャへの移行
  • SwiftUIの拡大、xib/storyboardの削除
  • Gitブランチ戦略とGitHub Actionsを使ったリリースプロセスの自動化
  • リリースプロセスにおけるドキュメンテーションや組織内での共有方法
採択
2023/09/01 18:10〜
Track B
スポンサーセッション(20分)
スポンサーセッション

Infra App としての取り組み

Hama

ここ数年でPayPayはとても大きく成長することができ、現在登録ユーザー数は5,800万人を突破(2023年6月時点)する事ができました。
多くのユーザーがPayPayを利用してくださり、大変ありがたいと感じています。
しかし、私たちは全ての国民がストレスなくPayPayを利用できる環境を提供する責任を感じています。
そこで、毎週リリースしている様々な取り組みを通じて、より使いやすいInfra Appを目指しています。
今回はそんなPayPayの取り込みについてご紹介していきます。

  • フォントサイズ対応
  • 言語対応
  • 低スペックユーザー / 低インターネットコネクションユーザー向けにキャッシュを効率化させ、起動時間や表示時間の効率化
  • Voice over対応
  • 障害時の簡易版表示
    etc
採択
2023/09/01 18:10〜
Track A
スポンサーセッション(20分)
スポンサーセッション

SwiftUIの進化についていくためにやったこと

motoshima1150 中島 元成

WWDC 2019 で発表されたSwiftUIですが、毎年たくさんの機能アップデートがありAPIも合わせてドラスティックに変化しています。
「スタディサプリ 中学講座」では、iOS 14 以降を対象としてフルSwiftUIを目指して開発をしてきました。(現在は iOS 15 以降対象)

SwiftUIが進化していく一方で運用する上では以下のような課題がありました。

  • 利用できる環境は iOS 16 以上など、サポートバージョンの兼ね合いですぐに取り入れられない
  • API仕様の変更によって既存の実装が非推奨となり、最適なコードと言えない状態となってしまう

このセッションでは「スタディサプリ 中学講座」の運用を通して、進化していくSwiftUIの仕様にどのように対処しているかお話しします。

採択
2023/09/02 15:05〜
Track A
スポンサーセッション(20分)
スポンサーセッション

他社からのアプリ譲受による実践的な学び

satsukiasa Mika Arai

今年2月、アプリの譲受を初めて経験しました。
他社で運営していたAndroid含め計6アプリを受け取るにあたり、事例は多くありましたが情報が少なく、またとても貴重な機会でした。
以上の内容を通じて、アプリ譲受においての実践的な学びやポイントを具体的な事例を交えながら共有します。

・事前に取り決めたこと(プッシュ通知サービスも変更するため譲受前後の送信予定など)
・当日までの準備(AppStoreConnectでの準備、実装、Firebaseの譲受)
・譲受当日の作業
・譲受後の運用

採択
2023/09/03 11:35〜
Track B
スポンサーセッション(20分)
スポンサーセッション

建築・建設業界により特化していくために!ANDPADアプリ オフライン化の取り組み

藤田雄太

アンドパッドでは建築・建設業界に向けてクラウド型建設プロジェクト管理サービス「ANDPAD」を開発・提供しています。
従来のANDPADは、通常のSaaSと同様にオンライン環境下での活用をメインに開発してきました。
しかし、高層階や地下、辺境地での工事の場合、電波が届かないことも多く、そういった環境下でもANDPADをご活用いただけるよう、ANDPADアプリのオフライン化に取り組んでいます。
このセッションでは、この現在ANDPADが直面しているオフライン化の取り組みについて、どのように工夫し解決しているのかについてご紹介いたします。

採択
2023/09/03 11:35〜
Track C
スポンサーセッション(20分)
スポンサーセッション

「ニフティ不動産」 アプリにおける物件探し体験向上への技術的な取り組み

saikei718 Keisuke Saito

ニフティライフスタイル株式会社が運営する「ニフティ不動産」アプリは、さまざまな検索条件から希望の条件を選んで物件を検索し、豊富な物件情報をもとに好みの物件に問い合わせをする動きがメインのアプリです。
この「物件探しの体験」をより向上させるために、iOSのさまざまな技術を取り入れて機能追加に取り組んできました。
本セッションでは、「ニフティ不動産」の賃貸版iOSアプリにおける取り組みの具体例をご紹介します。

  • Look Around を活用した、物件や最寄駅周辺の様子を 360 度見渡して散策ができる『バーチャル散策機能』
  • Combine と Realm を組み合わせて実現した、『インタラクティブな検索条件絞り込み機能』
採択
2023/09/03 15:05〜
Track D
スポンサーセッション(20分)
スポンサーセッション

iOSエンジニアに求められる役割について

kic_jump 赤澤 海知

iOSエンジニア、と一言で言っても具体的に何をする人なのでしょう。
思い浮かぶざっくりした説明だと、iOSアプリを作る人、でしょうか。

ですが、実際のプロジェクトではさまざまな役割を持った人が集まって一つのiOSアプリを作っています。
つまりプロジェクトメンバー皆がiOSアプリを作る人です。

では、Swift等のプログラミング言語を使ってiOSアプリのコーディングをする人、が正しいでしょうか。
私はそうは思いません。正確には、それだけでは足りないと思います。

実際のプロジェクトにおいてiOSエンジニアに求められる役割とはなんなのでしょうか。

本発表では、アプリ開発においてiOSエンジニアにはどのような役割が求められるのか
我々チームラボでのアプリ開発の流れを追いながら迫っていきたいと思います。

採択
2023/09/03 15:05〜
Track A
スポンサーセッション(20分)
スポンサーセッション

SwiftUIに適した新アーキテクチャの導入に挑む

tinpay 福井 章平, 中山 龍

ChatworkのiOSアプリは2011年にリリースされ、12年間で様々な技術変更や新機能の追加を行ってきました。しかし、長期間の開発では技術的な負債が蓄積されます。そこで昨年、新しいアーキテクチャを導入し、負債の解消に取り組みました。

新アーキテクチャを社内では「SVVS(Store, View, ViewStateの頭文字)」と呼んでおり、弊社の技術顧問であるkoherさんとの毎週の議論や、技術合宿を経て生まれました。

SVVSはSingle Source of Truthを考慮し、シンプルでオーソドックスな構成を実現しています。特にSwiftUIとの相性が良く、学習コストも低く、サードパーティのライブラリやフレームワークに依存しない点が魅力です。

このセッションでは、「SVVS」の開発秘話や現在のUIKit / MVVMからの導入計画について分かりやすく説明します。

採択
2023/09/02 15:05〜
Track C
スポンサーセッション(20分)
スポンサーセッション

なぜ、弊社はFlutterを捨ててネイティブ化(Swift / Kotlin)にコミットしたのか

佐藤 直之

RIZAPでは、RIZAPのBody Make事業のほか、2022年7月より、運動初心者向けの完全無人コンビニジムchocoZAP (ちょこざっぷ) を本格的に全国的に展開しています。 サービスローンチと同時にchocoZAPアプリをリリースし、入退館管理にとどまらず運動記録やアプリ内ゲームコンテンツなど改良を重ねてお客様に使用していただいています。

本セッションでは、そのRIZAPがなぜ、最初にFlutterを選択し、のちにFlutterを捨ててネイティブ化(Swift / Kotlin)を選択したのか、についてご紹介させていただきます!

104
採択
2023/09/02 11:35〜
Track C
スポンサーセッション(20分)
スポンサーセッション

6年間運用したiOSアプリのリアーキテクトについて具体的に解説

daikimat 松元 大樹

kintone は、サイボウズが世界中にチームワークを広めるため開発している「業務改善プラットフォーム」のクラウドサービスです。
kintone のモバイルアプリは約6年運用してきました。
日々の開発の中で、いくつかの保守的な判断が積み重なりコードの複雑性は増していきました。
ビジネスモデルの変化やチーム構成の変化への対応に追われ、開発速度は徐々に低下していきました。
本トークでは、このような問題のある状態に対して行ったリアーキテクトについて話します。

  • 新機能開発と並行開発でのリアーキテクトの進め方
  • 具体的なリアーキテクトの内容
  • リアーキテクトがもたらした新技術導入やSwiftバージョン追従への見通しの変化

この実例を元に、聴衆の皆様が大小様々な負債を解消していく助けとなることを期待しています。

採択
2023/09/03 11:35〜
Track D
スポンサーセッション(20分)
スポンサーセッション

メタバースプラットフォームを支えるiOS開発と運用

TAAT626 TAAT

メタバースプラットフォーム clusterの開発では、3DCGやゲームエンジンだけでなく、手軽に体験できるモバイルアプリケーションもプラットフォームを支える大事な要素です。clusterはマルチプラットフォームに対応しており、iOS開発を担当するエンジニアも多く在籍しプラットフォームを支えています。

clusterでは、バーチャル空間内の体験をUnityで、バーチャル空間外の体験をSwiftで開発しており、それぞれがどのようなインターフェイスで連携しているかについてお話します。また、clusterのiOS開発におけるモノレポのリポジトリ運用やFeature Flagによるトランクベース開発、GitHub ActionsによるLintチェックや自動テスト、マルチプラットフォームへの定期リリースなどの運用についてもご紹介します。

採択
2023/09/02 15:05〜
Track B
スポンサーセッション(20分)
スポンサーセッション

SwiftUI + KMM 開発で見えたそれぞれの長所と短所

_swiftty 林達也

Wantedly では 2020年からモバイルアプリのロジック部分のクロスプラットフォーム技術として Kotlin Multiplatform Mobile (KMM) を採用しています。

2022年からは徐々に SwiftUI 導入を進めて、プロフィールをリニューアルするプロジェクトでは全面 SwiftUI での開発を試みました。
また、プロフィールのリニューアルは、Android が先行して実装し、KMM の実装もすでに完成していました。
そのため、このプロジェクトは、KMM と SwiftUI を初めて組み合わせるプロジェクトとなりました。

本トークでは、このような状況で KMM と SwiftUI の組み合わせによる開発の進め方、遭遇した問題、技術的な工夫や実績についてお話しします。

採択
2023/09/01 18:10〜
Track C
スポンサーセッション(20分)
スポンサーセッション

「出会い」の体験を向上させるために、私たちが向き合っていること 〜Core Bluetooth,Core ML,SwiftUIの活用事例〜

tanibeta 谷口 尚

Sansan株式会社では、SansanとEightの2つのモバイルアプリを提供しています。

Sansanは営業DXサービスとして、100万件を超える「企業情報」を提供し、ユーザーの営業活動を加速させています。
モバイルアプリで企業情報を活用してもらうために、SwiftUIを用いたグラフ描画に向き合いました。
また、Eightでは今年4月にCore Bluetoothを活用し、
Eightユーザー間で非接触で名刺交換を行える機能がリリースされました。
これらの機能の紹介とともに、開発を支えた技術について紹介します。
そして、名刺管理のための名刺撮影で活用されているCore MLについても紹介します。

このセッションを通じて、参加者の皆さんに、
Sansan株式会社のモバイルアプリエンジニアが日々向き合っていることをお伝えします。

採択
2023/09/02 15:05〜
Track D
スポンサーセッション(20分)
スポンサーセッション

minneを通じて感じた歴史とその先を見据えた取り組みや挑戦に触れて

fumiyasac 酒井文也

弊社GMOペパボが運営するハンドメイドマーケット「minne(ミンネ)」は、今年で11周年を迎え、様々な思い出や歴史の変遷がありました。

歴史が長いサービスの開発では「目に見えない複雑さ」や「小さな事が重大である」等、その歴史故の難しさも数多くあります。一方で、その困難を解決した先人の偉大な資産やストーリーも一緒にあります。そして、より良く&より価値を出すため、その歴史を踏まえ、その先を見据えた取り組みや挑戦が求められます。

本セッションでは、minneのiOSアプリ開発を通じた「その先を見据えた取り組み」の具体例を、実務での体験談やチーム内開発での事例と合わせてご紹介できればと思います。

【取り組み事例】

  1. MVVM + SwiftUIへリプレイスする取り組み
  2. iOSアプリの基盤部分の変化へできる限り追従する挑戦
  3. 施策や調整時のサーバー側との積極的な関わりや共同作業
採択
2023/09/02 11:35〜
Track A
スポンサーセッション(20分)
スポンサーセッション

真似できる!実践的なプロジェクト構成 ~bitkey流簡単レシピ~

Kyo Arayama

ビットキーは「テクノロジーの力であらゆるものを安全で、便利で、気持ちよく繋げる」をミッションに掲げるスタートアップ企業です。ハードウェアからソフトウェアまで扱う幅の広さと24時間安定して動くiOSの顔認証システムからNFCやBluetoothを扱う技術の深さに挑戦しています。
このセッションではisowordsの学びから守破離で実践した内容から見えてきた、明日から使える方法と教訓をご紹介します。

  • Swift packages中心の取り組み
  • app.xcodeprojのポテンシャルを引き出すプロジェクト構成
  • Swift Package Pluginsの導入と遭遇した不具合
  • モジュール間の依存解決とリソースの管理
  • testplanを用いたモジュール間のテストの集約
  • CI/CD環境を単純なシェルスクリプトで実現
採択
2023/09/02 11:35〜
Track B
スポンサーセッション(20分)
スポンサーセッション

【iOSエンジニアが(株)ゆめみさんを紹介する 】

いしがき

主に会社紹介となります。技術的なことはあまりお話しせず、エンジニアの観点から会社の制度・仕組み・体制等についてお話しさせていただきます。

エンジニアをやる上で技術的なスキルを身につけ、向上していくことはもちろんのことですが、それ以前に働く環境や考えなければいけない様々なこともあると思われます。会社に属している方なら尚更です。
なので、ここiOSDCというディープなiOSについてのお話ができる場であえて技術の話をあまりせず、「成長できる会社NO.1」を目指す会社のエンジニアがどんな働き方をしているか、どんなことができるか、などを弊社の紹介という形でお話しさせていただければと思います。

是非、本セッションに参加していただき、(株)ゆめみさんの魅力をご自身の目でお確かめください。

採択
2023/09/03 15:05〜
Track C
スポンサーセッション(20分)
スポンサーセッション

VIPERアプリにSwiftUIを導入したら、View層の責務がより分離できた話

38Punkd 青木振一郎

「VIPER」とは、iOSアプリケーションにクリーンアーキテクチャを適用したものです。
VIPERでは、アプリケーションの論理構造を責務の異なるレイヤーに分離し、依存関係を分離することで、レイヤー間の境界でのテストが容易になります。

弊社では、VIPERアーキテクチャを基にしてViewレイヤーをStoryboardやUIKitで実装してきました。
今年度から、弊社サービス「TUNAG」のサポートバージョンを13以降に変更し、SwiftUIを導入できるようになりました。
SwiftUIを導入することによって、Viewレイヤーの宣言的記述による実装ができ、開発速度の向上が見込めます。

VIPERアーキテクチャを活用しながら、レイヤーごとの責務を分けつつ、スピーディにViewレイヤーを開発するための実践的な取り組みをご紹介させていただきます!

レギュラートーク(20分)

iPhone だけで AI チャットを動かす方法

niw Yoshimasa Niwa
niw

今や OpenAI 社の ChatGPT に代表される AI チャットはさまざまなアプリケーションに組み込まれて活用されるようになりました。

しかし多くのアプリは外部のチャットサービスにリクエストして結果を表示するというものがほとんどで、その結果、入力された内容がユーザーの知らないうちに外部に送信される懸念、また外部のサービスに依存する関係上、アプリにはさまざまな制約が残ります。

このセッションではそれらの問題を踏まえて、また技術的な検証を含めて、CoreML を含めたさまざまなオンデバイスで動作する AI フレームワークを検討します。
そして、実際に iPhone だけで動作する AI チャットアプリを作成し、巨大な LLM のようなモデルの取り扱いや、オンデバイスのメモリ限界などの問題を検討します。

対象とする方: iOS アプリ開発の経験がある中・上級者