見出し画像

未経験からiOSエンジニアに転職して半年

【はじめに】

30代で異業種からiOSエンジニアの転職をしましたが、半年たったので振り返ってみて、備忘録含め、ざっくり書き出してみました。

【4-6月】

  • オンボーディングの参加

  • 社内手続き(なんだかんだ1-2週間ぐらいあった)

  • Flutterの調査(3週間ぐらい)

  • Wikiの整理

  • 部で担当している社内研修の調整

  • 引越しの準備

などなど
当初5月ぐらいからプロジェクトに入る予定でしたが、色々あった様で1ヶ月伸び、更にAndroidとして配属となりました。

【6-8月】

  • 6月からプロジェクトに入るのと同時に配属先が大阪から東京に変わり、単身赴任で生活することにしました。(会社側はフルリモートで、自宅から作業できる様に配慮してくれましたが、自分の考えで、最初はとにかくチームの役に立てる人間に一秒でも早くなりたいと思い、仕事のみに集中したくそうしました)部屋は1Rで、起きたらすぐ仕事ができるよう、ベッドとデスクのみで、本当に仕事をするだけに集中できる環境で、今の自分に取っては最高の環境です。(10月現在は自宅と東京を月の半分ずつで過ごしている形です)
    入ったプロジェクトがユーザー数が延べ100万人近く、Androidメンバー5人ぐらい、iOSメンバー5人ぐらいで規模の大きな開発でした。またKMMを採用されており、何もかもが初めてで、いきなりこんな大きなプロジェクトで大丈夫かなと少し心配しましたが95%ぐらいはワクワクと、新しい事へのチャレンジで、良い意味で胸がいっぱいでした。 最初の1週間は環境構築や、プロジェクト内で共有されているドキュメント読んで仕様の理解に努めたりしていた。 ただこの期間に割りとプロジェクトがバタバタしていたため、自分に割いてもらえる時間は無く、一人で環境構築、プロダクト、アーキテクチャ、画面の遷移順序など理解するためにあちこちのドキュメントを身漁って自分なりにまとめていた。 またTDDということもあり、Androidにおけるテストの書き方を少し勉強した。 ただチーム開発&Android未経験という事で非常に何をしていいか、何からすればいいかわからない状態だった。(チュートリアル少し撫でた程度ではプロジェクトのコードは全く理解できなかった) また当初わからない事だらけでGitHub Enterpriseに招待していただき、入れることを確認したが、次の日には入れなくなっていた。またその他VPN周りや色んなアカウント権限でうまく機能していなくSlackにて“〇〇について入れないんですが有効にしていただけませんか”というやりとりが続いた。 ただそういったやり取りの中で”昨日入れたんじゃないんですか?”や”なにかしました?”という質問には”自分がなんかしたのか?自分が理解していないのが全て悪いのか?”と自分を信じれない自分がいる事に気づきました。 こうなると質問することさえも怖くなり進まなくなりそうなので”〇〇について△△が原因だと思い◇◇を試してみましたがうまくいきませんでした。又は☆☆が原因かと思います。対応いただけないでしょうか?orご確認いただけないでしょうか?”のようなテンプレを考えて、とりあえず最低限の質問の仕方と、できる限り詰まったらすぐ質問できるようにしてみました。 また後々わかった話ですが、アカウント周りは自分が原因ではなく、申請がされてなかったり、なぜか”90日間ログインないと自動的に消える”に判定されて消えていたりしていたとのことでした。ただ、原因が自分ではわからない事が多発すると”すべて自分のせいか?チームにものすごく迷惑かけているのでは?”という気持ちになりました。(これについては今後相手の気持ちになって考えるという点でも色々学びになりました)

  • 1週間ほど経ち、2週間目になるとAndroid Studioにも少し慣れ、テキストの表示やボタンの作成、ファンクションを作って叩いてみたり、遷移について少し触ってみたりしていたところで初めて修正タスクが回ってきた。 チケットが渡され担当者が自分になった瞬間身が引き締まる感じがしたことを今でも覚えています。 自分はチームでの運用をした事がなかったので初めてのGit操作は申し訳ないですが、チームで誰かついて確認してほしい事をお願いしたが、叶わなかった。結果ここには書けないほどの失態をしました。(このおかげでGit操作への理解が進みましたが本当に申し訳ないと思った) 自分が失敗したことも含めて、仕様書では分かりずらい部分が多々ありました。最初の仕様書から機能追加や修正事項で色々変更があった部分や、暗黙的なチーム内ルールなど、知るたびに、簡単にまとめたり、修正を行い、チームへ共有してみました。すると初めてチームの方々からお礼を言われ、チームへの貢献はコードを書くことだけではないことを学んびました。 とは言え、まず最初の目標としてコードを書いて、何か作る事でチームに貢献できるようにはなりたいと強く思いました。

  • 3週目に差しかかり、ようやくチームとしても落ち着いてきました。 そのタイミングでようやくペアプロをしていただけることになり、約2週間行ってもらいました。データバインディングについてやUnitTestについてはここで教えていただいた事が今でも活きています。

  • 7月になり、PRで指摘はいただくものの、ある程度自分で修正して、UnitTestも書いてPR出せるまでになってきました。そんな中8月から新規機能追加(以後エンハンス案件と表記します)の案件が始まり、自分が担当する事を知りました。ものすごく嬉しかったです。 初めて仕様の確認や見積もり工数を出し、色々勉強になりました。また自分から設計書も書かせてほしいと願い出たところ是非!とのことでさせていただきました。こちらもご指摘を頂きながらなんとか作成でき、大変良い経験を積む事ができ、勉強になりました。 また初めてのエンハンス案件でしたがiOS担当者やディレクター、デザイナーのメンバーにも恵まれ、色々支えていただきながら進める事ができました。 また常にAndroidのチームリーダーは自分のサポートをしてくれ、エンハンスの間はほぼ毎日、定時で1時間ほど1on1をしていただきました。自分の技術が低く、時に厳しい指摘もいただきましたが、間違いなくこの1on1で理解が深まり、成長できたので本当に感謝しかないです。また技術的にはもちろん、人としても非常に魅力ある方で、盗めるものは全て吸収したいと追いかける様になりました。

  • 8月になり、エンハンス案件が始まりました。終わりは9月半予定です。 色々途中問題もあり、納期が守れるか心配でしたが、周りのサポートもあり、なんとか無事納期内に全て終える事ができました。 エンハンスで技術的な成長はもちろん、設計書を作り込むことの重要性、自分でタスクを決め、その通りに実行していくことへの難しさ、仕様の理解だけでなく目的の理解や、年密な認識の擦り合わせの大切さなど、コードを書くこと以外でも非常に多くの経験と学びが得られました。

【9月〜現在】

  • 9月半ばから現在 だいぶ仕事にも慣れてきました。 またコードを書く仕事以外も任せたいただくことになり

  • この機能は何を目的としているのか。

  • 要望はその目的が本当に達成できるのか。

  • よりよい開発、もしくはアプローチがあるのではないか。 など、より開発者目線でコミュニケーションを取ることへの意識も高まってきました。(まだまだ勉強中ですが)

【最後に】

とりあえずざっくりですが半年経過した自分の現在です。
また割りと隙間時間でテックブログを書いており、半年て23記事書きました。一年目の目標は50記事なのでなんとか達成できそうです。
入社記事や転職記事は割とありますが、その後の記事は少なく、転職で不安を抱えつつ、日々業務に努めている方も多いのではと思います。
そういった方に半年でこんな感じだよといった形で、この記事が今後誰かのお役に立てれば幸いです。

いいねと思えたらよろしくお願いします😋