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

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

チーム開発3週間目終了(プログラミングスクール)

 現在、某プログラミングスクールに通っています。卒業予定は10月4日。あと1週間になりました。いまは最終課題のチーム開発を進めています。そこで3週間経って気付いたことや感じたことを残せていけたらと思いこの記事を書き始めました。簡単ですが、これからここに通い始める未来の誰かの参考になれば良いな。

 チーム開発1週間目に感じたことは前回の記事を参照ください。

 

showgogogo.hatenablog.com

 

 今回は2,3週を通じて感じたことを書いていきます。この2週間を一言で表すと

「チームプレーと目的意識は大切」

ということ。細分化して、大切だと感じたことは主に下記。

 

 

メンバーに頼る

 仕事をやる上…生きていくうえでも当たり前のことですね。わからないことがあれば自分で解決したい。それを乗り越えてこそ成長していくものだ。そう考え行動して繰り返すことで人間は成長できるんだと信じています。しかし、仕事を始めとする物事には基本的に納期、期限があります。それは最低限しっかり守れるような仕事をしたい(もちろん守れなかった時の対策も練る)。タスクが割り振られた時、自分で諸々試行錯誤して成功したら次に進む。しかしいまの自分の理解の範疇を超えてしまったりしたものについては悩みすぎないほうが良い

 今回、僕は一つの機能実装について約3日ほど悩んでしまった。牛歩並のスピードでしか進まず、抱えていたタスクを終えないと次のタスクに着手できない、そんなタスクに対してここまで時間をかけることはチーム全体の進捗に関わる。従って僕は今回、得意なメンバーにヘルプを要請した。結果、メンバーが上手に動いてくれて期限内に終わらせることができた。本当に感謝だ。つまり何を学んだかって言うと「わからないことはできそうな人に協力要請を出そう」という至ってシンプルなこと。こういう危機管理能力は前職の一人海外出張等で鍛えられた気がする。

 

必要最低限のタスクを考え、優先する

 これも仕事をやる上でアタリマエのこと。メンバー全員がそれなりに機能を実装する力があったため「クローンサイトと同じものをつくる」ということにこだわりすぎた。というのも、この最終課題には予めタスクが割り振られている。しかしその完了定義がとても曖昧な為、どこまでの機能を実装するか、完成度にするかは開発している本人たちに任される。とはいえ「Done is better than Perfect.」まさにこの言葉通り、「完璧」なものより未完成でも「とりあえず一通りできた」ものが評価される。なぜなら完璧でも一通り終わってなかったら「何もできていない」状態と同じだから。一通りできてからこだわった機能を追加した方がリスクと比べて完成度が高いものが速く出来上がるのではないかな。

 つまり、僕らはタスク外の機能まで実装しすぎたのだ。結果的に期限である4週間の内の3週間目で終了したから良いものの、さらにあのままこだわり続けていたら3周目で終わることはできなかったであろう。それを2周目のスプリントレビューで気付き、3周目に反映させた結果…必須機能を含めた+@の実装を終わらせることができた。この学びは大きかった。これはきっと実際の開発現場でもきっと活きることだと信じている。

 ハードウェアのエンジニアをしていたころも、もっとこれを意識したかったな。切羽詰まりすぎてもこだわっていた時期があったことを思い出した。その失敗経験が今にこうやって活かされているのは、とてもありがたい。貴重な経験をさせてくれた前職の環境に感謝。

 

個人的な学び

チーム開発で感じたのは上記になります。そして2,3週目で僕個人が担当したのは

・商品出品ページのマークアップ

・商品出品のサーバーサイドの機能(フォームからDBへの登録)を実装

・商品の削除機能、詳細表示機能のサーバーサイドを実装

・4500項目以上のカテゴリのシードデータ作成、商品に紐付けて登録

ajaxを用いてカテゴリ表示機能を実装。

jqueryを用いたトップページのカテゴリ、プルダウン機能を実装。

 個人的にあまり得意意識が高くなかったajax周りを触れられたのは理解が深まり、自信になった。タスクを自分から率先して挑んで正解だった。しかも自信どころか楽しく感じたのはとても嬉しくて楽しくてajaxjquery好きになった。笑

 

2,3週間の毎日の積み上げ

 ということで前回から載せていなかった毎日の積み上げツイートを最後に紹介、振り返って終わります。「毎日」に穴があるのはご愛嬌。

 

 

 いやはや、 実践現場に比べたらまだまだ未熟なのだろうけど…この2週間でチームメンバー全体や個人的にもとても成長を実感している。もちろんスランプもあったけど、この調子で成長し続けたい!

 この記事が何かしら、誰かの参考になることを祈って…

  ありがとうございました!

チーム開発1週間目終了

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

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

 早速だけど、

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

 を一言で言うと…

学ぶことが多い

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

 

 

Gitについて

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

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

 

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

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

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

 

タスクの振り分け方

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

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

 

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

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

・自動デプロイの構築

・ビューをいくつか作成

でした。

 

 

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

 

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

 

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

発表、は楽しい。

 ちょっとだけ緊張もしたけど、自分なりに一生懸命作ったものに対してみんなに発表するのって楽しいですね。プログラミングに関して人の前で発表する機会はなかなかないからとても良い機会だった。

 

1.簡単日記

 今日は個人アプリの発表。自分が作成したアプリを人に説明するのは恥ずかしいけど、プレゼンもそれなりに用意していったから達成感があった。達成感というよりかなり神経使ったな、という感覚。ドラクエマダンテ使った感じ。

 

2.今日の学び

 twitterでも作成したアプリを公開しました。大した機能は実装していないから反響もなにもないだろうけど、人の目に触れるところに出すことに意味がある、と信じて未熟ながらも公開!

 フィードバックがあれば是非欲しいな…

◆Work Life Balance

(イベント企画者特化型タスク管理アプリ)

使い方の資料

https://drive.google.com/file/d/1V1VBsLOdPJxNRUQoYo2pk1OWRBcgIZDz/view

URL

https://livetasks.herokuapp.com/

 

3.明日やりたいこと

 ポートフォリオサイトをちらっと公開、そのアウトプット。チーム開発開始。

 

4.終わりに

  今日は他の方のアプリ開発の発表を聞いて刺激をもらった。こんなこともできるんだ、もっと勉強したいなだとか大変そうだな…自分も頑張りたいな、とか…学びが多かった一日でした!今日も成長したな〜!

 ということで明日も実りある一日にするぞ!今日も一日ありがとうございました。

 おやすみなさい…zZZ

 

 

発表準備、も楽しい。

 自分なりに一生懸命作成したアプリの発表準備も楽しい。どんなふうに説明しようかな、どんなふうに説明したらわかりやすいかな、どんな情報を聞いてる人は求めてるのかな、どんな情報を持った人が聞くのかな、時間内に伝えたいことをちゃんと伝えられるかな、とか。発表って考えたいことがたくさんある。そしてこれらを考えながら作成するのも楽しい。

 

 

1.簡単日記

 今日は市役所の食堂へスクールの人たちと一緒にご飯へ。カツ丼大を食べたけどご飯も多くてカツも大きくて安くて美味しかったな〜。コンビニ飯よりコスパ良い!おにぎり作れなかった日は市役所で食べようかな!あとたまにはみんなでご飯食べに行くのも良いね!楽しかった〜\(^o^)/

 

2.今日の学び

 今日はherokuでデプロイしていたアプリの修正と発表資料の作成。

 画像のアップロードにS3を使用していなかった。つまりどこにも保存されていなかったからデプロイすると消えてデフォルトの画像になっちゃう。これは困った。ということで急遽追加した。公開鍵と秘密鍵の照合に時間がかかってしまったけどなんとか認証できて無事にデプロイできました。

 

3.明日やりたいこと

 スクール内個人アプリ発表、個人ポートフォリオの参考した資料まとめのアウトプット、そして公開。履歴書の修正もやるぞ。

 

4.終わりに

 エラーに遭遇するとなんでこのエラーが起きたのか?を解決するからエラーの分だけ成長するね。本当に。だから今日も成長した〜!笑

 今日も一日お疲れさまでした!これからちょっと発表資料を作成して練習してから寝るぞ!(そこまで大切な発表じゃないかもしれないけどできることはしておきたい)

 ということで今日もありがとうございました!

 おやすみなさい…zZZ

人のおもしろいところを見つける、は楽しい。

 世の中にはたくさんの人がいます。誰ひとりとして同じ人はいないから、その人特有の何かしらが必ずある。僕はその個性を見つけると「この人おもしろいな」って単純に感じてしまう。もちろん良い意味で。(良い意味というと揚げ足をとられそうだから…ネガティブな意味はない、という意味)

 だから最近、スクールの人とたくさん関われて嬉しい。みんな個性があっておもしろい、楽しい。みんなの歩んできた人生、一人ひとり周って聞きに行きたいぐらい!

 卒業してからか、最終課題が終わったら打ち上げでも行こう!行きたい!

 

 

1.簡単日記

 今日は比較的集中できてとても充実していた。twitter使ったアウトプットは、こまめに行うときが良いね。一気に溜め込んだやつはブログとかQiitaにすべきだと感じた。

 

2.今日の学び

 

 今日はDjangoのアウトプットをたくさん。中身は雑で備忘録程度だけれど、理解が少し深まったと感じてる。次は機械学習に手を出したいが…!

 アウトプットはもっとこまめに行おう。溜め込むよりこまめにアウトプットしよう。

 

3.明日やりたいこと

 個人アプリの発表資料を完成させる。昔つくったアプリを見返すと「あれもこれも気になる」ってなって修正ばかりに目がいってしまう…ほどほどにして発表資料完成させよう。サイトに流用できるように動画まで作れたら理想。まずは画像で説明資料作ろう。

 それと就職のキャリアアドバイザーと面談がある。ちょっと楽しみ。質問も考えておこう。

 

4.終わりに

 今日も成長できた〜!もっとプログラミングやりて〜!でも身につけるためには睡眠も大切だから寝る!

 ということで今日も一日お疲れさまでした、ありがとうございました!

 おやすみなさい…zZZ

 

共に考える、は楽しい。

 なにかの問題に対して1人だけではなく、複数人で取り組むことも好きだ。自分1人で考えるだけでは到達できなかった答えや考えを知ることができるしそれを聞いて自分の糧にもなるから。そういう一緒に考える仲間たちを大切にしていきたいし、自分も何かしら与えるものがあれば良いな、と思って過ごしたい。

 

 

1.簡単日記

 今朝起きたときから「今日、何か予定があったんだけどなにがあったか思い出せない…」というボケっぷりに我ながら呆れてたんだけど、スクール着いて「今日チーム面談やりますよ」って聞いた時に「これや!!!」ってピンときてスッキリした。スクールの予定もちゃんと予定に入れよう。

 

2.今日の学び

 今日はDjangoのビュー作成してcssの連携まで。明日のAMにはフォームの作成方法とDjango-Girlsのアウトプットをしたいな。Railsとの比較もしっかりやりたいけど時間優先でそれは簡潔にまとめたい。 

 で、共に

 

3.明日やりたいこと

 Django-Girlsのフォームについて。の復習、アウトプット

 

4.終わりに

 今日も一日成長したな…!でも明日は今日より少しペースをあげたいね!

 

 

というところで昨日は寝落ち。

 今日も一日実りある一日にするぞ!

 

対応させる、は楽しい。

 そう、ポートフォリオサイトをレスポンシブ対応にしたんです。それでもまだ「ん〜!ここはこうしたい!」っていうのがあったりきりがない…ので一旦これで公開予定、というところまできた。「こんなもんしか作れないのか」って思われるかもしれないけど、そう感じられたら傷つかない程度に是非レビューがほしいな…!笑

 

 

 

1.簡単日記

 今日、履歴書と職務経歴書と自己PRを書いたんだけどとても時間がかかってしまった。早く添削してほしいな!

 

2.今日の学び

 今日はPythonDjangoの環境構築とデプロイまで。こんな簡単にデプロイできるの?herokuより簡単。笑 まだDjangoは全体像がうっすらとしか見えてないから明日からの作業が楽しみ!

 あと個人ポートフォリオサイトをレスポンシブ対応にした!うまくできるとやっぱり楽しいね。各々のサイズに合わせて調整するのは楽しい。もう少しぱぱっとぺぺっとばーんって修正できたらもっと楽しくなるんだろうな。笑

 

3.明日やりたいこと

 Django-Girls終了、Djangoの全体像をつかむ。個人アプリ発表会資料の完成。

 

4.終わりに

 今日も学んで成長したな〜!特にレスポンシブ対応させられるようになったのは今後も活かせたい。

 Pythonはもっと触りたい。RubyRailsももっと深く掘り下げたい。やりたいこといっぱい\(^o^)/

 ということで今日もおつかれさまでした。今日は少し過ぎてしまったけれどブロク更新してから寝ることができたから自分を褒めてあげよう。よく頑張りました^^

 明日も一日成長するぞ〜!おやすみなさい…zZZ