はじめまして! マネーフォワードのサマーインターンシップに参加させていただいた若松です。
この記事では、マネーフォワードのサマーインターンシップついて紹介したいと思います。 僕が今年マネーフォワードのサマーインターンシップについて調べた際に、あまり過去の情報を見つけられなかったので、少しでも今後インターンシップに参加する方の参考になればと思います。
自己紹介
若松と申します。 2022年9月にマネーフォワードにインターン生として入社しました。 僕はエンジニアを志す24卒学生として就活しています。 プログラミングは大学に入ってから始めました。趣味は、サウナと読書です。
インターン概要
エントリーのきっかけ
僕がマネーフォワードを知ったのは、2022年3月でした。 とある逆求人イベントでマネーフォワードのEM・人事の方とお話する機会があり、会社のカルチャーや事業ドメインについて興味を持ちました。
参加期間など
参加期間:9月前半の2週間 配属チーム:業務基盤グループ
業務基盤チームとは 業務基盤グループではマネーフォワード クラウド会計というプロダクトに関するマイクロサービスを作っています。 マイクロサービス自体の開発からサービスのデプロイ先のインフラの構築まで担当しています。
インターンに参加する際に決めた目標
- 就職先としてどうだろうか?という観点でインターンを過ごす
- タスクで扱った技術について理解し、別の場所でも活かせる状態にする(再現性を持つ)
インターンでやったこと(開発編)
僕はインターンで2つのタスクに取り組ませていただきました(技術的に面白いものをメンターさんが選定してくれたそう)。 それぞれのタスクの概要についてさらっと紹介します。
1. マスターデータを管理しているマイクロサービスのメモリリフレッシュ機能の追加
タスクの概要 このタスクでは、マイクロサービスの1つ(以下、システムA)を対象としました。システムAは、とあるマスターデータを管理しており、取得リクエストに応じてレスポンスを返します。 元々システムAは、マスターデータをインメモリに持つことでレスポンスを高速化していました。 しかし、マスターデータが更新された場合にメモリの情報を更新するためにはサービスを再起動する必要がありました(元の状態だと毎朝再起動している)。
そこで元々のリクエストを捌くプロセスと並行して定期的にマスターデータの更新を確認し、差分があった場合にはキャッシュを更新する処理を加えました。
技術的な学び
2. マスターデータを管理しているマイクロサービスへの認証機能追加
タスクの概要 このタスクは1つ目のタスクと同じシステムAを対象としていました。システムAは、元々IP制限をかけることでインターナルネットワーク(マネーフォワードのマイクロサービス内)からのみアクセス可能にしていました。 しかし、今後グループ会社間の通信を想定した場合、外部からもアクセスできるようにしたいという要望がありました。
そこで、システムAにクライアントの認証を行うミドルウェア(intercepter)とクライアントの認証情報の生成、更新、削除の機能を実装しました。
技術的な学び
- gRPCを利用したAPIの開発
- protocol buffersの記述
- intercepterの実装
- metadataの利用
- etc..
工夫したこと
目標に対して
就職先としてどうだろうか?という観点でインターンを過ごす できるだけたくさんの人と話すこと・話す機会を作っていただくために疑問を持つことを心がけました。 それに加え、実費で東京に滞在してオフラインでインターンに参加しました笑
扱うタスクで触れた技術について理解し、別の場所でも活かせる状態にする(再現性を持つ) 限られた期間でのインターンなので、スピード感を意識しつつもきちんと疑問は解消するように意識しました。例えば、1つ目のタスクで並行処理を実装している際にGoの標準ライブラリの「sync」パッケージについて気になり、自分なりに根本の仕組みまで追求したりなんかしていました。 他にもちょっとした疑問、発見、とにかくなんでもSlackで呟いたような気がします。
+α
今回取り組んだタスクは、一部実装済みの機能でした。そのためGithubを見ると正解(最適解かは不明)があるという状況でした。 しかし、自分なりにシステムAの役割や連携しているサービスなどを調べ、新たに機能を追加するという心持ちで臨みました。 以下の画像のようにタスクの進行手順、考慮しなければならないこと、懸念点などを書き出し、フィードバックをもらった上で開発に進みました。
開発以外でやったこと
僕は参加した動機として、会社について知りたい・マネーフォワードで働くイメージを固めたいという気持ちが大きかったので社内の方と話す機会をたくさんセッティングしていただきました。
話させていただいた方々
- 同じチームのメンバー
- 若手社員
- VPoE
- 京都開発拠点の方々
参加させていただいたイベント
- CA Tech Night(社内の技術系イベント)
- オープンドア(ランチタイムに社内の誰かをゲストとして迎え、その人の考えや日常的な業務についてのお話を聞くイベント)
- 某プロダクト本部全体会議
- インターン生交流会(同じチームのインターン生間で就活や競プロなど特定の話題についてラフに話すイベント)
とあるエピソード インターン初日に、マネーフォワードが大切にしているMVVC(Mission / Vision / Value / Culture)についてお聞きする機会がありました。自分は率直に(自分と)マッチしそうだなと感じました。そこで次に気になったのは、実際に働いている方々はどうだろう?という疑問でした。
採用において「カルチャーや会社とのマッチ度を大切にしている」とおっしゃっている会社さんは複数耳にします。そしてマネーフォワードもそうでした。じゃあそれを今働いている社員さんは意識しながら働けているのかと... 今自分が配属されたチームはインターン生を受け入れることに慣れているからよく見える(カルチャーを体現しているように見える)のかもしれない。他のチームはどうなんだろうと気になりました。
この疑問を人事の方にお話させていただくと次の日には、京都開発チームのデイリーミーティングへの参加が決まっていました。 「インターン生が他のチームを見てみたいらしい、ミーティングに参加させてくれないかと」一言Slackに投稿するとすぐに4チームほどの方が手を上げてくれました。 この時点で MVVC の C にあたる Respect Teamwork、 V の Fairness を感じることができました笑
またマネーフォワードには、カルチャーヒーローという会社のカルチャーを最も体現できた人に対して送る賞などが存在しており、しっかりと入社後にも MVVC を意識させるタイミングを組織として設けているところもポイントだと思いました。
感想
2週間かなり濃い時間を過ごさせていただくことができたと思っています。
今回のインターンで自分は大きく驚いた点が2点ありました。
1点目は、英語化についてです。インターン参加前に、社内で英語化を促進しているとお聞きしていたのですが、思っている以上に英語化が進んでいました。新卒の半数以上は海外の学生・オフィスでは日本語と同じくらい英語での会話が聞こえてきました。またそれに向けた社員への手厚いサポートも行われていました。
2点目は、若手からガンガン活躍されている方が多数いらっしゃるところでした。今回のインターンで主に2人の方にメンターとしてサポートしていただいたのですが、そのうちの1人は自分と同じ学生(長期インターン生)でした。マネーフォワードでは長期インターンをしていらっしゃる学生さんがいるのですが、インターン生の中でもインターンリーダーというポジションがあり、周りのインターン生のサポートなどを行っていました。短期インターン生のサポートを同じインターン生に任せる会社さんは聞いたことがなかったので驚きました。しかも、本当に自分と同じ学生なのかと疑問に思うほど、しっかりとサポートしていただきました。こういったマインドが若手からどんどん活躍していける環境を支えているんだなと感じました。
2週間という期間でしたが、マネーフォワードの魅力についてしっかりと理解することができました。ありがとうございました。
マネーフォワードは、長期インターン生の受け入れも積極的に行なっています。 僕自身も夏の短期インターンを経て、長期インターンに参加させていただいています。 今はGo・K8s・KEDA・AWSといった技術を使用して、マイクロサービスの構成を変更するという抽象度の高いタスクを1から担当させていただいています。
24新卒採用・会社情報発信をしているので、ぜひ興味がある方は応募してみてください!!
▼24新卒採用募集職種ご案内(エントリーページ) 2024年新卒採用
▼会社公式note(会社の出来事や社風などが分かります) マネーフォワード公式note
マネーフォワードでは、エンジニアを募集しています。 ご応募お待ちしています。
【会社情報】 ■Wantedly ■株式会社マネーフォワード ■福岡開発拠点 ■関西開発拠点(大阪/京都)
【SNS】 ■マネーフォワード公式note ■Twitter - 【公式】マネーフォワード ■Twitter - Money Forward Developers ■connpass - マネーフォワード ■YouTube - Money Forward Developers