はじめに
BASE BANK Division で エンジニア をしている岩本と申します!
YELL BANKの開発を担当しています。
2024年5月にBASEへjoinして早いもので5ヶ月ほどが経ちました。
joinしてからいくつかのプロジェクトを担当してきました。
改めて考えるとオンボーディングがとても充実していたおかげで円滑にプロジェクトに入っていけたのだなぁと感じます。
そこで、オンボーディングを中心にこれまでの5ヶ月を振り返りつつ、チームが新規メンバーのキャッチアップに向けて、どのような取り組みを行っているかを紹介させて頂こうと思います!!
前置き
本題に入る前に前置きです。
私の普段の業務をイメージしやすいように体制や役割、各種環境についてお伝えします!
体制
まずは体制です。
私の担当するYELL BANKですが、joinした5月時点では以下のような3名体制で開発していました。
- EPM(Engineering Program Managerのことです。こちらをご参考ください。)
- エンジニア2名(内1人が私)
7月以降は以下の体制に移行しています。
- EPM
- エンジニア1名(私)
役割
次に役割です。
私はエンジニアですが、BASE BANKでは「フルサイクルエンジニア」という役割が求められます。 フルサイクルエンジニアについての記事は過去にGroup Managerの松雪さん(@applepine1125)が書いたこちらをご参考ください。
そのため、企画・要件定義〜保守運用・データ分析支援等まで幅広く対応することが必要になります。
それにより、開発チームだけでなく、PdM、デザイナー、PMMといった職能のメンバーとも頻繁にコミュニケーションが発生します。
体感的には開発チーム:7、PdM・PMM・デザイナー:3くらいの割合でコミュニケーションしています。
出社頻度
コミュニケーションに関連した話ですが、現状、BASE BANKの開発チームでは週1(毎週木曜)に出社日を設け、その他はリモートワークです。
開発環境
最後にアーキテクチャ周りのお話です。
私の担当するYELL BANKの開発業務においては以下の図の上側にあるBASEのサービスと下側にあるBASE BANKのサービス群を実装しております。
ご覧の通り、フロントエンドはTypescript(Vue.js)、バックエンドはPHP、Go、Pythonという形で複数の言語で開発しています。
また、インフラは主にAWSを使用しており、IaCではterraformを使用しています。
本題
前置きが少々長くなりましたが、ここから本題です。
私が効果を感じた取り組みなどを5つ紹介させて頂きます!!
その1 オンボーディングクエスト
BASE BANKチームではオンボーディングクエストを用意しています。
以下はNotionで作成したオンボーディングクエストのTOPページになります!
新規メンバーはまずクエストに沿って開発環境構築等の各種セットアップをしていきます。
さらに開発環境構築だけでなく、プロダクトの説明を受けたり、実際に触ったりといった研修も行います。
オンボーディング中はメンターが1人付きますが、クエストの中でPdMやデザイナーといった他の職能のメンバーとも接します。
フルサイクルエンジニアとしてはコードが書けるというだけでは不十分です。
そのため、プロダクトの研修があったり、他の職能のメンバーとコミュニケーションできる機会があったのは業務を進めるのに大変助かりました!
また、クエストではオンボーディングタスクというものを用意しています。
簡単かつ業務を1サイクル回せるといった最初のキャッチアップにちょうどよいタスクのことです。
私の場合、if文を少し修正すればOKな簡単なコード修正と、それをデプロイするというタスクでした。
これにより一通りの開発の流れを把握できました。
クエストはオンボーディングが終了するたびに振り返りをして改善を重ねています。
その2 オンボーディング期間中は毎日出社
オンボーディング期間は1〜2週間です。
その間、基本的には新規メンバーもメンターも毎日出社します。
そのため、すぐにメンターや他のメンバーに質問することができます。 対面なので、解決も早いです。
それ以上にメンバーとの信頼関係をかなり早く構築できるというメリットを感じます。
リモートの場合、コミュニケーション量が少なくなる傾向があるため、出社による対面のコミュニケーションでレクチャーを受けられたことでシステム、プロダクトのインプット量・質も上がりました。
今振り返ってみても最初に出社していたことでオンボーディング後の業務を円滑に進めることができました。
また、入社前・直後にコミュニケーションに不安を感じる方は多いとは思いますが、BASEでは早期にそのような不安を解消することができました!
デメリットとして通勤の負荷はありましたが、それを超えるメリットを享受できたと感じています!
前置きでも記載した通り、オンボーディング終了後は週1(毎週木曜)で出社しています。
その3 ドキュメント文化
オンボーディング終了後、いざ本格的な業務に入るわけですが、まだまだ分からないことはたくさんあります。
BASE BANKにはドキュメントを残す文化があります。
分からないことがあればNotionやREADMEを見れば答えに辿り着くことも多いですし、あるいはなにかしらのヒントがあることが多いです。
業務していると大抵、どのメンバーも同じことで困るパターンも多いので、そんなときのためにトラブルシューティングをまとめたドキュメントも存在します。
個人的にはオンボーディング直後はこのドキュメントに大変助けられました。
以下はそのトラブルシューティングのドキュメントを一部抜粋したものです。
その4 メンターランチ
BASEにはメンターランチという制度があります。
入社後、主に業務で関わるメンバーとランチするというものです。
費用は会社負担です。
この制度により、自分で機会を設けずとも仕組みでコミュニケーションの機会を設けることができます。
プロジェクト開始前にエンジニア以外の職能のメンバーともお話できたことで、いざプロジェクトを進めるというときにやりやすかったのを覚えています。
その5 振り返り文化
BASE BANKではスプリントごとにも振り返りしますが、それぞれのプロジェクト後にも振り返りをする文化があります。
プロジェクトの振り返りは職能横断的にそのプロジェクトに関わったメンバー全員が参加します。
私個人としては振り返りの場はプロダクトを知る機会でもあり、人を知る機会でもあります。
その人の職能、経験によって色々な意見が出ます。
そして自分も意見を出します。
意見を出すということはプロジェクトやプロダクトについて、常に能動的に考えている必要があります。
振り返り文化のおかげで自然とそのような考えになっているように感じます。
つまり、自然と「早くキャッチアップしなきゃ」という気持ちになります。
まとめ
改めてこれまでの4ヶ月を振り返ってみました。
振り返ってみると円滑なコミュニケーションというところにBASE BANKの強みがあるのだと感じます。
そして、それによるチームプレイに強みがあるのだと感じます。
私自身はまだまだ全般的に知識が不足しているので、チーム力向上に寄与できるように邁進します。
おわりに
BASE BANKではいっしょに働く仲間を大募集しております!
フルサイクルエンジニアという役割に興味があるという方はまずはカジュアル面談からでもご応募頂けるとうれしいです!
↓の採用ページの募集職種一覧から、BASE BANKチームで6.金融サービス(BASE BANKチーム)を選択頂いてカジュアル面談にご応募できます!