私について
課題を観察し、必要な技術を学び、実際に使える仕組みとして最後まで形にすることを強みとしています。
ITサポートや業務改善に携わった約8年間では、担当業務の範囲に閉じず、RPAによる定型作業の自動化、IT資産管理の改善、MarkdownとGitを用いたマニュアル整備、全国拠点向け配信システムの構築などに取り組みました。
現在はSwift・SwiftUIを学び、個人開発したiOSアプリ「Re:Mind ランダムリマインダー」をApp Storeで公開しています。iOSアプリ開発の実務経験はありませんが、企画、技術選定、設計、実装、テスト、審査対応、公開までの工程を一通り経験しました。
1. 課題を見つけ、改善を実装まで進める
既存の手順をそのまま受け入れるのではなく、「なぜこの作業が必要か」「技術で負担を減らせないか」を考え、改善案を実装してきました。
定型申請業務をRPAで自動化
全国から届くIT資産の購入・移転・廃棄申請を、社内システムへ手作業で登録する業務がありました。専任担当者が毎日ほぼ一日を費やしている状況を見て、当時リリースされたPower Automate Desktopを自ら調査し、自動化を提案・実装しました。
申請番号や処理内容をExcelへ入力すると、CSVを介してRPAが社内システムへ登録する流れを構築しました。自分の担当外の業務でしたが、現場の負担と新しい技術の可能性を結び付け、実際の運用に載せるところまで進めた事例です。
IT資産管理の一部をExcelからデータベースへ移行
大規模なIT資産の棚卸しでは、拠点ごとにExcelファイルを分割・配布し、作業後に再統合していました。同一ファイルの競合や集約作業が問題となっていたため、管理の一部をMicrosoft Accessへ移行し、複数拠点での更新と集計に伴う負担を軽減しました。
属人化した手順をMarkdownとGitで共有
マニュアルがなく、担当者ごとに異なるメモを作り、異動や引き継ぎのたびに同じ説明を繰り返す業務がありました。検索しにくく差分も追いにくいExcel・PowerPointではなく、Markdownで手順を記述し、Gitで変更履歴を管理する方法を導入しました。
利用者からの質問を反映して継続的に内容を更新し、個人の記憶に依存していた作業を、検索・更新・再利用できるチームの情報へ変えました。
2. 未知の技術を学び、公開できるプロダクトにする
2025年4月から「100 Days of SwiftUI」を中心にSwift・SwiftUIを独学し、その後、個人開発アプリ「Re:Mind ランダムリマインダー」をApp Storeで公開しました。
「Re:Mind」は、日々のタスクに追われる中で忘れがちな、大切にしたい考えや言葉をランダムな通知で思い出すためのアプリです。自分自身の課題を起点に、企画、要件整理、UI設計、実装、テスト、App Store申請までを一人で行いました。
技術選定を目的から考える
単に新しい技術を使うのではなく、アプリの規模や保守性を踏まえて選定しました。
- SwiftUIとの親和性と対応OSを考慮し、データ永続化にSwiftDataを採用
- 小規模アプリに多数のViewModelを設けず、機能単位で責務を分けるStoreパターンを採用
- SwiftDataとCloudKitを利用し、端末間のデータ同期に対応
- Xcode Cloudでビルドとテストを継続的に実行
OS機能への依存を分離してテストする
ローカル通知、UserDefaults、現在時刻への依存をProtocolで抽象化し、テスト時にMockへ差し替えられる構成にしました。
Swift TestingとXCTestを使い、入力検証、データの保存・削除、通知日時の計算、通知予約、エラー処理、起動パフォーマンスなどを検証しています。特に、iOSで保留できるローカル通知数を考慮し、最大64件の予約を更新する処理を実装しました。
3. 技術を、利用者が使える運用へ落とし込む
技術的に動くだけではなく、利用者が迷わず使え、問題が起きても業務を継続できる状態まで考えます。
全国拠点向け配信システムの構築
従来の専用テレビ会議機器から、PC、Webex、映像ミキサーなどを組み合わせた配信環境への移行を進め、北海道から九州まで約20拠点へ配信する仕組みを構築しました。
導入当初は、各拠点からの問い合わせや本番中のトラブルに遠隔で対応しました。その後、操作マニュアルを整備し、録画によるバックアップも用意することで、操作ミスを減らし、障害が起きた場合の影響も抑える運用へ改善しました。
非技術者の課題を整理して支援する
ITサポート業務に加え、フリーランスとしてメディア運営やWebサイト構築支援を経験しました。ITに詳しくない利用者から状況を聞き取り、必要な操作や仕組みを理解できる言葉で説明してきました。
技術そのものではなく、それによって利用者のどの問題を解決するのかを起点に考える姿勢は、iOSアプリ開発でも継続して大切にしています。
4. AIを活用しながら、自分で品質を判断する
AIは、調査、設計案の比較、実装補助、レビュー、ドキュメント整備に利用しています。一方で、生成されたコードをそのまま正しいとは判断しません。
実装内容を読み、公式ドキュメントや既存コードと照合し、ビルド・動作確認・テストを通じて検証します。AIによって開発速度を高めつつ、設計や安全性を判断できるよう、自分自身の技術理解も継続して深めています。
現在地と今後
現時点では、ドキュメントを調査しながらSwiftUIアプリを設計・実装し、App Store公開まで進められる段階です。一方で、チームでのiOS開発、Swift Concurrencyを含む非同期処理、大規模な設計・運用には学ぶ余地があると認識しています。
今後はRe:Mindのインポート・エクスポート、ウィジェット、App Intentsなどを実装しながら、コードレビューやチーム開発を通じて設計と品質の基準を高めたいと考えています。
Swift・SwiftUIを用いて、自分自身も利用したいと思え、ユーザーの行動や生活を前向きに変えられるプロダクトづくりに貢献したいと考えています。