エンジニアの西山です。
エンジニアの仕事って、何やら黒い画面と向き合って、コードを書いて、システムを黙々と作っているような感じがありますが、
弊社の中のエンジニア仕事だと、コードを書く以前が結局重要だなぁと感じています。
そんなことで、たまにはエンジニア仕事の話を書いてみます。
何か機能追加したいことや、プロダクトを作るという時に、例えばこんなやり取りがありますよね。
Aさん:「これこれ、こうして欲しいです」
Bさん:「わかりました。3日かかります。やりますね」
残念ながらこのやり取りは良いとは言えません。
エンジニア仕事に限らないことですが、常に「なぜ」を一緒に知っておく必要があります。そして、エンジニア仕事においてはその「なぜ」の読み解き方と経験次第で何十倍、何百倍ものスピードで仕事が出来るようになるからです。
Aさん:「これこれ、こうして欲しいです」
Bさん:「なぜそれが必要なんですか?」
Aさん:「これこれ、こういう理由で・・・」
Bさん:「それなら、○○するのではどうです?これなら30分で出来ますよ。」
当たり前のことのように思えるかもしれませんが、エンジニア仕事でいうと前述した通り、【読み解き方】と【経験】の2つによって、思っている以上に選択肢は無数に存在するのです。
上記の例では3日から30分に短縮されました。でも話を聞いていたCさんが、
Cさん:「それなら、これとこれの組み合わせで同じことできるんじゃない?」
みたいなことで、仕事をゼロ化させることだってあります。
本当にびっくりするくらい、「思っている以上に選択肢は無数に存在する」んですよね。
私も「これが最善策だ!」と思って取り組んだことが、ものすごいムダなコードを書いてたなんてことが良くあります。
人に言われて、その手があったか!と。
また逆も然りで、依頼者側の伝え方次第では、小さな仕事を大きな仕事に変えてしまうこともできるのです。
大きな組織、大きなプロジェクトだと、そのような無駄はさらに顕著になることだと思います。
弊社は小さい組織、小さいチームだからこそ、コミュニケーションを大切にしながら、テンポよく本質的な仕事に集中して、
「ユーザーのために、いいサービスをつくる」をやっていきたいです。