初めまして、2020年8月中途入社の礒部です。
入社してから2ヶ月の社員が、何をしてきて今何をしているのか?という一例をご紹介します。
研修(8月)
最初の1ヶ月間は研修になります。研修トレーナーがついてサポートしてくれます。
私は通販チーム所属だったため、研修内容は 下のリンクの 虎の穴ラボの新規参入メンバー研修【通販チーム】 の通りになります。
新規開発チームの研修の様子は 下のリンクの 未経験者がRuby on Railsを学習してみた の通りになります。
1日の流れ
10:00 ~ 10:15
: 研修トレーナーとの朝会10:15 ~ 10:20
: 虎の穴ラボ全体の朝会10:20 ~ 10:30
: 通販チームの朝会10:30 ~ 18:30
: 研修18:30 ~ 19:00
: 面談
研修トレーナーとの朝会
前日の作業内容、本日の作業内容を報告します。
また、困っている事をなんでも相談できます。(課題内容、勤怠、社内ルール 等)
虎の穴ラボ全体の朝会 / 通販チームの朝会
実際に業務をしているメンバーの朝会に参加し、雰囲気や仕事内容、報告の仕方を学びます。
研修期間でも、全体の朝会などにも参加していく事で当事者意識が芽生えます。
面談
今日1日の研修内容を、報告書に記述し面談をしていきます。
何が良かったか悪かったかを考え、次につなげていきます。
朝会よりも時間が多く、細かい相談ができるため様々なアドバイスを貰うことができます。
また、様々な社員が交代で面談をしてくれるので顔合わせとコミュニケーションの場をかねています。 リモートワークだとコミュニケーションが難しいので、こういった場で1対1で話せるのは嬉しかったです。
第1週 (自社サービス調査)
入り口として自社のサービスへの理解を深めるため、自社サービスの強みと弱みを見つけ改善案を出す課題を行います。
強みをどのように活かし、弱みをどのように改善していくか考えていきます。
提案をいくつか出し、最後に共有します。
第2週 (課題設計)
研修課題として、開発・実装するシステムの要件をもらいます。要件に対して、設計から自身で考えトレーナーと相談しながら進めていきます。
私の課題は、 通販の売上状況を指定された指標毎に表示できる画面の作成
でした。
基本的に設計は自由でしたが、使用する言語についてのみ、「Kotlinを使うこと」という指定がありました。
とらのあな通販の開発では主にJavaを使用しています。社内ツールでも同様なのですが、今後はKotlinで書く機会を増やしていきたいという背景があるためです。
ただの研修ではなく、実際の業務に役立つ物を作るというところでやる気がでますね!
設計内容
- 本番DBからのアクセスの度にデータを集計・取得すると時間も負荷もかかるため、専用DBと登録するためのバッチ処理を採用
- 今回作成する画面は集計結果の表示がメインであるため、毎回画面全体の更新を挟まなくて良いAPIによるSPA形式を採用
技術選定
Ktor
: Kotlinの軽量Webフレームワーク。今回、API形式にするため採用Exposed
: JetBrains開発のORMフレームワーク。OracleDBとMySQLどちらにも対応しているため採用Vue.js
: 使ったことがあり、SPAの実現が可能なため採用Chart.js
: グラフ描画としてメジャーなライブラリであるため採用crontab
: 今回オンプレサーバーに構築し、1日1回実行という単純な機能だけが欲しかったため採用Nginx
: 1つのオンプレサーバーに、フロントとバックエンドAPIを両立させるためリバースプロキシとして採用
Kotlinを触ったことが無かったため、勉強に時間がかかりそうです。そのため、フロントは経験があるVue.jsにしてKotlinの勉強時間を増やせるように意識しました。
1ヶ月という限られた期間内にどこまで挑戦するか悩みますね。
最後に研修トレーナーと対面レビューし、OKであれば開発に着手していきます。
第3週 (課題開発)
開発していきます。Kotlinを勉強しつつ開発のため大変でしたが楽しいです。
1日以内の量に収まるように、タスクを作成して朝会で報告して着手していきます。
使用ツール
Trello
専用のTrelloボードを作成して貰えるので、自由にタスク整理ができます。
開発期間が短いため、このペースで間に合うかどうかをタスクを作成しながら考えて着手していきます。
Github
専用のリポジトリを作成して貰えます。
開発ルールは、実際の業務を想定して合わせていきます。
- ブランチの切り方
- コミットメッセージ
- PRの作成方法
第4週 (本番反映、テスト会)
本番環境に反映し、研修トレーナー全員の前でデモをして指摘を貰います。
実際に以下のような指摘がありました。
これらを優先度をつけ、残り時間で出来る限り直していきます。最終的に、指摘点の修正を反映して完成です。
今では、実際の業務で売上状況を確認するツールとして使われています!
研修終了(9月)
9月からは、通販の開発業務に入りました。 通販チームではスクラム開発を行っているため、スクラムイベントに参加していきます。
2週間スプリントで、以下のようなスクラムイベントがあります。
- スプリントプランニング : 2週間の間にどこまでやるのか、何をやるのかを考えます。
- スプリントレトロスペクティブ : この2週間の間に起きた事を振り返り、改善案や続けた方が良い事を全員で出していきます。
- スプリントレビュー : スプリント内で作成した成果物をデモし、評価してもらいます。
案件開始
最初は通販サイト自体ではなく、運用チームが使う管理画面の開発になりました。
開発フローは研修と同じく、 設計 -> 開発 -> レビュー -> リリース
です。
設計
GoogleSpreadsheet に設計を記述していきます。 過去の案件も公開されているため、色々と参考にできます。
テンプレートがあり、フォーマットが指定されているため当てはめていきます。項目としては、目的、概要、前提条件・確認要項などがあります。
目的を最初に記述する事で、この案件をやる意味の認識を合わせることができます。
最後に対面でチームメンバーと設計レビューをして完了です。
開発
管理画面にもKotlinが使われています。研修で勉強していた成果が早速活かせます。
コードも整理整頓されており、コメントも多く読みやすいです。
また、システムの仕様は細かく社内wikiに記述されており理解がしやすいです。(フロントのwikiだけでも19件! )
最後にレビューが通れば完了です。
レビュー
今回開発したのは管理画面のため、通販の運用チームの方に確認して貰いました。 デモをしながら、操作方法を説明していきます。
作成したものに対して反応が貰えるので、嬉しい瞬間です!
ここで仕様漏れや機能の追加要望などを確認して、全員の認識を合わせてから問題なければリリースします。
リリース
リリース手順に従い、リリース作業を行います。 作業者は自分で、立ち合いとしてメンバーが画面共有しながら見守ってくれます。
本番反映ができたら、動作確認をして終了です。
実際に案件に入ってみて
研修で学んだ事がそのまま業務で活かせる、とてもいい研修内容でした!
仕様も細かくまとまっており、wikiも随時更新されているため新規参入者でも理解しやすいようにサポート体制が整っていて非常に助かっています。
JavaやKotlinを知らなくても、問題なく案件に入る事ができます。
今後はスキルアップ支援制度により技術書購入や勉強会参加に補助がでるため、活用してJavaやKotlinの理解を深めていきたいです。
虎の穴ラボ 採用・イベント情報
虎の穴ラボイベント
虎の穴ラボでは現在、オンラインイベントを企画しています。是非ご参加下さい。
【オンライン】10/28 オタクが最新技術を追うLTイベント#18【テーマフリー】 yumenosora.connpass.com
【オンライン】11/6 とらのあなラボエンジニア座談会Vol.4【CTOに聞いてみた】 yumenosora.connpass.com
その他採用情報
虎の穴ラボでの開発に少しでも興味を持っていただけた方は、採用説明会やカジュアル面談という場でもっと深くお話しすることもできます。
カジュアル面談では虎の穴ラボのエンジニアと1on1で話せます。開発プロセスの内容であったり、「今期何見ました?」といったオタクトークから業務の話まで何でもお応えします。
是非ご検討ください。
yumenosora.connpass.com
採用情報についてはこちらをご確認ください。
yumenosora.co.jp