ローソンデジタルイノベーション(LDI) コンシューマーサービス部で、iOS/Android開発マネージャーをしている阪口です。
はじめに
私たち、ローソンデジタルイノベーション(LDI)は、 コンビニエンスストアチェーン「ローソン」の価値を最大化させるために生まれた戦略ITサービス会社です。 テクノロジーやITの力を駆使して、より豊かな生活を実現することを目標に、 あらゆる取り組みを行なっています。
主なプロダクト
コンシューマーサービス部では主にローソンアプリの開発を行っています。
こちらのアプリでは以下のような機能を提供しています。
- クーポン
- アプリ予約
- スマホレジ
- etc
iOS:https://apps.apple.com/jp/app/id515191813
Android:https://play.google.com/store/apps/details?id=jp.co.lawson.android
他にも各種メディアに開発した内容が取り上げられたりもしています!
開発環境
プロセス
スクラムを導入して開発を進めています。
ベストな開発プロセスを日々模索して改善を続けています。
開発ツール
LDIでは一般的な技術とツールも利用していますが、社内のオリジナルツールも存在しています。
- GitLab
- Jira
- Miro
- 社内のオリジナルツール
- GitLab上のメンションコメントをSlackに通知するbot(Yagi)
- ブランチマージ時に該当チケットを自動クローズするbot(Yatsuhashi)
- テスト配布用ビルド作成完了をSlackに通知するbot(Suzuka)
- コードレビュー自動化ツール(Yonakuni)
- 独自UI部品集(DesignJetpack)
ちなみに、オリジナルツール開発者には命名権がもらえます!
生成AI環境
LDIでは生成AI環境の導入も進めています。
- Slack AIチャットボット(ローソンアプリ仕様問い合わせ)
- AIコーディングエージェント(Cline for LDI)
- 生成AI自動コードレビュー
- 生成AI活用基盤
まだ発展途中ですが一般的なAIエージェントやオリジナルツールなどの導入による生産性向上やエンジニア体験改善などにチャレンジしています!
CI/CD
GitLab Runnerを利用してCIを実施しています。
Lintやテストコード実行が自動で動作する環境を構築しています。
デザイン
遷移設計、画面設計、開発チームへの実現性(フィジビリティ)確認、UIデザイン制作、開発チームへのデザイン連携 の一連をデザインチームで実施しています。
使用ツール
遷移・画面設計:
- Adobe XD
- PowerPoint
- Confluence
UIデザイン:
- Sketch
デザイン連携:
- Figma
開発
採用技術の全体像

今年は、生成AI環境を全体像に組み込んでいます。
また、開発はアジャイル開発のスクラムを採用しており、レトロスペクティブではMiroを利用してKPT分析を実施しています。
今後は、生成AI環境をより強化し、開発環境の向上に努めていきたいです。
採用アーキテクチャ
アプリ:Clean Architecture + MVVM
サーバー:Clean Architecture
依存関係が少なくメンテしやすくテストコードも実装しやすいアーキテクチャを採用しています。
使用言語や主なライブラリ
iOS:
- Swift
- Combine
- Swift Concurrency
- RxSwift/RxCocoa
- Alamofire
- R.swift
- GRDB
- Quick/Nimble
Android:
- Kotlin
- Kotlin Coroutine
- Android Jetpack(Room, Navigation, ConstraintLayout ... )
- Hilt
- Retrofit
- MockK
サーバー:
- Go
- Gin
- zap
- Ginkgo
品質
コーディング規約、LinterやFormatterを用いてコードの品質を高めています。
アプリケーションの品質に関してはテストコードを書きながら開発するよう日々取り組んでいます。
UIやサーバーとの結合部分のテストの自動化にも取り組んでいます。
改善活動
iOSは、RxSwiftからSwift ConcurrencyやCombineへの移行が90%ほど完了しており、残りの移行も対応中です。
また、スクラムで開発を進めていることもあり定期的に振り返りを実施し、より良い開発プロセスを常に模索しております。
コードレベルの振り返りも定期的に行っており、
- 開発時点では気づけなかった技術的負債に対するリファクタ
- ライブラリ更新やOSバージョン更新など最新情報への追従
- 製品品質向上に向けたテストナレッジの蓄積および自動化
- 定型業務のCIへの組み込みやCIの速度向上
- あったら便利そうなDevOpsツールの開発
などなど日々課題の抽出と改善に取り組んでいます!
締めのご挨拶
これから定期的に技術ブログを更新していくので、興味がある方は是非「読者になる」で応援していただけますと幸いです。
今後ともローソンデジタルイノベーションをよろしくお願いいたします!
ご参考まで、昨年度にご紹介したLDIの開発環境に関するブログ記事は、以下からチェックできます。 techblog.ldi.co.jp