システム部門でエンジニアリングマネージャー(EM)をしている高山です。
今春で
トライステージがシステム開発の内製開発を始めて2年たちましたので
エンジニアたちがどのようにして開発にチャレンジしているのか
logを残しておきます。
弊社ではコードをなるべく書かない「ローコード開発」を
取り入れてます。
この開発スタイル、導入するときは、そこまで主流になるとは思わず
ま~、ほどほどにしようと考えていたのですが・・・
ここ1年で自然な流れで
開発の5~8割くらいが「ローコード開発」での開発となっている実状です。
ローコード開発とは
詳細は割愛しますが、超高速開発の中の一種で
ざっくり分けると
全く開発しないもの・・・ノーコード開発
少し開発するの ・・・ローコード開発
として分類できると思います。
トライステージでの利用の感じも以下の分類で、世の中と大差がないです。

ローコードのツールとかプラットフォームは
他のサイトで一覧紹介をお任せするとして、ノーコードのプラットフォームとして有名なZapierやShopifyなどは、実利用も多く
非エンジニアの人の方もよく使い方を知っていて、広く普及しています。
トライステージにローコードツールの導入
始まりは、2020/3にプラットフォームの比較検討をして
2020/4にKintone導入しました。
要件にフィットしたため採用をしたのですが
コロナ前後でこの手のサービスが流行り、弊社でも時を同じくして
導入をしていたということになります。
ちょうど、ライトに使える「Webべースの表サービス」や「WebDB」の導入を考えていたところに、対応するべく企画が入り、
システム化とともに簡易的なシステムでサービス提供ができる
「何か」の導入となりました。
Airtable等々の比較検討の上、サイボウズ社のkintoneが要件にフィット
して採用をしました。
ここがトライステージでのノーコード・ローコード開発の始まりでした。
どのようにプラットフォームを使っているか
導入当初は2~3日位のコーディング量のものから始まったのですが
最近では、これ、ローコード?なの?
というような、システムを立ち上げることが多くなってきました。
なので、トライステージの主流は
スクラッチだけどローコードプラットフォームを使うというスタイルです。
使っているプラットフォームによっても異なりますが、トライステージでは以下の機能を任せてしまっているので、その分でローコードにしてます。
プラットフォームに任せているもの
サーバレス | Webサーバとか、そもそもサーバ自体の管理が不要。 サーバ監視・リソース監視も不要。 |
DB | ローコード開発のプラットフォームのメインの機能。 DBで使いづらい部分もありますが プラットフォームの制約を受けつつ利用 |
認証・認可・セッション管理 | Webフレームワークの機能を使ったとしても 開発コスト、運用コストがかかりますので この部分だけでも、かなりの恩恵を受けています。 |
アカウント管理 | この機能もあり物を流用したとしても、システムごとにコストがかかるので、アカウント管理も地味に重要。 |
ユーザ権限 | レコード・カラム単位で制御ができるので 非常に便利です。 |
排他制御 | 同時更新における排他制御は悩ませますが、 プラットフォームで楽観ロックが実装されているので、それに大人しく従います。 |
セキュリティ周り | セキュリティ周りを外部に外だしできるのは 恩恵があります。 |
RESTAPI | 外部システムからも、RESTAPIを利用しているので マスタをローコードプラットフォーム内に持ちたくなります。 |
CSS/JSのパーツ | 標準フレームワークとして、スタイルや機能を 提供されたリソースより利用している。 |
バックアップ | Kintone自体にバックアップ自体は無いものの、別途共通化したバックアップで、自動バックアップを取っている。 |
レコードの履歴 | 変更点の一覧をみることはできないのだが、変更履歴がレコード単位で保持されている。地味に便利。 |
独自で開発しているもの
ファイルアップロード | 標準機能で代用できない場合は、作りこんでいることもあり。 |
ファイル出力(エクスポート機能) | 標準のWeb画面も表形式で、CSV出力も可能なので、作らないときもある。ただ、出力内容がフィットしないときは、出力機能を作ることも多々ある。 |
バッチ | バッチ処理が必要な場合は、バッチは違うプラットフォームで、 APIで処理するような作りこみを実施。 |
通知 | メール通知などは標準の機能でもあるが、ほとんどフィットしないので通知が必要な場合は、作りこみをしている。 |
1年 ローコード開発をしてみてどうだったか
開発したアプリ・システム数は、大小合わせて約8個
ユーザ自身が作った表アプリが5個ありました。
約1年での数なので、月に1個くらい何かが生まれている感じです。
開発工数での比較は、(正しく取得していなく感覚値ですが)
スクラッチで6人月程度で作成した4画面のマスタシステム
ローコードなシステムでマスタ画面を1つ作る場合、0.5~1人月
と、従来の開発に比べて
半分くらいの工数になる感覚はあります。
ただ、その中には半年開発した大きなシステムもあり
ローコードの上で作らない方がよかったのかも・・・
と感じることもしばしばあります。
それは、ローコードは、小規模に適応というセオリーと同じです。
比較的ライトに、とりあえず作るということが可能なのですが
開発したシステムは、入口も同じでUIも似てくるので
・アプリ名(システム名)が超重要!
・アイコンも超重要!
最初に決める2つの要素なので
後々コンセプトがずれてナニコレ・・・になります。
要件定義はこの開発スタイルでも重要でした。
最後に、DXが促進できたのか、という点については
ローコードプラットフォームを導入したことで、デジタライゼーションは
しやすくなった、と纏めさせて頂きます。
関連の内容で、現場データをAPIで吸い上げる利用例などで記載します。
一緒に働くエンジニアを募集してます
少数で開発するトライステージでは、開発スピードを求めるエンジニアを募集します。
