こんにちは、初めて学びブログを書きます、京都大学大学院理学研究科修士1回生の前田一輝です。
現在プログラミングチームに所属しています。
先日、WORK0という、実務前研修の最終課題として、アプリのチーム開発をしました。
今回は、その経験から得られた学びを書きます。
どんなことをしたの?
10月にプログラミング開発コースのカリキュラムを終了し、現在、WORK0という実務前研修に取り組んでいます。
先日、その最終課題として、4週間にわたり、同じ進捗のインターン生と2人で成績管理アプリの共同開発をしました。
そこで私はリーダーを任され、自分が主導になって開発を進めることになりました。
アプリの基礎は僕が作り、追加の機能などの仕事をパートナーに指示を出して開発を進めました。
また、面談の予定を立てたり、お互いに進捗を把握したりするのも、僕が中心になって行いました。
僕は研究と就活で忙しかったですが、パートナーも就活やゼミで忙殺されていたので、パートナーが忙しくてもできるような分量になるよう、仕事の割り振りを常に考えていました。
結果、デザインが少しお粗末ではありましたが、何とか期限までに開発を終わらせられました。
リーダーをして学んだこと
・目標を立てる段階が肝心
僕が今回の開発で一番反省したことは、全体の見通しを立てて目標を設定すれば良かったということです。
具体的には、
「デザインを期限当日に慌ててやるのではなく、もう少し早くから始められるように、機能の実装をもう少し早く終わらせる計画を立てるべきだった。」
「それぞれの言語の役割を明確にしておくべきだった。」
といったところです。
今後はこのようなことにならないように、全体の見通しを立て、その上で目標を設定することを意識したいです。
とはいえ、開発にトラブルはつきものですから、実際に作業しながら修正していくことも大切です。
目標を設定するのに時間をかけすぎないようにもしたいです。
・オーラルコミュニケーションの重要性
最近は、チャットでコミュニケーションをとる企業が増えています。
未来電子も当てはまります。
実際、チーム開発でも、チャットで進捗報告したり、GitHubでプルリクエストを出したりと、テキストベースでのコミュニケーションが多いです。
確かに進捗を伝えたり、1問1答の質問をしたりする分にはテキストだけで十分でしょう。
しかし、開発物全体の構成や開発全体の計画・目標を練ったりするには、文字だけでは不十分なことも多々あります。
また、エラー報告についても、直接話した方がその場で解決できるので良いです。
普段人とあまり喋らない僕ですが、チーム開発をしてから積極的に人と直接コミュニケーションをとる機会を作ろうと考えるようになりました。
・自責思考の意味
未来電子に入社するとき、何か問題が起きたときは自分の責任で解決策を考えようと言われます。
つまり、「自責思考」です。
しかし、自責思考を持つべき場面は、何か問題が起きたときに限りません。
普段の自分の行動や言動に責任を持つことが大事です。
ストイックになりすぎるのも問題ですが、自分の判断に全く責任を持てないリーダーは信用されません。
また、リーダーでなくても、いつも他人のせいにしている人は、いつまでも自分から反省・改善・行動ができず、成長のチャンスを逃してしまいます。
僕も今まで自分に自信が持てず、行動できず、チャンスを逃す機会が多々ありました。
しかし、リーダーを務め、自分の判断一つ一つに責任を持つ経験をして、これからどんどん自分からアクションを起こしていこうと思えるようになりました。
まとめ
みなさんはリーダーを務めた経験はありますか?
リーダーというと、学級代表、○○委員長、○○部部長、バイトリーダーなどをイメージすると思います。
しかし、必ずしもそのような何十人、何百人という大きな組織のリーダー経験でなくても良いのです。
2人や3人のチームでもリーダーになることで、大きな組織のリーダーと同じような経験が得られます。
「成長とは何か」は僕にもはっきりとは分かりませんが、成長した感は得られると思います。
リーダー経験がないという方は、小さなチームでも良いので、リーダー経験を積んでおくことをオススメします。