こんにちは、サブスクペイ機能開発エンジニアの大倉です。
株式会社ROBOT PAYMENT(以下、ロボペイ)に入社して一ヶ月が経ったところです。 決済サービスに関わるのはロボペイが初めてで、覚えることがたくさんあって日々てんてこ舞いです。
ロボペイでは様々なサービスを展開しており、私が開発に携わっている「サブスクペイ」もその一つです。 ここでは、サブスクペイの機能が世に出るまでの流れをエンジニア目線でご紹介したいと思います。
サブスクペイの機能開発の大まかな流れは、 1. 実装する機能を決める! 2. 開発する! 3. リリースする!
となります。一般的なシステム開発と同じですね。 サブスクペイのサービスは基本的に一ヶ月ごとにリリースするため、この流れを一ヶ月ごとに行っていきます。
1. リリースする機能を決める!
まずは次回のリリースに向けて、実装する機能を決めます。 サブスクペイでは関係各所からの改修要望や不具合等をまとめています。 その中から要望の要求度が高いもの、不具合の緊急性が高いものをピックアップし、次回リリースする機能を決めます。
リリースする機能が決まったら、各エンジニアに担当機能が割り振られます。
リリースする機能のピックアップまではマネージャーと関係各所が調整し、機能の割り振りはマネージャーとエンジニアが話し合って決める流れになります。
2. 開発する!
ここからエンジニアのメインの作業がスタートです。 開発の流れは、 1. 要件定義 2. 実装 3. テスト
となります。これも一般的な開発手順ですね。
要件定義
機能の改修内容を要件定義としてまとめます。 現状からの変更点や、新規実装する機能の仕様等をまとめます。 不明点等があれば他メンバーに確認したり、必要に応じて他部署と連携しながら仕様を決めていきます。 ユーザーにとって使い易く、分かり易い仕様を心掛けます。 要件定義と銘打っていますが、内容的には機能設計~詳細設計に近いイメージかなと思います。
実装
要件定義をもとに機能を実装します。 機能を網羅することはもちろんですが、他のエンジニアが理解し易いコードを心掛けます。 実装が終わると他メンバーにコードレビューをしてもらいます。 自分では気付かなかった指摘をいただくことがあるので、何気にちょっと楽しみだったりします。
テスト
実装が終わったらテストです。 - 実装者が実施するUTコードによるテスト - 実装者以外が実施する画面の機能テスト - リリース前にメンバー全員で実施するモンキーテスト
これらのテストを実施して不具合を潰していきます。
テストが一つの機能としての開発は、ここで一区切りです。 基本的に複数の機能を割り振られるので、引き続き要件定義から作業を行い、全ての機能がリリースに間に合うように作業を進めます。
3. リリースする!
リリース日が近づくと、リリースに向けた作業をしていきます。
リリースする機能を関係各所に説明し、レビューしていただきます。 問題がなければリリースする流れとなります。
リリース作業はリリース手順書に沿って、複数人で確認しながら作業します。 リリース手順書もリリースごとに内容をレビューし、正しく機能がリリースできる手順であるか確認してから実際の作業を行います。
リリース作業が完了すると、サブスクペイに実装した新たな機能が晴れて世に出ることになります。
あとはトラブル無く動いてくれることを祈りながら、次回のリリースに向けた開発作業に入ります。
最後に
今回ご紹介した内容は基本的な流れになります。 サブスクペイの機能が世に出るまでエンジニアってどんなことやってるの?と思われる方の参考になれば良いと思います。
We are hiring!!
ROBOT PAYMENTでは一緒に働く仲間を募集しています!!!
speakerdeck.com
www.robotpayment.co.jp
🎉twitter採用担当アカウント開設!🎉どんどん情報発信していきます!!