自分が書くコードの量を減らそうと思った、とあるCTOのお話

こんにちは、ShareWis CTOの門脇です。
僕はプログラムのコードを書くことが大好きです。自分よりも得意な人は数えられない程いますが、好きな気持ちは良い線行ってるんじゃないかと思います。
そんな僕ですが、つい最近「自分が書くコードの量を減らそうかな」と思いました。今日はその経緯について少し書いてみようと思います。
Current Workspace

コードを書くのが大好きな僕

僕はエンジニア。WebアプリケーションやiOSアプリケーションを開発するのがわりと得意なタイプ。
ShareWisの立ち上げ当初、サービスの開発に関わるエンジニアは僕一人だけでした。CEO辻川のアイデアを形にするのは、当時の僕にとってとてもチャレンジングなお仕事でした。たくさんのコードを書いては消してを繰り返しながら試行錯誤。
今思えば大変な作業でしたが、コードを書くのは大好きだったし、楽しみながらサービスのリリースに漕ぎ着けることができました。

一人からチームへ

リリースからしばらくして、インターン・アルバイトさんを中心にエンジニアを採用することになりました。
まずは二人のチームで開始。チームで開発を円滑に進めるための仕組みを考えたり、メンバーのスキルアップをサポートしたりといった、コードを書くこと以外の仕事に時間をさく必要が出てきました。
チーム結成当初は、コードを書くこと以外の仕事で精一杯。コードはほとんど書けません。でも、慣れてくると、自分がコードを書く量は元に戻っていきました。
そのタイミングで、もう一人開発チームに参加。再び精一杯。そんなことを繰り返しながら、今では総勢7名の開発チームになりました。

問題発生!

開発チームの増員は一旦落ち着き、しばらくの経ったある日、重要な新機能のリリースに関して問題が発生しました。とある技術的なトラブルが発生し、予定日に新機能をリリースすることが難しくなってしまったのです。
今回の新機能に関するコードは、ほぼ全て僕が書いていました。他のメンバーは別の機能の実装やバグ修正を担当していました。
予定日にリリースを間に合わせるため、開発チームの他のメンバーにヘルプを求めようとしました。ですが、緊急度やコードに関する理解度、スキルを考えると、他のメンバーにタスクを振るのが難しい状況になっていました。
結果として新機能はなんとかリリースできましたが、このままじゃいけない、何かがおかしい、という気持ちが芽生えました。

自分でコードを書きすぎ

どうしてこういう問題が発生してしまったのでしょうか。自分なりに考えた結果、おそらく原因は「自分でコードを書きすぎた」ことにあるんじゃないかと思います。
コードを書くのが大好きだから、特に重要な機能については、ついつい自分でコードを書いてしまいがち。でも、開発は一人でやっているわけではなく、7人のチームでやっているわけです。
仮に自分がコードを書くのが一番効率的だったとしても、それは短期的な話。長期的に考えれば、重要な機能こそ他のメンバーに担当してもらい、経験をたくさん積んでもらったほうが良いはずです。
また、自分がコードを書くことに必死になっている間に、開発チーム全体のケアもおろそかになっていました。
メンバーが円滑にタスクにとりくむことができているか。何か問題が発生していないか。メンバーが技術的スキルをぐんぐん伸ばすことができているか。
開発チーム全体のパフォーマンスを底上げするために必要なこれらの確認が、充分にできていなかったように思います。

前を突っ走るのではなく、後ろから支えよう

今回のような問題が発生しないようにするにはどうすればいいか、開発チーム全体が長期的に成長していくためにどうすればいいか、自分なりに考えました。
考えた結果、僕がやるべきことは「前を突っ走るんじゃなく、後ろから開発チームを支えること」だという結論に落ち着きました。
自分でコードを書きたい気持ちは押さえて、開発チームの他のメンバーに重要なタスクをお願いし、経験をたくさん積んでもらう。
メンバーが開発を円滑に進める上で問題が発生した場合、最優先で問題の解決に努める。
僕よりスキルが高いメンバーにも、まだプログラミングを始めたばっかりメンバーにも、もっともっと効率良くタスクをこなせるようになってもらう。そのためのサポートに注力する。
もちろん、自分がコードを書くことをやめるわけではないけど、優先順位的には大きな変化。
コードを書くことが大好きな僕にとっては、自分が書くコードの量を減らすことはとてもつらいこと。ですが、慣れてくればきっと、またたくさんコードを書けるようになるんだと信じて、今までの仕事のやり方を変えてみようと思います。

おわりに

最初は一人だった開発チームも、今では7人。最初は慣れなかったチームでの開発も、最近は徐々にコツをつかめてきているような気がします。
いろんなチャレンジができるのは、環境が短期間に大きく変わるスタートアップに所属しているからこそ。
ShareWisでは引き続き開発チームのインターン・アルバイトを募集しているので、興味ある方はぜひご連絡ください!
それでは!
(門脇)

コメント

タイトルとURLをコピーしました