Overblog
Edit post Follow this blog Administration + Create my blog

時間に追われるボーイスカウトルール

May 10 2019


時間に追われるボーイスカウトルール

株式会社バカンにてソフトウェアエンジニアをしています、田巻です。

バカンは創業1年半のいわゆるスタートアップで、少人数で高速にプロダクトを作ることが必要になります。

そうなると、担保できないものが必然的に出てきます。

コードの品質です。

そこで、僕は自分に対して一つだけ守るべきルールを作っています。それがボーイスカウトルールです。

ボーイスカウトルールとは、「来たときよりも綺麗に」というただそれだけのものなのですが、個人的にはスタートアップにおける開発の心得としてかなりフィットしているかなと感じています。

スタートアップでプロダクトを作っていると起こることとして

  • 時間がない
  • 仕様がすぐ変わる

という前提がほとんどの場合存在し、こういった中ではじめから全力を出しすぎてしまうと、後々後戻りできない仕様変更が発生することがあり逆に時間をとる羽目になります。

そのため最近は、「最初は、適当に最低限だけつくる」ことを心がけています。

そのなかで、ユーザーの声を聞き、改善をいれていく際に以前なかった仕様を取り込むタイミングが来るのですが、そのタイミングで設計やコードの品質を、最低限から一歩進める、というのを繰り返し行なっています。

それを自分の中でやめないようにするために、明確に言葉にして、「来たときよりも綺麗に」と心の中で叫ぶわけです。


具体的に改善されてきた流れをいくつかご紹介します。

REST API のパラメータ検証
  1. なし
  2. validator モジュールを導入し、 controller 層でのパラメータ検証
  3. express-validator を導入し、パラメータ検証を router 層に移動
ユニットテスト
  1. なし
  2. モック DB を用意し、用意されたデータに対してのユニットテスト
  3. sinonjs を導入し、データレイヤーとモデルレイヤーのユニットテストの責任分離

なんというか、未熟な状態からある程度現代を生きるエンジニアっぽく成長していく流れが見えていいかなと思います(笑


そんな弊社、株式会社バカンでは、エンジニアを募集中です。

お気軽にお声掛けください

IoT・AIを活用した空席情報検索プラットフォームの開発エンジニア by 株式会社バカン
株式会社バカンのWeb エンジニアの転職・採用情報。Wantedlyでは、働くモチベーションや一緒に働くメンバーについて知ることができます。【Web / AI / IoTエンジニア】 当社では、…www.wantedly.com
Share this post
Repost0
To be informed of the latest articles, subscribe:
Comment on this post