SIer出身のプログラマーと一緒に働くと働きにくい。何が問題なのか考える

f:id:hrmch-ioii:20180419231916j:plain

@nabeemichi です。

急成長ベンチャーで働いて早半年。

開発者として働いているのだが、開発者と言ってもどこで経験を積んだかで考え方ややり方が違う。

ベンチャー企業でもSler出身だったり、そもそもベンチャー企業出身だったり、新卒で入ってきたりといろいろ。


僕は、

ベンチャー企業→フリーランス→ベンチャー企業

という経歴なんだけれど、Sler出身の人と働いていると、どうも相性が悪くて働きにくい。

なので、何が問題なのかを考えてみる。

常に工数ベース

とにかくこれ。工数!工数!工数!

なんかあると工数を理由に簡単な方向へ持っていく。

こうやって作ったものは…

もはや保守がこんなんなものになる。

なぜかっていうと、工数かからない方法は、さっさと作って作って作りまくる方法だ。

同じような処理をまとめたり探したりすることはしているよりも、さっさと作った方が早いし、アウトプットがでる。

アウトプットがでると、間に合わなくても言い訳ができるのだ。

こんだけ実装しても終わらないくらい大変な処理なんですよ!実は!

みたいなことが言える。


さらに、今後のメンテナンスのことなんか考えない。だって自分がメンテナンスするとは限らないからな。

Sler出身の開発者に聞いたけど、リファクタリングというソースコードを綺麗にする仕事も別料金で発注できたりするらしい。

これじゃあ今後のことなんか考えない実装になるわけだ。

つくればいいって感じなので仕様を守ることが仕事

これがやっかい。

ビジネス視点がほとんどないから、仕様に沿ってつくりさえすればいいという感覚がある。

仕様上こんな操作どんなパターンで起こるんだ?

みたいな仕様の不具合があってもその通りに作ってしまう。

いやいや、ゴミ作らずに使われるもの作らないと、僕らの時間もゴミ箱いきでっせ。

知見!知見とうるさい

知見は大切なんだけど、知見ない場合のはどうするの?

突破するしかないでしょ!

知見がなかったので厳しいです!じゃなくて、どうやったら突破できんのよ!?

どうやったら実現できんのよ!

知見なんてすぐ古くなって使えなくなるんだから、早く突破できる力を磨くことに力を入れればいいのに

意思疎通がそもそも厳しい。

これが致命的に疲れる。

自分のなかでの当たり前を前提にして話すから、まったくもって話を理解できない。

どんな現象が起こっていて、前提がどういう状況なのか!?

を話さずに会話し始めた結果

俺ははてなマークの連続で理解不能。

どこの?なんの?どんなときの?ことを話しているのかを特定して、具体化して話さないと理解できないっす。

だって僕はエスパーじゃないんだから。

とにかくまずは、意思疎通ができる方法を自分でやってみせる

とにもかくにも意思疎通が一番の問題。

ここが解決できれば、とりあえず知見知見とうるさくても、工数工数うるさくてもどうにか説明できそうだ。

だから、彼らに僕が説明するときは5W1H(when, why, what, where, who, how)のうち3つの要素を入れて話をする。

中学校の英語でやった5W1Hだ。

なぜこれが重要なのか?というと

5W1Hはとにかく具体化する方法であるからだ。

具体化することによって、頭でイメージすることができる。お互いが同じイメージをすることができるようになれば意思疎通はできる。

具体化すれば推測が少なくなるので勝手な解釈がなくなっていく。


明日までに(when)画面を実装するので(why)、画面に表示する商品データを(what)取得できるようにしてください。

こんな感じで5W1Hのうち3つ以上の要素をいれるようにするだけで、意思疎通はずれなくなってくる。