やって良い間違い、ダメな間違い

※この記事は 100日後に死ぬソフトウェアエンジニア Advent Calendar 2019 95+j 日目 (ただし、jは虚数単位) の記事です
※この記事はフィクションです

遠い日の幻影

よく晴れた平日の昼下がり[0]。オフィスには外出中の営業、PMの空席がちらほら。

タンッ、タンタンタンッ!

斜め前で作業中の先輩[1]が苦笑いをしながら大げさにキーを連打していた。

(何なんだ、うるせぇな……)

痙攣が止まない右目[2]を手で無理やり開きつつ、ふと前を見やるボク。

先輩「ECサイトの注文完了ページでブラウザリロードするたびに注文完了メールが送られてくるんだけどw」
先輩「www」

どうも外注先のプログラマによる納品物をレビューしていた先輩がロクでもないバグを見つけたらしい。 事の次第は社内チャット上ですぐさま広く共有され、やがてCTOの目に留まる。

CTO「その外注先のコミット全部洗い出して」
CTO「すぐ契約解除して二度とそこ使わないで」

しょうもないバグ一つでその外注先は出禁となりましたとさ。 めでたしめでたし。

教訓

人間たるもの間違えるのは仕方がないが、やって良い間違いとダメな間違いがある (時と場合による) 。

特にセキュリティ周りはその筆頭に挙げられるものの一つであろう。 広く周知されている脆弱性への対応は、IT業界でソフトウェアエンジニアとして働く人間の当然の責務である。 知らなかった、対応漏れたけどオレは悪くないし脆弱性突いてくるアタッカーが悪いだけだろ、では済まされない[3]のかもしれない。

さて、君たちはどう生きるか。

何が言いたいのか

安全なウェブサイトの作り方:IPA 独立行政法人 情報処理推進機構

日本のお役所 (的な組織) の割には良い仕事しているのでみんな見て。