チーム開発1週間目終了
現在、某プログラミングスクールに通っています。ここのスクールのカリキュラムの特徴として「チーム開発」がある。同じ時期に入校した生徒が共同で最終課題として一つのサービス(某フリマアプリのクローンサイト)を作成するというものだ。
そんなチーム開発も1周間が過ぎ一回目のスプリントレビューが終わり、今日はそれから2日後の9日目が終わった。
早速だけど、
チーム開発1週間目が終わった感想
を一言で言うと…
学ぶことが多い
特に下記の点について独学と比べて学ぶことが多いと感じた。下記に詳細をまとめました。大文字にしてる部分だけ読んだら1分もしないうちに内容把握できます、きっと。
Gitについて
そう、一人で勉強していたらgitやgithubとか「こういう仕組みでこうなるわけね〜」って学ぶことはできる。じゃあ実際に他のメンバーと一緒に作業しましょう〜ってなったらコンフリクトが起きたりそれを修正するにはどうすればよいのか等問題にぶつかる。これは一人、独学でプログラミングを勉強していたらまず感じなかったこと。一人だったら「これぐらいでブランチ切って作業を進めよう」とかせいぜい考えるのは「コミットの時はちゃんとした名前にしよう」とかその程度だった。(僕のずぼらな性格が現れる…)
でもチーム開発を通してGitやGithubの便利さを実感したしチーム開発にとって…ましてやリモートなどを行うにしたらなおさら重要なツールだと再認識した。(まだ現場に出ていないけどきっと重要だ、と感じるぐらい重要だと実感)
他の人のコードを見れる見られる、レビューできるされる
自分がこのタスクに求めるとしたらどんなことを求めるだろうか、と依頼した側の立場になってコードをレビューする。こんな書き方があるんだ、こんなに綺麗にかけるのか、と人のコードの書き方を見て学べる。
これは独学ではなかなか経験できない。勉強の教材のコードももちろんあるけど「なんでそのような記述なの?」と教材に聞いても媒体によっては答えは返ってこない。しかしチーム開発だとその場で聞けるしお互いアウトプットするから理解も深まる。もちろんレビューするし、レビューもされる。人に見られると考えながら作業するのはまた独学では味わえないものがある。
タスクの振り分け方
これはどんな仕事に置いても重要なことだと思う。全体のタスクの量や進捗を俯瞰して現在どの位置にいるのか。誰がどのタスクをいつまでにするのか。それは全体から見てどのぐらい作業が進むのか。その人にとってどれくらい時間がかかるのか…今週の目標を達成するには何をしなければいけないのか、などタスク管理は考えることはたくさんある。もちろん考えるだけでは作業は進まない。これまでタスク管理や優先順位をなかなか決められなくて、機械エンジニアとして働いていた時も周囲の方々に迷惑を掛けて仕事をしてきた。それが少しだけ俯瞰して見えるようになってきた…気がする!!
将来的には人をまとめる、組織をまとめる仕事も悪くないな…と気付いた。もちろんまずは現場でモノづくりできるプログラマーとして業界の仕事の仕方などを先に身を持って学びたい。
ざっと書いたけど1週間で大きく感じたのは上記の3点が大きかった。
他にも実際に行った作業内容のこととかあるけどその詳細は割愛。代わりに下記に毎晩つぶやいている今日の積み上げツイートをまとめておいておきます。ざっくりまとめると…1週間目僕が行った作業は
・自動デプロイの構築
・ビューをいくつか作成
でした。
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月7日
★チーム開発1日目終了
失敗するなら今のうちに失敗して学びたい。だからチーム開発はどんどん苦手なことに挑戦したい!ということでスクラムマスターは人に任せました。
最初はデプロイ担当。不得意分野の経験積んで理解を深める!#プログラミング初心者 #テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月8日
★チーム開発2日目終了
★自動デプロイ実装。しかしBasic認証が通らない問題発生、明日に持ち越し
AWS…ネットを通しているからか、少し厄介に感じる。同じことやってるのに通ったり通らなかったり。反映されるのに時間がかかるんでしょうか?#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月9日
★チーム開発3日目
★画像の保存先を本番環境をS3に、それ以外をlocalに設定完了。
自動デプロイでちゃんと変更が保存されているのにそのcommitがgit logに残らない問題が発生。こんなことある?もうだめ…悔しいけど明日に持ち越し。#プログラミング
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月10日
★チーム開発4日目
★自動デプロイ、S3への画像の保存、ベーシック認証LGTM
★ビューの1ページほぼ完成
昨日から今日にかけてGitをいじくりまわしとても勉強になりました。理解も深まった!Linux上で操作するのは見えてないからこそ楽しい!#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月11日
★チーム開発5日目
★CA面談
★viewの中身一つ完成
★footerの一つ7割完成
レスポンシブデザインへの対応、Sassを変数やプレースホルダーなどを用いてリファクタリング。Sassが便利過ぎてもう普通のCSSの記述には戻れない体になってしまった…#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月12日
★チーム開発6日目
★マイページレスポンシブ対応済
★フッター完成、レスポンシブも対応済
★商品一覧ページ作成着手、3割完成
★朝、アカペラの練習済
フロント、レスポンシブ対応の鬼になってる。これは個人ポートフォリオにも活かせる!#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月13日
★チーム開発7日目
★初めてのスプリントレビュー
もう少し効率よく作業を分担できたな〜先見力…。そしてもっとgitと仲良くなりたい!退職記念に同期からもらったGitの本読も!
明日はビューを1つ丸々完成させて2つ目に進みたい…!#プログラミング#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月14日
★チーム開発8日目
★ビューページ2個とサーバーサイド1つのタスクを完成、コードレビューLGTM
★ビューページ1つ完成、プルリク出してコードレビュー待ち
朝、悩んでたJavascriptの記述が動いて嬉しかった!こういうところ楽しいね!#プログラミング学習#テックエキスパート
#今日の積み上げ
— ShowGoGoGo@プログラミング勉強中 (@showgogogo1989) 2019年9月15日
★チーム開発9日目
★ビュー1つLGTM、もう一つもプルリク出して終了
今考えたら、プルリク出してるやつが終わったらもうフロントをすることがないことに気付いた。少し寂しい笑
残りは経験積みたいサーバーサイド!しっかり身に付ける!#プログラミング学習#テックエキスパート
明日は最終課題で担当するフロント側として最後のLGTMをメンターからもらい、サーバー側の作業に移る予定。サーバー側はあまり経験を積んでないからここで復習も兼ねてしっかり身につけたいな。
以上、チーム開発1週間目が終わった感想でした!
(やっと誰かのためになりそうな記事を書けた…気がする。)