freeeの開発情報ポータルサイト

未経験エンジニアがfreeeでの2ヶ月の内定者インターンを振り返る

こんにちは! freeeに24卒新卒として入社したまっちゃんです。

今回は、内定者インターンとして2ヶ月活動させて頂いたので、振り返りをさせていただきたいと思います。

この記事では以下のような方に役に立てたら嬉しいです!

  1. 未経験でもエンジニアとして就職したい学生

  2. 自社開発会社に就職したい学生

  3. freeeのエンジニアに興味がある学生

  4. freeeのインターンに興味がある学生

まずは簡単に自己紹介

  • 高校まで:サッカー一筋の13年間

  • 大学:経済学部卒

  • 学生時代:ノーコードを使ったWebサイト・サービス開発で開業

  • 技術レベル:HTML・CSSは問題なく書けるレベル。JSは読める程度で書けない。

ノーコードを使ったWebでの開発は行っていましたが、コーディングでの実務経験は全くなく、いざ書けと言われれば何もできない状態でした。 そんな私がfreeeで最も大きいプロダクトfreee 会計2ヶ月間の内定者インターンをさせていただきました。 この記事を見て、少しでもfreeeの内部についてイメージを持っていただけたら嬉しいです。

未経験エンジニアが取り組んだ案件

実務経験がないのにも関わらず、バック・フロント両方の案件に携わらせていただきました。

  1. 仕訳帳エクスポート時の空白行詰めの修正(バックエンド)

  2. 「税区分の設定」画面の税区分一覧テーブルのヘッダー固定(フロントエンド)

  3. バックアップ画面のリニューアル・一部vibes化(フロント)

インターンを通して感じたこと

会計プロダクトのコード量

まずは会計プロダクトのコード量に驚きました。 10年以上も書き足されたコードなので、構造がシンプルなわけがなく、理解するのにも一苦労。(まだ一部しか理解できてない)

ただ一方で、10年継ぎ足しで今もなお多くのユーザーに使われているプロダクトに関われることへの感謝と責任を感じると共に、歴史的変遷や他の方が書いたコードから学べることもたくさんありました。

文化の浸透度

私がfreeeで働きたいと感じた一つのきっかけが企業文化でした。私が思っている以上にfreeeの文化が内部に浸透しており、正直驚きました。

ミーティングでは「マジ価値」という言葉を頻繁に耳にし、PM、PD、およびEngがアクティブに意見を交換していました。また、積極的に共有する姿勢「あえ共」によって成功も失敗も各々が共有することで社内での新たなナレッジや経験値を積める循環が生まれていました。

さらに私たちの開発文化には、「世話を焼いていくスタイル」というものがあり、未経験の私が困ったときは本当にたくさんの人に手を差し伸べていただきました。freeeには異なるプロダクト、チームがたくさんありますが、それぞれの垣根を越えた交流が相乗効果を生んでいると感じました。自分自身もfreeeの文化を体現できるように今後も取り組んでいきたいです。

freeeの職場環境と制度についての詳細↓ jobs.freee.co.jp

学んだこと

Ruby on Rails、TypeScript、Reactの基礎知識

独学で勉強してはいたものの、実務になって初めて腑に落ちた知識もたくさんありました。これからもインプットしつつ、どんどんアウトプットしていきたい。

GitHubを使ったチーム開発

今まで個人でしか使っていなかったため、最初はどこに何が今どうなっているのか行方不明になっていました。

テストコード(RSpec)の書き方

ただテストが通るだけでなく、あらゆるケースを想定して防げるテストコードを書く必要があることを改めて感じました。

vibesという便利なコンポーネント

freeeにはvibesというコンポーネントがあり、これがまたとても便利です。まだまだvibes化できていないUIもありますが、積極的に変えていきサービスの統一感やUX向上に貢献したい。Storybookにはしっかりとしたドキュメントがありとても分かりやすいです。

binding.pryの使い方

Rubyを触る上で、無くてはならない存在です。

binding.pryキホンのキ - SmartHR Tech Blog

30分ルール

私は分からない点があると、自分自身で何とか解決しようと長い時間かけてしまうことがあります。また、その不明点がfreee特有なのか、一般的な問題なのかが分からないことも多いです。 無駄な時間を割かないように、30分ルールを設け、時間が経っても解決できなければ積極的にメンバーに頼るようにしました。

細かいことを含めて本当にたくさんのことを学び、経験させていただきました。 まだまだ出来ていないことだらけなので、引き続き色々なことを吸収し、アウトプット(あえ共)していきたいと思います。

変えていきたいこと

  • 幅広く基礎的な知識をさらに定着させる

自分自身が技術に関しての基礎知識が不足していることもあり、原因や解決策を探すのにも全く別の問題として捉えてたりしました。そうなると質問の質や解決力も下がってしまうので、使用する言語だけでなく、 DBやDockerなどの周辺知識についても身につけていきたいです。

  • 他の方に聞くまで時間をかけすぎた

30分ルールと似ていますが、性格的に他人の時間を取ってしまうことが苦手なので、何とか自分の手で解決しようと時間をロスしてました。ただ自分の時間も貴重であり、もし他の方の手を借りた方が時間を大切に使えるのなら、むしろ積極的に他の方に頼ることが大切だと考えられるようになりました。

最後に

この2ヶ月は本当に一瞬でした。今までの環境とは全く違ったので、不安もありましたが、チームメンバーをはじめ、たくさんの方に助けていただいたことで何とかやり切ることができました。 いち早く皆さんと遜色ない活躍ができるよう、これからも精一杯取り組んでいきます!

またfreeeではエンジニアのインターンも毎年開催しております。 もしご興味ある方はぜひ弊社の採用サイトをご確認ください。

jobs.freee.co.jp