スタートアップで働く非エンジニアが知っておきたい「技術的負債」について
こんにちは!hachidori株式会社広報の松本です。
突然ですが、
スタートアップで働く非エンジニア(ビジネスサイド/営業やマーケ、CSなど)の皆様、「技術的負債」という言葉を知ってますか?
プログラミングができたり、スタートアップ歴が長い方なら耳にしたことがあるかもしれませんが、聞き慣れない方も多いかと思います。
しかし、「技術的負債」という言葉&その意味を知っていると、エンジニアチームともっと仲良くなって、もっと良いプロダクトを届けられるかもしれないのです。
このnoteでは、「スタートアップで働く非エンジニアが知っておきたい『技術的負債』について」のタイトルのもと、ビジネスサイドが技術的負債について知っていると起きる良いことについてさくっと書きました。
監修はAndroidエンジニアのryotaさんにお願いしています。
目次
● hachidori株式会社について
● スタートアップの環境
● 「技術的負債」とは?
● 技術的負債が蓄積するとどうなる?
● 技術的負債への対処法
● 私たちがやりたいことってなんだっけ
● hachidori株式会社について
hachidoriは5期目のスタートアップです。
社員数は37名で、うちエンジニアは12名(業務委託除く)です。
①プログラミング不要のチャットボット内製化ツール『hachidori』②シフト管理アプリ『CAST』③バイト探しサービス『CAST JOB』の3事業を展開しています。
● スタートアップの環境
さて、スタートアップは一般的な企業と比較すると社員数が少なめです。5名〜100名くらいまでのところが多いのではないでしょうか。
そして完全に開発を外部委託している企業を除けば、多くはビジネスサイドとエンジニアが同じオフィスで、場合によってはお隣で働いています。
エンジニアとの距離が近いからこそ、フロントに立つビジネスサイドが拾ってきたユーザーの声をエンジニアにすぐフィードバックして、PDCAを高速で回せる。それがスタートアップの大きな魅力です。
業務は異なるビジネスサイドもエンジニアも目的は一緒かつシンプルで、「ユーザーにいいプロダクトを届けて世の中をよくしたい」。
......のはずなのですが、時折、社内で以下のようなやり取りが起きていたりしませんか?
営業「先週お願いした改修、終わる見込み立ってますか?」
エンジニア「来週ですかね(多少時間がかかっても綺麗なソースコードを書きたい)」
営業「(なるべく早く改修して、お客様に伝えたいのに......)」
CS「この間のシステム停止の原因わかりましたか?対策はありますか?」
エンジニア「調査を進めてる最中です(色々試してるけどわからない)」
CS「(調査ってそんなかかるのかな、いつ終わるんだろう)」
ビジネスサイドはお客様に早く良いものを届けたい。
そしてもちろん、エンジニアもユーザーのために要望をできる限り早く受けたい。
でも、すぐに答えられない時がある。
その理由のひとつが「技術的負債」なのです。
● 「技術的負債」とは?
非エンジニア向けに本当にざっくりいうと、
「綺麗じゃないソースコードがどんどん増えてきて改修が大変になる」というのを「負債」という言葉で表現したもの
であり、
下の@hirokidaichiさんのqiitaより引用させていただくと、
一般には、「早さ」を求めて構築されたシステムの構造的な課題が、徐々に蓄積し、債務であるように徐々に開発速度そのものを遅くして行くと言う現象のこと
です。
● 技術的負債が蓄積するとどうなる?
技術的負債が蓄積すると、たとえば営業やマーケの期待する開発スピードに対してエンジニアが応えられないなどの事態が起きます。先述のビジネスサイドとエンジニアのやり取り(2番目)です。
綺麗なソースコードが書かれていないゆえ可読性が低く、「どこで問題が起きているのか?」を探すところにまず時間がかかり、そしてもちろんそれを直すのにも時間と労力がかかる......という負のループです。
● 技術的負債への対処法
技術的負債を完全にゼロにすることは難しいですが、蓄積に対して、
予防=「綺麗なソースコードを書く」
対処=「負債を返却する作業として定期的なリファクタリングをする」
といったアクションをとることができます。
綺麗なソースコードを書くのも、リファクタリングをするのも時間がかかります。
でも、ユーザーに良いサービスを「届け続ける」ためには必要不可欠なのです。
● 私たちがやりたいことってなんだっけ
スタートアップで働く者として、再度目的に立ち戻りたいのですが、私たちが実現したいことってなんでしたっけ?
そうです。
「ユーザーにいいプロダクトを届けて世の中をよくしたい」。
ですよね!
このnoteで書いたとおり、綺麗なソースコードを書くのもリファクタリングもどちらも時間がかかるけれど、いいプロダクトを作って、ユーザーに届け続けるには必要なことです。
ということを、ビジネスサイドも(ざっくりとでも)理解しておくとエンジニアチームと仲良く、より良いプロダクトを作れるのではないでしょうか。
それでは皆様良いお年を!
---------------------------------------------------------------------------------
hachidoriで一緒にいいプロダクト作りませんか?
いつでもご連絡お待ちしています!
この記事が気に入ったらサポートをしてみませんか?