ペライチ開発チームのご紹介

# はじめに
この記事は<a href="https://qiita.com/advent-calendar/2021/peraichi" target="_blank">ペライチアドベントカレンダー</a>の7日目の記事です。

こんにちは。株式会社ペライチで取締役CTOをしている香月雄介です。開発組織およびプロダクト開発全般を管掌し、エンジニアが楽しく働けて成長できる組織をつくることにコミットしています。

<a href="https://peraichi.com/" target="_blank">ペライチ</a>は、PCに慣れていない方でも誰でもかんたんに利用できるSaaS型のホームページ作成ツールです。ホームページを作るだけでなく、店舗予約や決済、メルマガ配信などビジネスに必要なさまざまな機能を提供しています。

この記事ではそんなペライチの開発チームについてご紹介します。
SaaSスタートアップ企業がどのような技術構成や開発体制をとっているかという観点で、参考になれば幸いです。

# ペライチの開発チームの全体像
* ペライチの開発チームは約25人。会社全体の50%がエンジニアとデザイナーです。

# 開発体制
* チーム全体として、基本的に2週間のスプリントによるスクラム開発を実施しています
* ペライチ自体は単一プロダクトですが、編集画面、予約機能・メルマガ機能、決済機能、新規事業チームと、ミッションごとに4つのスクラムチームに分かれてプロダクト開発を進めています
* また、横串でのインフラ環境の構築、保守運用を行うインフラチーム、開発の生産性向上の取り組みを行うDPDXがあります
* 隔週のスプリントレビューでは、経営陣およびPO、全エンジニアメンバーを含めたデモ会を実施しています
* また、スプリントレトロスペクティブでは、スクラムチーム横串での振り返り勉強会を開催しています

![スクリーンショット 2022-09-07 17.41.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18614/d99ac759-0543-31ba-1df9-7e017315b347.png)

# 技術要素
ペライチでは、以下の技術要素を使ってプロダクト開発を実施しています。
![スクリーンショット 2021-12-02 14.31.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18614/def4563f-6914-56d0-06a0-b0efe3eb8a9d.png)

#### サーバーサイド
創業期からあるホームページ作成領域や決済領域の機能はCakePHP、それ以外の機能はRailsという形でマイクロサービス化しています

#### フロントエンド
* サービスの肝であるページ作成編集画面はBackbone.jsを用いたSPAとして構成されており、現在Vue.jsにリプレイスする方向で企画中です
    * ペライチの編集画面
        * ![スクリーンショット 2021-12-02 14.51.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18614/7c0476ed-158f-dea0-767d-28f66e6747ae.png)
* それ以外の箇所も部分的にNuxt.jsを導入するなどモダンFWの導入を積極的に進めています

#### インフラ環境
* インフラ環境はAWSのEC2, RDS, ElastiCache, S3, CloudFront, SES, etc...を用いた構成になっています
* また、一部herokuを使っています
* EC2はDockerに移行計画中です

#### CI/CD, QA
* デプロイはCapistrano。機能開発が完了するたびにほぼ毎日実施しています
* テストはプルリクエスト作成時にSider/CircleCIにて自動テストを行っています
* また、それとは別に、粒度の大きい開発は外部のQA業者さんに委託して、人力によるシナリオテストも実施しています

#### その他
* GitHubによるチケット管理とPRベースの開発
* プロジェクト管理はZenhub
* コミュニケーションはZoomとSlack
* ドキュメント管理はesa

# 基本的な開発フロー
プロダクトロードマップをもとにしたトップダウン的な開発と、現場からの機能改善提案をベースにしたボトムアップ的な開発の両輪を意識したフローとなっています。

![スクリーンショット 2021-12-02 15.38.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18614/39826475-faa3-47ee-837a-b7381fd6a73a.png)

# 開発スタイル
SaaSプロダクトの肝は顧客満足度を高めることでお客様に利用し続けてもらうことです。そのために、ペライチの開発スタイルは、**エンジニアが積極的に機能開発をリードしていく**ことを意識したものとなっています。
![スクリーンショット_2021-12-02_15_20_14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18614/26966591-9ee8-45d5-34c2-eba6269bc5ac.png)

* トップダウン的に経営層やプロダクトマネージャーが決めたものを開発するのではなく、現場からの改善提案を積極的にロードマップに反映しながら開発をしています
* 開発メンバー含めユーザーヒアリングに参加し、顧客課題の解像度を現場レベルで高めることを意識しています
* スクラム開発により、開発完了したものは日次ベースでリリースしています

# カルチャー・組織風土
リモートワーク下でも**チームでの生産性と心理的安全性を高めることに重きを置いた文化**となっています。

![スクリーンショット 2021-12-02 15.58.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18614/e9a3f9e9-80b3-b6e2-a113-f1566d376824.png)

* 必要に応じてペアプロや勉強会など、積極的にコミュニケーションをとることでチームで生産性を高めることを重視しています
* チームメンバーは性格的に大人で協調性が高い方が多いです
* 特に、採用面接などで現場メンバーにお会いいただいた方からは、人の良さ、チームの雰囲気の良さを褒めていただけることが多いです（手前味噌ですが！笑）

# 働き方
* 働き方はほぼフルリモートワークでSlackとZoomを駆使して業務を行っています。新潟や岐阜から働いているエンジニアもいます
* とはいえ、実際にオフィスに集まって顔を合わせることも重要視しており、月に一度ほどオフィスに集合してリアルでの勉強会を実施しています
* 直近のエンジニアの月間平均残業時間は19時間ほど。すなわち1日1時間未満となっています
* 既婚者やお子さんがいる方も多く、ワークライフバランスは比較的とりやすい環境かと思います

# 今後の展望
**クリエイターパラダイス化**
ペライチは技術的なトライができてプロダクトを通した社会貢献できる、そんなテックカンパニーを目指しています。

そのために開発チームとしては、エンジニア、デザイナーが楽しく働けて成長できて、一人ひとりが自社に誇りを持てる、そんな組織をつくりたいと考えています。

以上です。ここまで読んでいただきありがとうございました！