こんにちは! 京都開発拠点でGoエンジニアをやっています @ysakura_ です。
今回は、京都開発拠点におけるインターン生の活躍について紹介します。 京都開発拠点にはインターン生が多数在籍しています。自分のチームでも兼務含めて9名のインターン生が所属しており、今回はGoやインフラ系のインターンを中心に紹介します。実際にインターン生にお願いしているタスクも紹介しますので、京都開発拠点でのインターンのイメージをつけて貰えると思います。
京都開発拠点のインターン生事情
現在、京都開発拠点では14人のインターン生が所属しています。うち13人が長期インターンで、内訳としては、ML4人, Rails4人, Go5人です。 就業時間は15 ~ 20時間前後の方が多いです。 就業時間があまり確保できない問題も一時期ありましたが、リモートでのインターンが促進された結果、この問題は比較的解決した様に思います。
インターン生を多数受け入れている背景
これは、関西では学生の就業機会が少ないため、優秀な学生との接点を持ちやすい事が大きな理由です。 京都開発拠点は京都の三条に位置しており、京都の大学からアクセスが良い事もあり、京都大学や同志社大学の学生が比較的多いです。
私個人として、関西の学生に活躍の機会を提供する事で、関西圏に就職する学生を増やしたい想いがあります。 私は京都大学出身かつ京都にUターンした身なので、就職やインターンの選択肢がほぼ東京に集中してしまう状況に辛いものを感じていました。関西の学生に活躍の機会を提供することで、学生も関西で成長できるWinWinな状態を目指しています。
インターン生を受け入れる上での課題感
約8ヶ月ほどインターン生を受け入れてみた課題感として一番大きかったのは
フルタイムではないインターン生には、期限のあるタスクをアサインし辛い
です。これはプロジェクトマネジメントの問題ではあるのですが、速度が要求される機能開発ではインターン生をアサインし辛いのが現状です。色々な種類のタスクをインターン生にアサインした結果、この問題を回避し活躍して貰いやすいタスクの傾向が分かってきました。以下では、この傾向について紹介します。
インターン生の活躍の傾向
今回は3つ紹介します。 進行中のタスクも含めて、実際にインターン生にお願いしているタスクを紹介します 全体的に、速度は重視しないけれど解決出来ると嬉しいタスクが多いです。
研究に性質が近いタスク
研究に性質が近く、仮定・実験・考察のサイクルを回せる様なタスクです。
- 性能問題の原因調査と解決
- 例) ある画面におけるキャッシュのN+1問題の解決を、原因探索から解決まで行う
- インターンでの性能改善タスクの取り組み
- この改善により、特に遅いエンドポイントの速度が50%以上高速化されました。
- インターンでの性能改善タスクの取り組み
- 例) ある画面におけるキャッシュのN+1問題の解決を、原因探索から解決まで行う
- 新規案件のPoC(概念検証)
- 最近始めたばかりの試みです。
- ある概念が実際に可能かを、Rustで検証してもらっています。
プログラムの挙動の調査
- 機能開発時に、プログラムが実際にどう動くかを検証して貰っています
- 例) リクエストやDBに想定外の値が入った時にどういった挙動をするかの調査
- テストに傾向が近いのですが、必要に応じてライブラリやミドルウェアの調査もお願いしています。
- 例) リクエストやDBに想定外の値が入った時にどういった挙動をするかの調査
- 機能開発時に、プログラムが実際にどう動くかを検証して貰っています
テーマが決まった機械学習のモデル作成
- 例) サービスで用いる画像データからの文字認識(OCR、光学的文字認識)
- OCRで読み取りたいテーマが決まった状態で、ライブラリ選定からモデル作成、APIの作成までをお願いしています。
- 例) サービスで用いる画像データからの文字認識(OCR、光学的文字認識)
あると嬉しい非機能要件
あると嬉しいけれど、普段手を付けられていない非機能要件です。
- CI/CDの改善
- 例) dockerのビルド高速化と、AWSへのデプロイの高速化
- 解決策のイメージがある状態で、具体化して貰う所からお願いしています。
- 例) dockerのビルド高速化と、AWSへのデプロイの高速化
- 開発環境(DX)の改善
- 例) 結合的な開発環境を、AWS環境で利用出来る様にする
- DXを上げる事で全体的な開発速度を上げる目的です。
- 例) 結合的な開発環境を、AWS環境で利用出来る様にする
- テスト改善
- テストツールの開発や、テストケースの追加などです。
- 例) gRPCサーバーの結合テストツールの機能拡充
- テストツールの開発や、テストケースの追加などです。
運用の効率化
あると嬉しいけれど、普段手を付けられていない運用効率化のタスクをお願いしています。
- 管理API
- 例) 運用に用いるSQSの管理APIを実装
- 運用の属人性の排除が目的です。
- 例) 運用に用いるSQSの管理APIを実装
- Datadogにカスタムメトリクスを追加
- 例) 特定の機能の速度計測
- メトリクスの種類(DogStatsD)を考える所から一緒に行いました。
- 例) 特定の機能の速度計測
今後インターン生にお願いしてみたいタスク
最後に、インターン生に今後お願いしてみたいと思っているタスクの傾向を紹介します。 以下の様なタスクをお願いしてみたいと考えています。
- 新規技術の導入検証
- 例) テスト時にGoからdockerコンテナを操作出来る様に
- ory/dockertestなどを活用
- 例) テスト時にGoからdockerコンテナを操作出来る様に
- 手で行っているテストの自動化
- 例) 大量データの性能テストをseleniumで自動化
- sclevine/agoutiなどを活用
- 例) 大量データの性能テストをseleniumで自動化
まとめ
今回は京都開発拠点のインターン生の活躍について紹介しました。 今回はGoやインフラ寄りのポジションについて紹介しましたが、機械学習の募集もあります。 興味を持った方は是非、マネーフォワードのインターンを検討してみてください。
マネーフォワードでは、冬期インターン生も募集中です https://athletix.run/challenges/nf01LOLyW 明日はインターン生のkenさんの記事の予定です!お楽しみに!
今年も本家アドベントカレンダーもやっています! https://adventar.org/calendars/5401 京都アドベントカレンダーはこちらです。 https://adventar.org/calendars/5425
京都開発拠点では引き続き積極的に採用を行っております。ご応募お待ちしております! マネーフォワード京都開発拠点 中途採用 | 株式会社マネーフォワード京都開発拠点 インターン | 株式会社マネーフォワード京都開発拠点
マネーフォワードでは、エンジニアを募集しています。 ご応募お待ちしています。
【サイトのご案内】 ■マネーフォワード採用サイト ■Wantedly ■京都開発拠点
【プロダクトのご紹介】 ■お金の見える化サービス 『マネーフォワード ME』 iPhone,iPad Android
■ビジネス向けバックオフィス向け業務効率化ソリューション 『マネーフォワード クラウド』
■だれでも貯まって増える お金の体質改善サービス 『マネーフォワード おかねせんせい』