読者です 読者をやめる 読者になる 読者になる

ユアマイスター株式会社エンジニアブログ

ユアマイスター株式会社のエンジニアが日々徒然。

開発のスピード感

助っ人エンジニアの五藤です。 ブログ開設2日目にしていきなり外部の人間が登場するというファンキーな展開です。

長かった私のユアマイスター様での常駐も2月で一区切りということで、 「あなたのマイスター」のサービス立ち上げから現在まで、 半年間ほど関わらせていただいた中で思ったことをちょっとだけお話しします。

スピード!スピード!

ユアマイスターでの開発スピードは爆速の一言でした。 要件もほとんど決まっていない段階から2ヶ月でリリースという、今から考えても末恐ろしいスピードで立ち上がり、 そのあとも、通常であれば1ヶ月くらいかける機能開発をむりやり2週間に短縮したりと、 開発速度に関しては常に最短・最速という感じでここまで駆け抜けてきました。

そういった開発スピードを実現する上で、私が一番気をつけていることは以下の1点です。

開発のゴールは「実装完了」ではなく「ユーザーや運営が使い始めた時」である

エンジニアの仕事といえばプログラミングですが、 「この機能を作り終えたから私の仕事は終わり!」 というわけにはいかないのが職業エンジニアの世界です。

  • 手戻りや細かい要望の反映
  • 運営の要望と違うものを作ってしまった
  • 作った機能がなかなかテストしてもらえず、気付いたらその機能の旬を過ぎていた

などなど、「実装終わった!」から、その機能が本当に役に立つまでの道のりは意外と長いのです。 この「本当のゴール」を軽視して、目の前のコードに夢中になってしまうと、 エンジニアは今ひとつ融通の利かないNerdに成り下がってしまいます。

逆に、

  • 機能要件の中で、本当に重要なのは何か?必要な機能を絞って先行リリースはできないか?
  • 当初の想定になかった不安要素について、あからじめ相談して潰しておこう
  • 要件通りに作っているが、実際作ってみるとユーザビリティが悪そう。改善策を盛り込んで提案しよう
  • 作成する分量が多いから、途中段階でデモの時間を設けて、営業の人に見てもらおう。

などなど、開発中の機能が実際に使われるところを意識しながら立ち回ると、 よりニーズに沿ったものを、少ない手戻りで作る事が出来るようになります。

この6ヶ月間の爆速(?)開発も、純粋なプログラミングスキルというよりは、 どちらかといえばこう言った「立ち回り」を意識して、 「要望・ニーズ」と「実装」の距離感をできるだけ近く保った結果かなぁというのが私の所感です。 (短い時間でバーッと書いたのでイマイチまとまっていませんね・・・)

これから開発チームの人数も増えて、いろいろなプラクティスもどんどん導入されるはずですが、 小さい組織ならでのは機動力を生かして、エンジニアリングを存分に楽しんでくれればと思います!