2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
SIGNATE開発失敗談(全1記事)
リンクをコピー
記事をブックマーク
丹羽悠斗氏(以下、丹羽):最初に謝らないといけません。(開発失敗談の)詰め合わせで考えていたんですけれど、10分じゃとても話しきれなかったので、今回は1つの失敗談のみで共有できればと思います。
失敗談から技術的負債との向き合い方などに関して、みなさまになにかしらの示唆を与えられればと思って、今回の発表資料を作っています。
簡単な自己紹介から始めたいと思います。私は、株式会社SIGNATEでVPoEをやっている丹羽と申します。僕は前者の3名とは違って、JAIST(北陸先端科学技術大学院大学)と呼ばれるところで「知識がどう生成されるか?」というような研究をして、(その後に)オプトホールディング(現、株式会社デジタルホールディングス)のデータサイエンスラボに入社して、今までやってきている感じになっています。
今回は、弊社が今、東大IPCさまから出資していただいているので、その関係でお声がけをいただき参加しています。
キャリアとしては、エンジニアからPMを経験して、2022年からVPoEをやって組織作りと採用をがんばっています。SNSは時間をけっこう浪費しちゃうのでやっていなかったんですけど、今回(アカウントを)作ったので、よければフォローしてください。
弊社の事業を簡単に紹介できればと思います。今は2つの事業をやっている感じになっています。1つはTaaS事業と呼ばれるもので、もう1つはSaaS事業と呼ばれるものです。基本的には、世の中のDX推進において、人が足りない課題を解決するために必要となりそうなサービスやプロダクト作りを進めています。
TaaS事業に関してはPHPのLaravelで作られていて、SaaSの事業はRailsをベースに作っています。(ただ)一部Goで作られているところもある感じになっています。
今回お話ししようと思っているのは、TaaS事業のプロダクトでやらかしてしまった失敗談です。
だいぶ古い話で恐縮ですが、実は2018年頃にサービスのフルリニューアルを行っており、これがけっこう大変だったという点を共有できればと思います。
入社してからたぶん3年目ぐらいになります。入社する前に作られていたシステムは、ホームページとCMS、あとはコンペ機能というところで、外注で作られたシステムにてんこもりな機能が存在している状態でした。
徐々にユーザー数が増えてきて、いろいろと開発の邪魔になる部分があったので、2016年にプロダクトの切り離しなどをして運用していたんですが、ここに技術的な負債がてんこもりでした。
さらに、使われていたフレームワークもZend Framework 1.2というだいぶ古いものでした。このサポートが切れるタイミングでメジャーバージョンアップをしようとすると、破壊的な変更がかなり多く、バージョンアップの対応もメチャクチャ難がある。
そういう状況だったのですが、1部署から会社として独立するのにあたって「フルリニューアルしましょう」という話になりました。
2018年では、スライドの目標の部分に書いてあることがけっこうモダンな開発の内容になっていました。今後のプロダクトの開発速度を向上させたり、セキュリティ面などを気にしたところでシステムをフルリニューアルしていいという話になったので、約半年の期間が設けられ、チームとして僕を含めた3名でやることになりました。
当時モダンな技術が使われていた夢のようなプロジェクトにワクワクして入ったら悪夢を見たという、そういう話ですね。
目標に対して約半分が未達のような状態でリリースされることになってしまいました。やりたいことの半分はできたと言いつつ、あまり重要でないと判断した既存機能がすべて移植できなかったり、そういう意味では半分以上がぜんぜんできていないという結果だったと思っています。当時はエンジニアとして参加していましたが、常にこれが自分のキャリアの中の大失態としてあるので、けっこう記憶に残っています。
開発が終了してリリースも行えましたが、リリース後に無事に炎上して、約1週間かけて既存メンバーでゴリゴリ開発して、炎上の消火活動をしていくことを暫定的に行ったという感じです。
この時の技術的な負債が、今もなお残っているような感じです。サービスは一応順調に成長していて、人員も増えて6名体制になったタイミングで、新規開発をする人と技術的な負債を解消する人にメンバーを分けるなどして対応してきています。
このフルリニューアルからの学びとしては、いろいろなことをいっぺんに実行するのはやめたほうがいい。これが反省としてあります。
また、一度作ってしまった負債は本当に地道に解消するしかない。今回のフルリニューアルで一気に解消しようとして失敗したので、時間もかかるし、地道にやっていくしかないというのが振り返りとしてあります。
あとは、体制が3名だったこと。6名に増えたらけっこう開発に集中できたり、役割によって開発に集中できるケースが増えたりするので、チーム体制もけっこう重要なファクターだと思っています。
現状はそういった学びを経て、TaaS事業もSaaS事業もなるべく技術的負債を溜めないような感じで開発を進められるようになってきました。なるべく負債を作らないように、チーム内であらかじめ仕様のレビューやコードレビューをしていく文化もできてきているので、そういう意味ではけっこう健全なチーム運営が今はできはじめているのかなと思っています。
技術的負債に関しては、TaaS事業はコンシューマー向けのサービスになっていて、トレンドをけっこう追って新規技術・新規開発をしているので、技術的負債が溜まりがちです。
一方、SaaS事業は提供しているサービスは学習系なので、予算取りの都合で繁忙期・閑散期がけっこうあるような状態です。そのため、繁忙期ではないタイミングで負債を解消すべく、うまくバランスをとってやれている状況です。
一連のプロダクトを見てきて思うのは、基本的に負債の解消方法に正解はなく、こまめに返済していく、あるいはある程度溜まってから返済することを使い分けていく感じに今はなっています。
とはいえ、直近のプロジェクトの「ChatGPTチャレンジ」。TaaS事業側で「すぐに作ってくれ」という話が経営から下りてきたものとかもありました。(このチャレンジは通常のコンペと違い、Twitter上にユーザが投稿したChatGPTに関する内容を、弊社のシステム上にルールや規約に同意の上投稿してもらい、今流行りのChatGPTに関する知見を共有し合うという試みです。)チャレンジが成立できるよう、一応2週間で段階的にリリースしているんですが、設計にあまり時間をかけられず場当たり的な対応になっているので、現在進行形で負債を蓄積してしまっている失敗ケースです。
5名で開発して、1週間で物を作ってテストまで終えてリリースするという流れを踏んでいます。明日(2023年3月23日)にランキング機能もリリースされるので、今日この話を聞いて興味を持った方はぜひ参加してみてください。
この話が持ち上がったタイミングで技術的な負債が発生するのは目に見えていたので、開発の工数としては負債を解消することをあらかじめ含め、スケジュールを引いて確保して負債が残らないよう工夫をしている状況です。
ChatGPTチャレンジは始まっていますが、僕たち開発チームの技術的負債の返済チャレンジはこれからだということで、発表を終わります。
なお、僕の会社は採用もがんばっています。少しでも興味を持った方はDMなどで連絡をいただければと思います。以上です。
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05