見出し画像

trocco®開発者が、開発の面白さを紹介します

はじめまして。primeNumber CTOの @kekekenta (インタビュー記事)です。
今回は、primeNumber社が提供するマネージド ETL&ワークフローサービス trocco® の開発者として、開発の面白さを紹介します。

この記事を読んで trocco® やその開発に少しでも興味を持っていただければ幸いです。

trocco® をご存知無い方も多いと思いますので、はじめに簡単にプロダクトの紹介をいたします。

trocco® とは?

trocco®公式サイト

trocco® は、MySQLやS3などのデータをBigQueryを始めとしたデータウェアハウスに統合し、分析基盤を構築するためのマネージド ETL&ワークフローサービス です。リリース以降、リクルートメルカリをはじめとし、大企業からスタートアップまで様々な企業にご利用いただいております。お客様からは、「trocco® 無しでは分析基盤構築は考えられない」など、嬉しいフィードバックを多々頂いてます。

以下のように転送元と転送先を選び設定を作成するだけで、簡単にデータを統合することが出来ます。

画像2

trocco® が解決する課題
BigQueryなどを利用して分析基盤を構築する会社は増えていますが、各社データ統合(MySQLやS3のデータをBigQueryに転送する)の部分は自前開発しているケースがとても多いです。
データエンジニアの方が実際に開発・運用されることが多く、安定したデータ統合基盤を構築・運用するのは非常に手間のかかることです。
こういった運用まわりに多くのリソースが割かれてしまい、より戦略的な業務に時間を割きにくいという課題がありました。
trocco® を利用することで、この分析基盤構築におけるデータ統合部分をまるっと任せることが出来、データエンジニアの方々がより戦略的な業務に時間を割くことができます
現在はデータ統合だけでなく、データエンジニア周辺の様々な業務までカバー領域を広げていて、分析基盤構築については全てを trocco® に任せられることを目指しています。

それでは、trocco® 開発者が感じる trocco® 開発のおもしろさを紹介していきます。

1. 正しいプロダクトを作り、顧客から感謝される

trocco® は既存のお客様から大変ご好評を頂いており、お客様のMTG等を通して直接フィードバックを得る機会があり、開発の励みになっております。

画像2

開発者としては、自分が開発するプロダクトが正しい方向に向かっているか、機能が正しく顧客に受け入れられるものか、という点は大変重要です。

現在、trocco® 開発チームの開発体制は
・プロダクトオーナー: 1名(インタビュー記事
・フルタイムの開発者: 7名(うち1名はデザイナーを兼務)
・業務委託の開発者: 数名
・カスタマーサクセス: 数名
となっており、プロダクトオーナー、カスタマーサクセスを中心に定期的に既存のお客様への新機能・既存機能のヒアリングを実施してプロダクトにフィードバックする流れを作っています。

大きめの新機能を開発する際にはプロダクトオーナー、デザイナー、開発者でチームを作り、まずは課題をお客様にヒアリングします。
解決する必要のある課題であると判断された場合は、仕様等を考えFigma等でワイヤーフレームを作った上で、お客様と具体的な解決策を元にディスカッションし、機能に落とし込んでいくという流れを取ることが多いです。

こういった顧客ヒアリングを徹底することにより、少ないリソースでより確度の高い機能開発を集中して行えるようにしています。

実際に機能をリリースした際にはお客様から喜びの声をいただくことが多くあります。カスタマーサクセスのメンバーがSlack等でその様子をシェアしてくれ、チームメンバーのやりがいに繋がっています。
自分たちが作った機能が誰かのためになっていると直に感じれることは、開発している上で非常に面白いことだと思います。

▼SlackでCSメンバーがお客様のフィードバックを紹介する様子

画像3

2. 事業成長が実感でき、チャレンジングな課題が沢山ある

trocco® は市場からも高く評価され、導入企業数・売上ともにも飛躍的に伸びています。

一方、お客様が増えるにつれ、当然要望の種類や数が増えてきており、優先度をつけて適切にプロダクトを改善するべく、日々格闘しています。

また、システムが大きく、さらに複雑になるフェーズでもあります。いかにシンプルに保ち、リリーススピードを維持しつつ高品質なものを作り上げていくかは今後のエンジニアリング課題のひとつでもあります。

さらに、顧客数の増大に対してより信頼性の高いデータ統合の基盤を維持し続けていくことは、難しくもチャレンジングな課題の一つであるとおもいます。

trocco® が正しいプロダクトを作り続け、お客様に受け入れられ続ける限り、今後もチャレンジングな課題は出続けるはずです。
多くのプロダクトに共通することですが、それを1つずつ技術力を持って解決し、お客様に価値を届け続けるということは、難しいと同時にtrocco® 開発の面白さの1つです。

3. サーバー・フロントエンドからKubernetesまで、フルスタック的に開発を進めることができる

trocco® は主に、サーバーサイドを Rails、フロントエンドをReact(Typescript)で開発しています。

また、データ転送部分のジョブ基盤として、Kubernetes(EKS)を利用しています。お客様ごと、データ転送の度に新しく Pod を立ち上げ、データ転送が完了すると Pod を破棄してデータを保持しない様な仕組みになっています。

現在は多くのメンバーがフルスタック的に開発しており、各メンバーがサーバーサイド・フロントエンドを開発しつつ、Kubernetes 上でのアーキテクチャーの設計を行うことが多くあります。

多くのメンバーは trocco® の開発ではじめて Kubernetes を触る事が多く、実務を通して知識を身につけています。また、会社の試験全額補助制度があるため、CKAD(認定Kubernetesアプリケーション開発者)を受けて体系的に学習することも出来ます。

今後は開発チームが拡大し、分業していくことも考えられますが、現在は幅広い知識を元に開発経験を積むことが出来るということが、開発の面白さの1つです。

4. エンジニア 1名がデザイナーも兼任していて、コードを書けるので、開発が非常にスムーズ

開発チームのエンジニアの1名がデザイナーも兼任しているため、デザイナーの方が直接コード(Rails、React)を書いて trocco® を開発する体制になっています。

例えば、大きなデザイン修正を伴う新機能開発の場合は、他の開発メンバーがロジックを実装し、そのGitブランチに対して直接CSSやRails、Reactのコードを修正してデザインを当ててもらうことでスムーズに開発が進めることができます。

エンジニアであるため、はじめから実装を意識したデザインを行うことが出来るというのも非常に頼もしい点です。

複雑なデザイン部分の実装に他のエンジニアが頭を悩ませる必要がないため、より開発に集中することが出来るというのは trocco® 開発の面白さの1つです。

最後に

少しでも trocco® の開発に興味を持っていただけた方は、是非カジュアル面談しましょう!

メンバーも募集しており、副業も歓迎ですので何卒よろしくおねがいします!

カジュアル面談、副業のご応募は、以下のリンクからお願いいたします。

募集中の求人(副業)
trocco® 開発の副業ソフトウェアエンジニア求人
trocco® 開発の副業SREエンジニア求人
自社開発PaaSの副業ソフトウェア・SREエンジニア

この記事が気に入ったらサポートをしてみませんか?