24卒 内定者インターンシップ iOS編
はじめに
こんにちは。
株式会社ココナラの第2期新卒メンバーとして4月に入社しました、じょにーと申します(アプリ開発グループ/iOSチームでは初)。
本記事は『ココナラの内定者インターンシップって具体的にどんなことやってるんだろう?』と興味を持ってくださった方々に向け、1月中旬〜3月末にかけて内定者インターンシップに参加した私が詳細をご紹介していきます。
内定者インターンシップについて
概要
出勤頻度
ココナラの内定者インターンシップでは、自分の都合に合わせて出勤頻度を柔軟に調整することが可能です。
例えば以下のような選択肢があります。
- 週3回以上:iOS関連技術のキャッチアップ、本格的な開発
- 週2回(月8回):iOS関連技術のキャッチアップ、軽めの開発業務
もちろん一度決めた頻度で稼働日が固定されるわけではなく、週によって稼働日を相談したり、スケジュールの調節はかなり柔軟に対応していただけました。
働き方
内定者インターンシップ期間中は基本的にオフィスに出社しての勤務となります。
出社する理由としては、例えば表情が見えることでよりコミュニケーションを図りやすくなるといったメリットが存在する為です。
ただし内定者インターンシップ期間に限り、遠方に在住されている場合はリモートワークでの勤務も可能です。
また、入社後は出社とリモートワークのハイブリッド勤務となります。
内定者インターンシップの目標
私は主に以下2点を目標に設定し、内定者インターンシップに従事いたしました。
- エンジニアとしての働き方を理解する
- 業務を行うにあたって必要最低限となる技術のキャッチアップ
私はこれまで実務経験がなく、以下のような不安がありました。
- 職業としてのエンジニアはコードを書くだけが仕事じゃないって聞くけど、実際どんなことをするんだろう..
- 業務でのコーディングについていくには特にどんな技術の理解が必要なんだろう..
これらを解消することで、入社後により良いスタートダッシュを切れるのではないかと考えました。
やったこと
内定者インターンシップ期間中は主に以下の作業に取り組みました。
- 開発
- 環境構築
- トレーニングアプリ開発
- ココナラiOSアプリのコードリーディング
- 実装タスク
- 会議など
- アプリ開発グループ(iOS&Android)の定例会議に参加
- アプリ開発グループの先輩社員との1on1
- メンターと同期iOSエンジニアとの定期的な振り返り
各項目の詳細を説明いたします。
開発
環境構築
ココナラiOSアプリの開発業務に着手できるようにツールのインストールなどを行いました。
社内で作成された手順書をもとに進めていきますが、当時はMacBookを支給されたタイミングの関係で自分のみがXcodeのバージョンが上がってしまっており、その関係によるエラーが多く発生していました。
思うように作業が進まず焦りを感じていた時もありましたが、作業に詰まった時はチームの方が声をかけてくださったり、こちらからお声掛けしたことによって関係性を築くことができ、より質問がしやすくなったように感じます。
また、技術的な理解も深まり、大変ではありましたがそういう意味では良い経験ができたと思っています。
トレーニングアプリ開発
はじめにメンターに自身のスキルレベルを共有し、その情報をもとに適切な難易度のアプリを作っていくというカリキュラムです。
私は通信処理の理解が不足していると感じていた為、API機能を使ったアプリを作成しました。
PRを立てるとメンターからレビューをしていただけたり、開発中のコードについてもチームの方からフィードバックをいただけたことはこれまで基本的に独学でプログラミング学習を進めてきた自分にとっては勉強になることばかりでした。
特に命名の部分であったり、ココナラのiOSアプリではこういう書き方をしますといったレビューは、今後実務に関わっていく上で特に重要な指摘で、それを入社前に教えていただけたことは本当にありがたかったです。
ココナラiOSアプリのコードリーディング
ココナラiOSアプリの実装をキャッチアップし、タスクをこなせるよう最低限の技術を身に付けることを目的としたカリキュラムです。
具体的にはココナラiOSアプリの一部画面のコードの内容を理解し、口頭で概要を説明できるところまで理解を深めるということをしました。
ココナラiOSアプリの開発コードにはRxSwiftが複数箇所に導入されていますが、私はほとんど未経験の状態でしたので初歩的な部分のキャッチアップからのスタートでした。
正直初めは何から手をつけていいかすら分からなかった為、チームの方におすすめのドキュメントを紹介していただいたり、理解をすりあわせる為に質問させていただき、なんとかコードの概要を説明できるようになりました。
実装タスク
ココナラiOSアプリのUIを一部変更するタスクを任せていただけました。
最初に開発する承認を得る為にドキュメントを書いたり、PR作成後にレビューをいただいてapproveを得られてからマージしたり、そこからテストをしてリリース準備をして...といった一連の流れを経験することができました。
会議
アプリ開発グループ(iOS&Android)の定例会議に参加
ココナラでは週に1度iOSチームのみでの会議やアプリ開発グループ全体の定例会議が実施されており、内定者インターンシップ期間中に毎回同席させていただきました。
会議では、開発の改善案や開発に関わるAppleのニュースの共有(例えばPrivacyManifest対応)などを議題としていました。
初めの頃は聞き慣れない単語がたくさん出てきて、それをメモして調べることで手一杯でしたが、回数を重ねることでだんだん慣れてきて疑問を質問したり、時には発言したりできるようになりました。
新卒とはいえチームの一員であることを自覚でき、より当事者意識を持って業務に取り組むことができるようになったと感じます。
アプリ開発グループの先輩社員との1on1
グループの先輩社員方に私の人柄を知っていただきつつ、私も先輩社員の人柄を教えていただき相互理解を深めることを目的とし、お一人ずつ時間をいただいて1on1を実施いたしました。
内容としては前半は私の自己紹介とこれまでの経歴を簡潔にお話しして気になったところを質問していただき、後半は私の方から質問させていただくといったものでした。
『趣味や好きな食べ物』といった雑談ベースのお話から、『前職から転職を考えた理由やココナラに入社を決めた理由』といったキャリア観点でのお話も伺うことができました。
メンターと同期iOSエンジニアとの定期的な振り返り
ココナラの内定者インターンシップでは終業前に毎回当日の業務の振り返りをしています。
iOSチームではその日の気持ちに5段階評価で点数をつけ、点数の理由を言語化するということをしていました。
自分の得意/苦手なこと、モチベーションの理解が深まるきっかけになりました。
この日は「タスクが順調に進んでいる時は気分が上がる一方で、うまくいかない時はどう対処していくか?」という課題について考えるきっかけになりました
その他にも、例えば聞くタイミングを逃したものの気になっていたことの質問、iOS開発上での理解のすり合わせなどもしていただけました。
内定者インターンシップを通して得られたこと
開発体制への理解が深まった
前述の通り、初めは実務未経験が故にエンジニアの具体的な業務内容が不明瞭でした。
内定者インターンシップ期間を通してリリースまでの一連の業務を一部携わらせていただいたり、他部署と連携した業務も任せていただけたことでエンジニアとしての働き方がかなり明確になり、不安を解消することができました。
チームの方々に馴染むことができた
チームの方が話しやすい空気を作って下さっていたので、たくさん質問させていただいたり、時にはランチに誘っていただいてそこで雑談をするなどして良い関係性を築くことができました。
エンジニアはチームワークが本当に大切だと感じるので、入社前にコミュニケーションの壁を乗り越えられて本当によかったです。
先輩社員方とカレーランチをした時の写真です
業務上での工夫やノウハウを学ぶことができた
質問や自分の考えをより分かりやすく伝える為に適宜フィードバックをいただいたり、各タスクの優先度の付け方、相手への気の配り方などたくさんのことを教わりました。
いわゆるビジネス戦闘力を内定者インターンシップ期間から向上させることができたと思います。
最後に
今回は、iOSチームの内定者インターンシップについてご紹介させていただきました。
本記事を通してココナラの内定者インターンシップへの理解が少しでも深まったなら幸いです。
最後まで目を通していただきありがとうございました。
ココナラでは、新卒採用も積極的に行なっているので、もし興味がありましたら下記のリンクからご確認ください!
一緒に働けることを楽しみにお待ちしております。
Discussion