Skip to main content
  1. Histories/

ウェディング関連メディアアプリの開発

期間 役割 規模
2020年9月〜 iOSエンジニア iOS 1名。開発にあたっては、ディレクター・デザイナー・サーバサイドエンジニア・フロントエンドエンジニアと連携しつつ開発
言語 アーキテクチャ FW・ツール等
Swift MVP UIKit, Combine
OSS: Firebase, Adjust, Alamofire, PromiseKit等
Design: Adobe XD
ウェディング関連のメディアアプリの開発に従事。
デザインリニューアルやSign in with Appleへの対応を経験。
iOSのエンジニア以外でも、アプリのビルド・AppStoreへの配信が行えるようスクリプトも整備。

担当した業務 #

  • デザインリニューアル
    • 難しかった部分
  • その他
    • 新機能追加・既存機能の改修
    • Sign in with Apple対応
    • リリーススクリプトの整備(後述)

リリーススクリプトの整備 #

  • 課題
    • 開発以外の定常的なリリースを、業務委託のエンジニアに依頼していた
    • 定期的なアプリリリースは、社内のエンジニア(not iOS)で完結したい
  • 要求
    • 作業者: Xcodeを起動したり、Organizerの操作待ちを避けたい
    • 技術面: GitHub Actionsを使える環境にはあるが、先方からは今後検討ということで、一旦ローカルで自動化する
  • アプローチ
    • Xcodeの知識がなくてもリリースできるように、AppStoreへのアップロードまでをスクリプト化
    • Fastlaneを使わない
      • RubyバージョンやFastlaneのバージョン管理を避けるため
  • 実施したこと
  • 結果
    • 社内のエンジニアでもAppStoreConnectへのアップロードが一発で完了
    • ビルドバージョンも自動付与できるので、アップロードし直しも防げる
  • 今後
    • GitHub Actionsを使うように整えたい

習得スキル #

  • Xcode関連のコマンド知識
    • xcodebuildコマンドを使用したアーカイブ、App Store Connectへのアップロード

開発で意識していたこと #

  • 開発時は、少しリファクタリングをしてから、開発に取り掛かるようにした
    • 案件が不定期のため、負債がたまりがち
    • 不使用コードの削除、クラスの整理、ライブラリのバージョンアップなど

開発以外の業務 #

  • アプリに関する技術情報やトレンドを、委託元にお知らせする
    • OSのバージョンアップに関するお知らせ
    • Apple Store Connectの仕様変更
    • アプリのターゲット層が使用する他アプリの状況など