楽じゃないけど、楽しい人生を!

〜読書好きな1児の父の成長記録〜

チーム開発1週間目終了

 現在、某プログラミングスクールに通っています。ここのスクールのカリキュラムの特徴として「チーム開発」がある。同じ時期に入校した生徒が共同で最終課題として一つのサービス(某フリマアプリのクローンサイト)を作成するというものだ。

 そんなチーム開発も1周間が過ぎ一回目のスプリントレビューが終わり、今日はそれから2日後の9日目が終わった。

 早速だけど、

チーム開発1週間目が終わった感想

 を一言で言うと…

学ぶことが多い

 特に下記の点について独学と比べて学ぶことが多いと感じた。下記に詳細をまとめました。大文字にしてる部分だけ読んだら1分もしないうちに内容把握できます、きっと。

 

 

Gitについて

 そう、一人で勉強していたらgitやgithubとか「こういう仕組みでこうなるわけね〜」って学ぶことはできる。じゃあ実際に他のメンバーと一緒に作業しましょう〜ってなったらコンフリクトが起きたりそれを修正するにはどうすればよいのか等問題にぶつかる。これは一人、独学でプログラミングを勉強していたらまず感じなかったこと。一人だったら「これぐらいでブランチ切って作業を進めよう」とかせいぜい考えるのは「コミットの時はちゃんとした名前にしよう」とかその程度だった。(僕のずぼらな性格が現れる…)

 でもチーム開発を通してGitやGithubの便利さを実感したしチーム開発にとって…ましてやリモートなどを行うにしたらなおさら重要なツールだと再認識した。(まだ現場に出ていないけどきっと重要だ、と感じるぐらい重要だと実感)

 

他の人のコードを見れる見られる、レビューできるされる

 自分がこのタスクに求めるとしたらどんなことを求めるだろうか、と依頼した側の立場になってコードをレビューする。こんな書き方があるんだ、こんなに綺麗にかけるのか、と人のコードの書き方を見て学べる

 これは独学ではなかなか経験できない。勉強の教材のコードももちろんあるけど「なんでそのような記述なの?」と教材に聞いても媒体によっては答えは返ってこない。しかしチーム開発だとその場で聞けるしお互いアウトプットするから理解も深まる。もちろんレビューするし、レビューもされる。人に見られると考えながら作業するのはまた独学では味わえないものがある。

 

タスクの振り分け方

 これはどんな仕事に置いても重要なことだと思う。全体のタスクの量や進捗を俯瞰して現在どの位置にいるのか。誰がどのタスクをいつまでにするのか。それは全体から見てどのぐらい作業が進むのか。その人にとってどれくらい時間がかかるのか…今週の目標を達成するには何をしなければいけないのか、などタスク管理は考えることはたくさんある。もちろん考えるだけでは作業は進まない。これまでタスク管理や優先順位をなかなか決められなくて、機械エンジニアとして働いていた時も周囲の方々に迷惑を掛けて仕事をしてきた。それが少しだけ俯瞰して見えるようになってきた…気がする!!

 将来的には人をまとめる、組織をまとめる仕事も悪くないな…と気付いた。もちろんまずは現場でモノづくりできるプログラマーとして業界の仕事の仕方などを先に身を持って学びたい。

 

ざっと書いたけど1週間で大きく感じたのは上記の3点が大きかった。

 他にも実際に行った作業内容のこととかあるけどその詳細は割愛。代わりに下記に毎晩つぶやいている今日の積み上げツイートをまとめておいておきます。ざっくりまとめると…1週間目僕が行った作業

・自動デプロイの構築

・ビューをいくつか作成

でした。

 

 

 明日は最終課題で担当するフロント側として最後のLGTMをメンターからもらい、サーバー側の作業に移る予定。サーバー側はあまり経験を積んでないからここで復習も兼ねてしっかり身につけたいな。

 

 以上、チーム開発1週間目が終わった感想でした!

 

(やっと誰かのためになりそうな記事を書けた…気がする。)