こんにちは!サイボウズ Officeチームのモバイル開発担当の山根です。
サイボウズでは毎年サマーインターンシップを開催しており、2024年度もさまざまなコースを用意しました。
この記事では、iOSアプリ開発のインターンシップである以下の2コースについて紹介したいと思います!
iOS 育成型コース(8/19〜8/22)
まずは4日間インターンとして開催した育成型コースについての紹介です。
今年はこちらのコースに3名のインターン生に参加していただきました!
概要
育成型コースは、実際の製品のソースコードを用いてプロダクト開発を体験できるコースとなっています。
今回のインターンでは、サイボウズ OfficeのiOSアプリに機能追加をする形でプロダクト開発を体験していただきました!
インターンの流れ・スケジュール
インターン全体のおおまかなスケジュールは以下のようになっています。
インターン生の皆さんには機能開発の体験をしてもらいながら、以下のようなミーティングにも参加していただきました!
- 青野社長とのざつだん
- 社内のiOSエンジニアが集まる知見・情報共有会
- インターン生の興味に合わせた社内の有識者を交えての質問/ざつだん会
- iOSアプリのデザインについて
- iOSアプリのアクセシビリティについて
- エンジニア目線でのビジネスの考え方について
プロダクト開発体験について
今回のインターンではサイボウズ Office iOSの機能追加チュートリアルを用いて開発体験をしていただきました!
こちらのチュートリアルは実際の製品のソースコードを利用しているため、サイボウズ Officeが採用しているアーキテクチャや設計思想についても学習できるコンテンツとなっています。
インターン生の皆さんにはチュートリアルを通してLayered Architectureの設計に触れながら、SwiftUIでの画面実装や画面遷移、API通信などの機能を実装していただきました!
インターン生の声(抜粋)
開催後の参加者アンケートから感想を一部紹介します。
アプリのアーキテクチャ、開発手法(モブプログラミング・チーム同士の情報共有)について知ることができた。
Gitのcloneの仕方など、あまり自信を持ってできない部分を学び直すことができた。
社内の知見共有会を見学し、モバイルアプリエンジニアとして実際の現場で働く方々と同じ時間を過ごせてとても濃い時間だった。
モブプログラミングを通して、共同でコーディングを行う経験ができ、他のインターン生・メンターと一緒に課題に取り組み解決をしていく体験ができた。
4日間を通じて、たくさんのエンジニアの方や青野さん、インターン生とコミュニケーションをとることができて技術以外の面でも刺激になり楽しかった。
実際のプロダクトを触ったことで、これから自分で勉強していくことへの指針になった。 ひとまずSwiftUIを使ったアプリを実装しリリースしたい。
まとめ
育成型コースでは、サイボウズ Office iOSアプリの機能追加チュートリアルを通してプロダクト開発を体験していただき、チュートリアルの実装完了後にはUIデザインの調整や改善といった、発展的なチャレンジもしていただきました!
また、技術以外でも開発業務全体としての体験やサイボウズでの取り組みを通して、様々なものを持ち帰っていただけたようで非常に嬉しく思います!
iOS 実務体験型コース(9/2〜9/6、9/9〜9/13)
次に、5日間インターンとして開催した実務体験型コースについての紹介です。
今年はこちらのコースを2回に分けて開催しており、それぞれの回に2名ずつ、計4名のインターン生に参加していただきました!
概要
実務体験型コースは、iOSアプリ開発チームの一員として実際のプロダクト開発を経験できるコースとなっています。
今回のインターンではサイボウズ OfficeのiOSアプリ開発に参加していただき、1週間スプリントのスクラム開発を体験していただきました!
インターンの流れ・スケジュール
インターン全体のおおまかなスケジュールは以下のようになっています。
インターン生の皆さんにはスプリントプランニングを始めとするスクラムイベントやプロダクト開発を体験していただきながら、以下のようなミーティングにも参加していただきました!
- 青野社長とのざつだん
- 社内のiOSエンジニアが集まる知見・情報共有会
- インターン生の興味に合わせた社内の有識者を交えての質問/ざつだん会
- iOSアプリのデザインについて
- Raspberry Piやマイコンについて
プロダクト開発について
インターン期間中はZoomを用いたフルリモート環境でのモブプログラミングでプロダクト開発を進めました。
モブプログラミングはできる限りインターン生主導で進めていただきましたが、どう実装すべきかなどインターン生同士で活発に議論しながら進めている姿が印象的でした!
また、インターン生の皆さんに開発していただいた機能についても、以下に簡単に紹介します。
今回はサイボウズ OfficeのiOSアプリで現在開発中の「メール機能」から、メールの詳細画面の開発を進めていただきました!
メール内容の表示をAPIからの取得処理も含めて実装していただいたり、メールのフラグON/OFFや削除処理などのメール操作系の実装も対応していただきました。
インターン生の声(抜粋)
開催後の参加者アンケートから感想を一部紹介します。
青野さんに組織論的な内容の質問をしたり、夕会でラズパイやデザインのお話も聞くことができ、今後に活かしたいという熱意が湧いた。
デザイナーさんとの雑談を設定してもらいましたが、そこで改めて自分が開発におけるどの部分に一番興味を持っているか実感しました!
5日間だったので実装だけで終わるのかなと思っていたが、ランチ会や会議などを通して、どういう会社なのかを感じることができてよかった。
オンラインと聞いていたのでコミュニケーションが取りづらいのかなと思っていたのですが、モブプロでずっとzoomを繋いでいたので、インターン生とコミュニケーションを積極的にとりながら実装を進められてとても楽しかった!
自分のコードをリアルタイムで見られらながらコードを書いたのは初めてで最初は緊張でびびってましたが、会話も捗り楽しくコーディングができ、普段の開発では気づかない部分など色々学べて楽しかったです!
Layered ArchitectureやModular Monolithの解説を聞いて、アーキテクチャの責務を理解できた。
フル Swift UI で書かれたプロジェクトであったため、個人開発で活かせそうな点が多かったり、自分の今までの認識との答え合わせ的なことができたため、非常に楽しかった。
まとめ
実務体験型コースでは、サイボウズ Office iOSチームの一員として実際のプロダクト開発に参加していただきました!
インターン生の皆さんからはフルリモート環境やモブプログラミングへの不安もあったとのことでしたが、インターン開催後の感想では一転してモブプログラミングに対するポジティブな意見が多く挙がっていました。
メンター目線でもインターン生の皆さんが会話や議論を意識してモブプログラミングをされている姿が印象的で、なにより和気あいあいとした雰囲気でプロダクト開発を進めていただけたことを非常に嬉しく思います!
おわりに
インターンシップでは新しいことばかりで大変だったと思いますが、インターン生の皆さんが自立的に考え、課題解決に向けて積極的に行動していただいたことに改めて感謝をいたします。
そして、今回の経験が皆さんの今後の道を切り開く一助となることを願っています!
また、インターンシップについては来年も開催する予定ですので、この記事が今後サイボウズのインターンシップに参加しようと考えている方の参考になれば幸いです。