【フルリモート/週5/Swift】数百万人が日常的に利用する小売・決済系iOSアプリの開発およびリファクタリング

掲載終了2ヶ月前

【フルリモート/週5/Swift】数百万人が日常的に利用する小売・決済系iOSアプリの開発およびリファクタリング

5,600〜6,500/時

作業内容

【フルリモート/週5/Swift】数百万人が日常的に利用する小売・決済系iOSアプリの開発およびリファクタリング ### お任せしたいこと [役割]iOSエンジニアとして、全国の店舗で数百万人のお客様がポイント管理やバーコード決済に利用する「小売・決済連携アプリ」のiOS版における新機能開発、および継続的なコードベースの改善をお任せします。 [役割に対して求める成果]事業側からの要望(新キャンペーン用UIの実装、クーポン機能の拡張など)を、既存の決済フローやポイント付与のロジックに影響を与えずに安全に実装すること。また、長年の運用で肥大化したMassive View Controller(Fat VC)やレガシーなObjective-C/古いSwiftコードを紐解き、SwiftUIや最新のアーキテクチャへと着実にリファクタリングを進め、アプリの保守性とクラッシュフリー率を維持・向上させること。 ### 具体的な業務内容 ・Swiftを用いた、iOSネイティブアプリの新機能に関する詳細設計、実装、テスト ・既存のUIKit(Storyboard / XIB)で構築された画面から、SwiftUIへの段階的な移行およびコンポーネント化 ・レガシーなクロージャ(コールバック)やRxSwiftで書かれた非同期処理を、Swift Concurrency (async/await) へと安全に置き換えるリファクタリング ・MVVM等のアーキテクチャに基づく、肥大化したViewControllerの責務分割とビジネスロジックの抽出 ・Firebase Crashlytics等を活用したクラッシュレポートの分析、およびInstrumentsを用いたメモリリーク(循環参照等)の特定・修正 ・バックエンドエンジニアと連携したREST API連携の実装、およびオフライン時や通信エラー時の堅牢なエラーハンドリング ・XCTestを用いた単体テスト・UIテストの拡充、およびfastlaneやBitrise(またはGitHub Actions)を利用したCI/CDパイプラインの保守・改善 ・PdM(プロダクトマネージャー)やデザイナーと連携し、Figma上のデザインに対してiOSのヒューマンインターフェイスガイドライン(HIG)に沿った現実的な実装方針を提案 ### 必須スキル・経験 ・iOSネイティブアプリの開発実務経験(3年以上) ・Swiftを用いたアプリケーション開発経験(2年以上) ・UIKitを用いたUI構築の実務経験、およびiOSのメモリ管理(ARC等)に関する理解 ・Git/GitHubを用いたプルリクエストベースでのチーム開発経験 ### 歓迎スキル・経験 ・SwiftUIを用いたUI開発、および本番環境での運用経験 ・Swift Concurrency (async/await) の利用経験、またはRxSwift / Combineの実務経験 ・MVVM、TCA (The Composable Architecture) 等のアーキテクチャに関する理解と実装経験 ・稼働中のアプリにおいて、大規模なリファクタリング(Fat VCの解消など)を主導した経験 ・XCTestを用いたテストコードの記述、およびテスト駆動開発(TDD)の経験 ・fastlane等を用いたアプリの自動ビルド・配信パイプラインの構築・運用経験 ・Androidアプリ(Kotlin)に関する基礎知識、またはクロスプラットフォーム開発の経験 ### 開発・業務環境 開発言語:Swift (一部保守用のObjective-Cコードあり) UI・アーキテクチャ:SwiftUI, UIKit, MVVM (一部TCAの導入を検討中) 非同期処理:Swift Concurrency, Combine (一部レガシーなRxSwiftあり) インフラ・BaaS:Firebase (Crashlytics, Analytics, Remote Config) CI/CD・ツール:fastlane, Bitrise (または GitHub Actions), Xcode Instruments デザイン・コミュニケーション:Figma, GitHub, Jira, Slack, Zoom ### プロジェクトチームについて モバイルアプリ開発部のiOSチームへの配属となります。「すべてを最新のフレームワークで書き直す」というアプローチではなく、店舗のレジ前で確実に決済ができる「安定性」を最優先とし、日々の機能開発と並行して少しずつ技術的負債を返済していく手堅いカルチャーです。状態管理の複雑さや画面遷移のバグを防ぐため、コードレビューではエッジケースの考慮やメモリ管理について丁寧に指摘し合う体制が整っています。 ### 求める人物像 ・「とりあえず動く画面」を作るだけでなく、ネットワークが不安定な店舗内での利用や、バックグラウンド復帰時などのエッジケースを考慮した堅牢なコードを書ける方 ・過去に書かれたレガシーコードを嘆くのではなく、影響範囲を慎重に調査しながら、よりテストしやすい構造へと改善していく泥臭い作業を楽しめる方 ・エンジニア以外のメンバー(PdM、デザイナー、CS)に対しても、技術的な課題やiOS特有の挙動(制約)を分かりやすい言葉で説明し、建設的に仕様をすり合わせられる方 ### 仕事の魅力 店舗のレジでの支払いなど、ユーザーの日常の買い物体験に直接関わるため、バグのないサクサク動くアプリを提供することがビジネス上の価値に直結する非常にやりがいのあるポジションです。長く運用されている巨大なアプリならではの「UIKitからSwiftUIへの安全な段階的移行」や「Swift Concurrencyを用いたモダンな非同期処理へのリファクタリング」といった、iOSエンジニアとして実用的で市場価値の高い運用スキルを着実に磨くことができます。 ### 働き方 #### リモート環境 **[フルリモート]** 基本的にフルリモートで働いていただけます。

稼働条件

週5日 / フルリモート

契約形態

業務委託(フリーランス)

開発環境

Swift

募集回数

1回

スキル

バックエンド:
モバイルフレームワーク:
デザイン:
ビジネスツール・コミュニケーション:
その他:

企業名

株式会社Kaizen Tech Agent

サービス/プロジェクト名

詳細スケジュール/リリース時期

現場責任者の雰囲気

開発体制の詳細

詳細は面談でお伝えします。ご相談ください。

一部の情報は非公開の場合があります

案件について詳しく聞いてみませんか?

知りたい内容を選んでください(複数選択可)