🧑‍💼

新卒内定者インターンについて紹介します【バックエンド編】

2023/04/27に公開

こんにちは!プロダクト開発部バックエンド開発グループでエンジニアをしているもっちーです。
今回は入社前に経験した、ココナラの新卒内定者インターンの内容や様子について紹介します!
「どんなことをするの?」「何のためにやるの?」といった疑問を解消し、ココナラで働くイメージの手助けになれば嬉しいです。

自己紹介/スキルセット

2023年1月〜3月までの間、内定者インターンとしてバックエンド開発グループに所属し、4月から正式に新卒1期生としてココナラに入社しました。
大学2年時からエンジニアを目指し、プログラミングを独学で勉強したり、長期インターンでの業務を経験してきました。
ココナラ以外のインターン業務では、Webマーケティング会社でのHP/LPやWordPressのコーディング、受託開発会社でのRuby on Railsを使ったシステム開発などをやっていました。

ただ、大規模なサービスの開発や10人を超えるチームでの業務は、ココナラが初めてだったので戸惑う部分も多かったです。
今回の記事では、そういった観点での新たな学びや気づきについても紹介できればと思います!

なぜ入社したか

入社の決め手はいくつかありますが、その中でも特に印象的だったものを紹介します。

個人に焦点を当てたビジョンへの共感

大学2年時に留学をしていましたが、そこで「自分が本当に好きなことや、やりたいことを勉強して仕事にする」という考え方に触れ、それが当たり前であることに感銘を受けました。
留学を通して得た考え方と通じるところもあり、「一人ひとりが『自分のストーリー』を生きていく世の中をつくる」というココナラのビジョンに強く共感しました。

プロダクトへの興味

個人でWebサイト制作に挑戦していた際に、実際にユーザーとしてココナラに登録していたことも理由の一つです。
自分にとっても身近かつユーザーと近い距離で開発に携われるため、エンジニアとしてのやり甲斐も大きそうだと感じました。

社員の人柄/フラットなコミュニケーション

面接や面談を通して、自分の意見や質問に対してもしっかり耳を傾け、終始本音ベースで話してもらっている印象が強かったです。
オフィスを見学した際にも、部署問わずみなさん温かく歓迎してくれて、人柄やコミュニケーションの面で一緒に働きたいと感じました。

インターン中の目標

ココナラの内定者インターンは、学業や残りの学生生活を優先して行っているため、参加有無や稼働日・頻度は適宜相談して決めます。
そのため、インターン中の目標も求めるスキルや稼働頻度などを考慮して部署ごとに設定されます。
バックエンド開発グループでは、人事/エンジニアそれぞれの観点から以下のような目標が設定されていました。

人事の観点

  • 入社前/入社後のイメージギャップが発生しないようにする
    • 小さい開発タスクを通して、サービスがどのように作られているかを理解する
  • 一緒に働くメンターや組織における相互理解を深める
    • 1on1や定例ミーティング(mtg)に参加する

エンジニアの観点

  • 成功体験として自分の作ったものを誰かに使ってもらう経験を積む
    • タスクを一つリリースまで行う

入社前に実際の開発体制やチームでの業務の流れを体験しイメージを深めることで、入社後もスムーズに業務に入れるようになっています。

入社前後でのギャップ/イメージの変化

サービスや組織の規模が大きい中で色々な職種のメンバーと協力して働くことや、その中でのコミュニケーションについてあまりイメージが湧かない状況でした。
以下では、内定者インターンに参加する前と後で、その状況がどのように変化したかについて紹介します。

職種関係なくチームで協力してプロダクトを作る

ココナラには「One Team, for Mission」というバリューがあり、様々な職種のメンバー同士でのチームワークやオープンなコミュニケーションをとても大切にしていると感じました。
実際に開発タスクを進める中で困ったときは、自部署以外のメンバーにもたくさんサポートしていただきました。
セキュリティ周りのトラブルでは情報システムグループ、タスクの調整や進捗管理ではプロダクトマネジメントグループ、BiqQuery周りのエラー調査ではR&Dグループなど、色んな職種の方に協力してもらい進めることができました。
本当にそれぞれのチームが協力して一つのプロダクトを作っていることを肌で感じることができました。

メンバー間のコミュニケーションや雰囲気

現場に入ると最初はわからないことが多いと思うので、質問がしやすい環境かどうかという不安がありました。
メンターとグループマネージャー(GM)とは毎週30分の1on1があり、業務で困っていることからプライベートに関する雑談までざっくばらんに話す機会がありました。
普段の業務の中でも、頻繁に雑談をしたり困っていることがないか気にかけてくれる雰囲気なので、「こんなこと聞いていいの?」と躊躇することなく、気軽に相談することができました。
一度タスクで詰まってチームメンバーに相談したら、自分の周りに5〜6人程のメンバーが集まって相談にのってくれていて、びっくりしたこともありました(笑)
そのくらい仲間が困っていたら率先して助け合う文化が根付いているのを感じました。

バックエンドエンジニアの業務内容

ココナラのサービス開発において、バックエンドエンジニアがどのような業務を行っているのかという疑問もありました。
バックエンドエンジニアは、ユーザーから直接見えない裏側の部分を担当しています。
必要に応じてデータベース(DB)からデータを取得/更新したり、それを画面に反映させるためにフロントエンドとやり取りを行ったりしています。

ココナラのような仕様やシステム構造が複雑なサービスでは、新機能の開発や既存機能の改修において、一つの修正でも複数の箇所に影響が及ぶ可能性があります。
そのため、細かい仕様、DB構造やシステム構成などシステム全体に関する理解をした上で開発を進める必要があります。
また、パフォーマンスを考慮したDB設計やクエリ最適化など、ユーザー体験向上の観点でも多くのことを考慮する必要があると感じました。
実際の現場に入ってみて、開発をする上での必要な知識や考慮すべき点の多さには驚きました。

インターンの内容(課題/スキル)

インターン中の目標を達成するために、主に以下の内容に取り組みました。
業務の進め方などでわからないことがあれば、その都度メンターに質問しながら進めていきました。

業務効率改善のための開発タスク

開発フローの全体像を掴むために、実際に一つのタスクを通して、環境構築、実装、テスト、レビュー、リリースといった一連の流れを経験しました。
プロダクトマネージャー(PdM)からタスクをもらい、メンターから要件や仕様について説明をしてもらう流れで進めました。
タスクの内容は、特定の条件に合致したデータを一括更新するバッチの実装でした。カスタマーサクセスグループ(CS)の業務を自動化できるという、最初からやり甲斐のあるタスクを任せてもらいました。
最初のタスクは、一からメンターのサポートを受けながら実装〜リリースまで行いました。

その後は管理画面の改修タスクについて、一回目に教わった手順に沿って自分一人で進めつつ、わからないことがあればスポットで質問するというやり方で進めました。
無事Slackでリリース報告をした際には、CSのみなさんからも温かいリアクションをもらえてとても嬉しかったです!

released-slack

1on1/定例mtgへの参加

ココナラでは、メンバー同士のコミュニケーションを大切にしていて、毎週メンターとGMとの1on1があります。
アジェンダは特に決まってなく、会社やチームに関する疑問、業務で困っていること、今後挑戦してみたいことなど様々で、普段何気なく感じていることについても率直に話すことができました。
その他にも、以下のようなmtgに参加しました。

  • 朝会(タスク内容の共有やパフォーマンスのモニタリングを行う)
  • メンタリングよもやま(最近入社したメンバーの困っていることや疑問を解消する)
  • 設計レビュー会(設計や実装方針についてチームで議論する)
  • プロダクト開発部全体共有会(部全体の相談・共有事項を周知する)
  • 全社キックオフ(各部署の取り組みや目標を全社で共有する)

定期的に意見交換や情報共有の場が設けられているため、部署や会社全体の状況や取り組みについても把握しやすかったです。

インターンを通して学んだこと

約2ヶ月間のインターンを通して、主に以下のことを学ぶことができました。

開発をする上での手順/ルール

現在のココナラは、サービス規模が大きく組織も速いペースで拡大しているため、開発をする上で覚えるべきルールや注意点が存在します。
実際にタスクを進めていく中で、以下のことを一つずつ覚えていきました。

  • 各Slackチャンネルの役割/使い方
  • issue作成〜開発チケットの承認ルール
  • Gitの運用ルール/ブランチの命名規則
  • 各リポジトリの役割/構築〜デプロイ手順
  • レビュー後のマージ〜リリース手順

ココナラではドキュメントを用いてナレッジを共有する文化が浸透しているため、これらのルールや手順もドキュメントを見れば進められるようになっています。
また、統一された手順に沿って何度か繰り返すことで、人為的なミスを防ぎつつ開発業務に集中できるようになるのを実感しました。

ココナラが大切にしている文化/考え方

ココナラには、異なる職種のメンバー同士でも活発にコミュニケーションを取り、一つのチームとしてプロダクトを作っていく文化が根付いています。
全員が同じ目標や方向に向かっているため、困っている人がいれば職種や役割関係なく全力でサポートするし、より良いプロダクトを作るための意見交換も頻繁に行われています。
そのため、普段からよく雑談をしたり、気さくに声をかけてくれる人がとても多いです。
また歓迎会、ランチ会、懇親会といった場も頻繁にあり、普段関わらないメンバーともコミュニケーションがとれるようになっています。
実際に、部署関係なくランチに連れて行ってもらったり、懇親会でも色んな人が話しかけてくれる雰囲気でした。
そういった場でお話をすることで業務でも話しやすくなるため、今後も積極的に参加していきたいです。

ココナラのエンジニアとして働く上で大切なスキル/姿勢

ここまでの会社の文化や考え方を踏まえて、ココナラのエンジニアとして働く上で個人的に大切だと思ったことについても紹介します。
繰り返しになりますが、ココナラには以下のような特徴があります。

  • 様々な職種のメンバーがワンチームでプロダクトを作っている
  • サービス規模が大きくシステムも複雑になっている

必然的に、システム全体やサービスの仕様すべてを把握するのは難しくなります。
そういった状況では、「適切なタイミングで適切な人に質問/相談するスキル」がとても大事になると感じました。
そのためには、普段から部署内外問わず他のメンバーが何をやっていてどんな分野が得意かなどについてもアンテナを張る必要があります。
そして、何か困った時に「この人に聞いたら解決できるかも」といった状態を作れるように、普段から色んな人との意見交換を大事にしていきたいです!

サマリー

​今回は、ココナラの新卒内定者インターンを通して、自分が経験した内容やその中で感じたことについて紹介しました。
少しでもココナラを知るきっかけや働くイメージの参考になれば嬉しいです。
今後バックエンド以外のインターン体験談についても紹介される予定なので、興味がある方はぜひ読んでみてください!

さいごに

ここまで読んでいただき、ありがとうございました!
ココナラでは新卒採用も積極的に行っているので、もし興味がありましたら下記のリンクからご確認ください!
https://coconala.co.jp/recruit/newgraduates/

Discussion