Rails development know-how, technical tips, and the latest updates
Practical development techniques and best practices
「来月テレビで紹介される予定なんですが、サーバー大丈夫でしょうか」「大型セールの日程が決まったんですが、今のシステムでアクセス集中に耐えられますか」——こうした相談は、キャンペーンの実施日が決まった後に駆け込みで来ることがほとんどです。普段は月間数万PVで問題…
新しいエンジニアを採用した、あるいは外部チームに開発を依頼した。ところが最初の1ヶ月、成果物がほとんど出てこない。既存メンバーに聞くと「オンボーディングでずっと質問攻めにあっていて、こっちの手も止まっている」と言う——採用や外注のコストをかけたのに、立ち上がり…
「AIチャット機能はリリースしたが、想定外の質問に変な回答をしないか怖くて、機能を絞ったまま塩漬けにしている」——こうした相談を最近よく受けます。デモでは問題なかったのに、本番で不特定多数のユーザーが使い始めた途端、不適切な出力やプロンプトインジェクションのリ…
「1件処理するのにタブを5つ行き来しないといけない」「同じ情報を毎回別の画面で入力し直している」「ステータスが一目で分からず、結局Excelで進捗管理している」——社内オペレーターが日常的に触る管理画面について、こうした相談を受けることがよくあります。 管理…
「担当者が変わるたびに『この画面、実は使ってない項目が半分ある』と言われる」「新しい機能を1つ足すだけなのに、既存のどこに影響が出るか誰も把握していない」「フレームワークのバージョンが古すぎて、簡単な修正すら躊躇する」——長年運用してきた社内管理画面について、…
「もう限界だから作り直したほうが早いのでは」。既存システムの改修を重ねるうち、こう感じたことがある事業責任者は少なくないはずです。コードは複雑に絡み合い、ちょっとした修正にも時間がかかる。だったらいっそゼロから作り直したい——その気持ちは分かりますが、実際には…
「今の保守会社の対応が遅い」「障害のたびに原因説明がなく再発する」「毎月の保守費用に見合う仕事をしている実感がない」——保守契約の切り替えを検討する理由の多くはこの3つに集約されます。ただし、いざ切り替えようとすると「技術的に何を確認すればいいか分からないまま…
「`access_logs` テーブルが3億行を超えて、集計バッチが朝までに終わらなくなった」「`notifications` テーブルへの `DELETE` がロックを取って本番が固まった」——サービス開始から数年経ったプロダクトで、こうした相談を受けること…
「この障害、前にも起きませんでしたか」——障害対応の場でこの一言が出たら要注意です。原因はだいたい特定できていて、応急処置もその都度きちんとやっている。それなのに、数ヶ月後に形を変えて同じトラブルが再発する。この相談は本当に多く、原因を聞いていくと「振り返りの…
夜間バッチが途中で止まっていて、朝出社したエンジニアが手動でリカバリから一日を始める——。「バッチが落ちてました」の一言で、当日の予定が全部吹き飛ぶ現場を何度も見てきました。集計が翌朝までに終わらずレポートが遅延する、請求バッチが一部だけ実行されて金額がずれる…