[2020年11月回の開催期間変更につきまして](https://job-draft.jp/release)

roana0229

自己推薦一覧

自己推薦はありません

3年後の目標や野望


事業領域を広げ、様々なプロダクトでの経験・成功体験を積む

事業領域によって、求められるプロダクトの裏側は違ってくる。そのため、自分の成長幅を広げるためにも、新しい領域に挑戦したい。 また、もしアプリのナレッジが少ない環境でも、目的を実現するための最適な方法を模索・提案しながら、運用を見越した開発のリードをできるようになりたい。

年収評価シート

2018年/2年以内

iOSアルバイト求人アプリ新規開発・運用

■チームでの動き方に関して 既存でWebで提供しているサービスのiOSアプリを作るため、ワイヤーフレームを作成するタイミングからプロジェクトに参加しました。 関わる領域はプロダクトのフェーズによって変えていて、新規開発だったため「どういうアプリにするか」を決めるところから参加しています。エンジニア・デザイナー・ディレクター含め4人ほど。 基本的にはWebの体験をベースにしつつ、整理してアプリに適したUIにし、ワイヤーフレームが完成したところで、デザインと並行して開発を進めました。 ネイティブアプリは会社としてノウハウが少なく、デザイナーもiOSアプリは初だったため、HIGの共有や実際にどういう風にレイアウトを組むのかイメージを掴んでもらうための勉強会などを行い、アプリの特徴を掴めるように進めました。 この間にアプリの設計の大枠を練り、必ず作るであろう画面をサンプルとして作り、社内の他のアプリエンジニアのレビューを経て、設計を固めました。 開発中は「仕様を叶えることが難しいと思ったときの代替案」や「デザイナーが提案するデザインの叶えたいことをそのまま叶えられるか、本質を変えないまま工数を減らして作れる方法があるか」などを意識していました。 開発が進みアプリの主軸ができてきたところで、エンジニア以外も実機で触れる環境を作り、フィードバックをできるようにしました。 最終的に、初期リリースとしては十二分と思える状態で予定通りのリリースをし、引き続き開発を行っています。 このフェーズになると開発を重視しながら、施策は要件を詰めるタイミングから参加するようにしています。 また改善していくために、社内の分析基盤を利用してKPIをウォッチできるようにRedashのダッシュボードを作ったり、施策を詰めるためのSQLを使った数値分析を行っています。 ■開発に関して 前提として、APIやデザインも並行して進んでいき、両OSを見越した開発をしておく必要がありました。 アプリの設計はMVVM + Clean Architecture構成で ・View <-> ViewModel間はRxSwiftを使ったデータバインディング(Androidは公式で機構が用意されているため) ・APIにはSwagger(現在はopenapi-generator)を利用し、yamlからAPIクライアントを自動生成(Androidでも同じ定義から生成できるようにするため) ・2ステップ以上離れた画面では、EventBusをラップして利用し、乱用されないために記述できる箇所を制限した仕組みにして画面間同期 ・ViewModelのテストを書くことで画面の正しい状態を保持 ということをしつつ、全体的に各層の依存関係を意識したものにしました。 これによって、APIやデザインを順次適応していく際の差分がハッキリと別れ、低いレビューコストで進めていくことができました。 以前に既存プロダクトの改善を回していた際に、差分が大きくなりがちでレビューコストが高くなっていたため、同じ問題を抱えないようにするため意識をしました。 他にも、社内での配布やリリースサイクルを自動化するためにFastlaneを整備し、人のコストを割かなくて良いところは割かないようにしました。 弊社のネイティブアプリでは初のCI導入で、CIに関しての細かい内容はこちらのブログに記述しています。 https://made.livesense.co.jp/entry/2019/05/31/070000 GitHub Projectsでのタスク管理を管理しつつ、GitHub Releasesにリリースログを残し、開発以外のことに時間をかからないようにして、エンジニア1人での週1リリースサイクルを回していました。

2014年/2年以上

コミックマーケットなどイベント用のマップアプリ「コミマップ」の開発・運用

2014年頃から個人で運用しているアプリです。Android/iOSともにリリースしています。 https://apps.apple.com/jp/app/%E3%82%B3%E3%83%9F%E3%83%9E%E3%83%83%E3%83%97/id775148131 https://play.google.com/store/apps/details?id=com.app.cmap 自分が参加するイベントで使いやすいアプリがなく、紙を利用している人も多かったため、自分で開発しました。コミックマーケットだけでなく、会場の中で複数の参加グループがあるイベントなど同じ形式のイベントでも対応できるようなものです。 個人で管理していくため、アプリのコンセプトである「自分の行きたいスペースをマップ上で把握できる」ために必要な機能を最低限実装した状態でリリースを行い、そこから大きく機能を変えることなく、現在も細かな改善を続けています。 初期は、Objective-C(Swiftが出てきて移行),Javaと両OSネイティブ開発で開発していました。この時にSwiftのバージョンアップ移行なども対応していました。 運用していく中で、両OSネイティブで開発をしていくのが厳しくなり、今年8月からはReactNative(ExpoKit)にリプレースしました。 両OSでViewは少し違うも同じ機能を持たせていたため、機能的には大きく変えず、今後継続的に課金で収益を建てられるように仕様を整え、運用しています。 ReactNativeを選択したのは、純粋にクロスプラットフォームに興味があり、OTA配信での臨機応変な対応がしやすいからでしたが 実際には導入してみると、ReactNativeにはOS間での動作が違う難しさ、OTA配信は決してリリースが簡易になるわけではないということを実感しました。 それでも、今まで触ったことのなかったTypeScriptの知識を付けつつ、イベント日に合わせた修正も各ストアに依存しにくくOTA配信により対応しやすくなり、良い状態になりました。 アプリ内でマップを提供する際に、GoogleSpreadSheetsを元データにしていて、APIとしてその情報が利用しやすいため、バックエンドはGoogleAppsScriptを利用してAPIを提供しています。 GoogleSpreadSheetsを使っている用途としては、アプリ内で利用する画像がエクセルのような格子状になっている座標情報が必要で、GoogleSpreadSheetsを元にJSONデータを生成しています。 そのJSONを元に画像を生成したり、アプリ内で利用するマップ上での座標を特定しています。 またストアのレビューも基本的には各イベント前にすべて対応し、フィードバックの声を聞きつつアプリを維持していける程度に取り入れ、各ストアで高い評価を維持し続けています。 実際に利用していた方がtogetterまとめを作られていたりしました。アプリ自体の雰囲気も伝わるかと思います。 https://togetter.com/li/1255852

2016年/2年以内

Android転職アプリ改善開発・運用、設計リプレース

■チームでの動き方に関して 新卒で入った際に初めて参加したプロジェクトで、エンジニア4人(うち、未経験2人)・ディレクター1人・デザイナー1人でのチームでした。 施策のベースはディレクターが考え、それに対してチーム全員で意見を出し合いながらブラッシュアップしていく形で改善を回していました。施策の要件がある程度固まったら、ミニマムで動くものを作って共有したり、デザインも並行で進む中でこちらから少ない工数で開発できるデザイン案を提案したりすることで、イメージのすり合わせこまめにを行うようにしていました。 ■開発に関して 大学時代からAndroid/iOSの開発を行っていたため、基本的な技術はあり、既存プロジェクトを理解すること、改善することを主に行っていました。 既存プロジェクトのコードは、現状のプロダクトの開発状況には合っていない設計(MVC)になっていたり、初期の設計意図が伝わらないままコードが積み重なっている状況でした。 施策を進めながらも部分的には改善を行っていましたが、本来変更したい箇所とは別のところにも影響が出てしまうこともあり、品質を保ったまま開発スピードを維持していくことが難しい状態になり、根本の設計から改善していく方針で進むことになりました。 アプリの行動フェーズをいくつかに分割すると、「求人を探す」「応募する」「応募後のやり取りをする」フェーズに別けられ、今後改善を回す中で効果やスピードを求めるであろう「応募する」フェーズの設計をリプレースすることに決め、1人で改善後の設計を考えメンバーからフィードバックを受けた上でリプレースを進めました。 既存コードはModel層を担うクラスがDBモデル以外には明確に別れておらず、Viewから直接DBの変更や非同期通信処理を呼び出したコールバック処理たちが無造作に行われていて、処理を追うことが難しい状況でした。 各層の役割を意識する、ユーザのアクションから行われる処理の流れを追いやすくするため、改善後はMVP+Clean Architecture構成で、DataBindingと非同期通信にはRxJavaを採用しました。(このときはまだAndroid公式がDataBindingをサポートしていませんでした。) 当時RxJavaは非同期通信で利用されていたAsyncTaskの置き換えポジションとして使われていた印象が大きかったのですが、個人的には処理フローを宣言した上でそのフローに沿ってデータが流れる事自体に大きな恩恵があると思い採用をしました。導入にあたって学習コストが必要になりますが、リプレースの基準となるPRをメンバー全員がレビューし、認識をすり合わせた上で各メンバーにもリプレース作業を行ってもらいました。最終的には全体の設計を改善しつつ、施策も止めずに開発を進めました。 また、Rails製のAPIもチームでメンテナンスしていて、必要に応じて機能の追加や修正をする程度の開発を行っていました。

マネージメント能力

iOSアプリ開発が初めてのエンジニア・デザイナー・ディレクターがいる中での開発チームでの技術選定や開発スケジュール、仕様のすり合わせなど開発全般
・エンジニアは1人でもアプリを作れるよう育成 ・タスクの進捗やリリーススケジュールの管理 ・デザイナー、ディレクターはアプリに適したUIやユーザの行動設計などの、iOSアプリに関するナレッジを貯めつつ、プロトタイプ・新規プロダクトの開発
自分含めた4人のチームと少数でした。なので進捗・タスク管理にかかる手間を軽くするため、GitHub Projectsを利用しました。 iOSが初めてのエンジニアは、GUIでのレイアウト設計に時間がかかってしまうことが多いため、そこを重点的に教えつつ、アプリの設計MVVM(RxSwift) + Clean Architectureをコードベースで教えました。また、その学習フェーズに合わせたタスクを振るようにしていました。 iOSが初めてのデザイナーは、Apple Human Interface Guidelinesの内容やワイヤーフレームからデザインに落とし込む際に、どういうコンポーネントが標準であるのか、カスタムする際どの程度であれば作りやすいのかなどを共有しながら、デザインを詰めていきました。 また、施策に対してどういう風に実現すれば、より工数がかからず目的を達成できるのかなど、1スプリント1週間で毎週定例の時間を使い議論をしながら、アプリの全体像を作っていきました。

アピール項目


アウトプット

GitHub アカウント
あり
Qiita アカウント
あり
Speaker Deck アカウント
未入力です
SlideShare アカウント
未入力です
特にアピールしたいアウトプット
あり

今後、身につけなければいけないと思っている技術は何ですか?

- SwiftUIなどiOS13から新しく出てきた技術 - クロスプラットフォーム開発技術(現在はReact Nativeを個人プロダクトで利用している)

エンジニアとして影響を受けた本を教えてください

- 達人プログラマー - PEAKS、技術書典などで出版されている設計・テスト周りの本 - リーダブルコード

あなたが一番パフォーマンスを出せるのはどんな環境ですか?

- ディレクターやデザイナーなど、エンジニア以外も同じチームで動き、その中で意思決定ができる環境 - エンジニアからもプロジェクトの進行や施策に関して話し合うことのできる環境

キャラクター

直近で一番やりたいこと
技術を極めたい
好きなスタイル
好きな規模
水とプログラミングどっちが大事?
自信を持って人より秀でていると言える点
学習能力 / 問題解決力 / 責任感
スキルのタイプ
得意なフェーズ
会社を選ぶ一番の基準
プライベートとの両立
やりたくない分野
SI / 人材 / 広告 / ゲーム
その他の特徴
使用言語にはこだわらない / レガシーな環境を改善できる
その他のやりたいこと・やりたくないこと

会社の規模は問わないが、必要な権限がチームにあり、状況に応じて柔軟に動ける環境で働きたい

やりたい事

手を動かして設計してコードを書きたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
価値あるプロダクトを作り成長させたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
学び続けて技術力でプロダクトに貢献したい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
意義があることや社会に貢献できる仕事がしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
人や計画の調整・マネジメントをしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
レガシーなシステムの保守・運用・改善をしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
企画や仕様を考えるところから関わりたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
業務効率を改善して一緒に働く人のためになりたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
全社横断的な共通基盤作りや強化をしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい
組織や文化を作る・成長させる仕事をしたい
絶対やりたくない
あまりやりたくない
別に普通
やりたい
絶対やりたい

基本プロフィール

年齢
今年で20代後半
好きな Text Editor
Xcode, Android Studio, Visual Studio Code
希望勤務地
東京都 / リモート勤務
家庭の事情や体調など、都合に合わせてリモート出来れば問題ない
希望年収
800万円
ただいまの期間
ドラフト開催中

  • 参加者は企業から指名が入ります
  • ドラフト指名に返答できます
  • レジュメを更新できます
  • 審査は受け付けております
ご意見箱

要望、不具合報告、使いづらい点や感想など、なんでもお気軽にご連絡ください。

roana0229
今年で20代後半
Xcode, Android Studio, Visual Studio Code
参加ステータス
不参加
参加回数
3回
累計平均提示年収
702 万円
SIGN UPSIGN IN


このサービスを友人に薦めたいですか?