さらば、開発メンバー

2018年2月5日

この間、開発メンバーの1人にチームから抜けてもらった。私に逆らうことは許さない。

geralt / Pixabay

彼と初めて会ったのは2016年3月、渋谷のカフェ。プログラム書くのが好き、というのがなんか伝わってくる感じだった。彼が、会社員として属しないのは、プログラム関係の勉強をしたいけど、その時間を確保できない、新しいことにチャレンジできない、ということが理由。プログラマーは新しい技術への挑戦を好む人が多く、それ故に一人で業務を行い、プロジェクト単位で仕事を受けることが多い。

一般的に、経営者からすると勉強や研究という利益を生み出さないことに時間を費やすのを嫌がる。また、新しい技術やツールもリスクがあるので嫌う。いわゆる「枯れた技術」で構築する方が安定しており、技術者も多いのでありがたい。

しかし、プログラマーからすると面白くない。自分自身が成長しないからだ。新しいことにチャレンジすることが好きなのにそれができないのは苦痛でしかない。それ故にフリーで仕事をする。

彼の意見を聞きながら「確かになー」と経営者として&プログラマーとしての両面の気持ちが理解できた。結果、本人の希望もあり 時間給 で開発を手伝ってもらうことになった。

契約することが決定して、その後はお互いに映画が好きであることがわかり「黒澤監督の映画はいいね」なんて話をして盛り上がった。一緒に楽しく仕事ができれば最高だ。

最初のトラブル

開発をメインプログラマーと二人三脚で進めていたのだが、程なくして問題が見受けられるようになった。

プログラムというのは「これを作る」というゴールを目指すんだけど、その道すじは無限にあり、ここに実力と個性が現れる。まさに、その個性の部分で衝突が起きていた。

「その考え方はおかしい」「それはあなたの趣味だ」「なぜ、わからないのですか?」

こんな感じで メインプログラマーに対して個人攻撃をしているようだった。これらはプログラマー御用達チャットサービス Slack やプログラム履歴管理の Github 上で繰り広げられていた。

プログラマー同士の意見のすれ違いは想定内なので、事前に「コードにおける最終決定権はメインプログラマーにある」ことを伝えていた。いろいろあっても「こうする」とメインプログラマーが言えば、不満があろうが従えということだ。

2人のコミニケーションがどうもうまく取れないので、このタイミングで抜けてもらうことも検討した。しかし、コードはきちんと書けるので、完全分業(メインプログラマーとは違う業務支援用ミニアプリの作成)をすることにスタイルを変更。

それ、チャットでいいじゃん

これでしばらく大丈夫だったんだけど、気になっていたのはチャットに全然顔を出さない。議論もなく、自分の事だけを黙々とやっている。で、週一回のミーティングの時だけ参加して、そこでアレコレと質問してくる。「それ、チャットで聞けばいいのに」という内容。確認できるまで作業が止まるから時間効率が悪いし、後から情報を仕入れるので作り直しで無駄が多い。

サラリーマンで言えば、職場で隣にいるから聞けばいいのに、週一のみんなの集まった会議で「◯◯さん、ここがよくわかりません」みたいな事を言い出す感覚。困ったなーと、思いながらも時間給での支払いだし、やることやってくれれば良いやと考えていた。

時間管理をちゃんとやってくれ

時間給のため時間管理が必要。そこで toggl というサービスを利用してた。使い方はとても簡単でブラウザを開いてオンオフ切り替えるだけ。アルバイトのように丸々1時間とかではなく、10分だけ作業、5分だけ作業なんて単位で記録して積算することができる。これで私を含めて全員で管理している。時間給のこともあるが「この機能開発に、これだけ時間がかかった」を知ることも目的。やっていない仕事をやったことにする不正防止目的ではない。そもそもtogglは簡単に時間を調整できるので不正防止には役に立たない(マジで)。

ところが彼は、私の意図とは違う使い方をする。15:00から18:00 3時間。20:00から00:00 4時間みたいなピッタリな時間が報告される。おかしいと思い、聞いてみると「後から追加入力している」との回答だった。なので小まめにリアルタムに記録するように何度も言うのだが、やらない。

曰く「調査中に自分の趣味の領域に入ることがある」「小まめに管理することは非効率だ」

togglの良いところはワンクリックでオンオフできることだ。そして、簡単に時間の修正ができるところ。もし途中で別なことをやり始めても、仮にオフをクリック忘れても、すぐに調整できる。1分刻みだって記録していい。それをやらない。

「作業時間、だいたいこれぐらいかなー」なんてノリで自分の時間感覚で報告されても困る。それを説明をしても頑なに受け入れない。むしろ「私の考えをどうしたら理解してもらえるんですか?」みたいな調子だ。

最終決定権者に逆らうということ

この一件は些細なことかもしれないが、とても重大なことだと考えている。なぜなら「最終決定権者の決定に逆らう」という行為だからだ。この些細なことでもそうなのだから、開発に関するアレコレの部分でもそういうことが起こるはずだ。メインプログラマーとの衝突もそうだし、チャットで相談しないのもそうだ。もしかしたら、自分で勝手にルールを変えているかもしれない。

断っておくが、私は頭ごなしにアレコレ指示をするタイプではない。まずは私の考えを話し、意見を聞き、確認をして、お互いの承諾の中で進めていく。反対意見もちゃんと一旦受け入れる。その上で最終的な決定(決断)をしている。決定するとは責任を取るということだ。だから、覚悟の上で決定する。

「最終決定に逆らう」こと放置できないので、彼が抜けてもカバーできることをメインプログラマーに確認して「1月末日でチームから抜けてもらう」ことを通達した。彼にとっては突然なことになってしまったので当惑してたかも知れないが、承諾の上で抜けることになった。幸いにして開発中のミニアプリが完成したタイミングだった。

なんだかんで1年間一緒にやってきたし、もうすぐリリースというタイミングだったから、もう少し一緒に…なんていう考えもよぎった。しかし、正直なところ意思疎通ができないストレスにイライライしていた。ストレスのある仕事はしたくない、ストレスのある仕事をさせたくない。だから、直ちに抜けてもらう決断をした。

2月1日、彼自らSlack,Githubから離脱。コード上からは消えた。(過去の記録は残っている)
メンバーが一人減って3人体制になった。さすがに3人体制だと厳しいのでスピードアップのためもう一人メンバーを増やす予定。Ruby on Rails に慣れている人。今度のメンバーとは、にこやかに仕事をしたい。