【5週目】未経験からTECH::EXPERTでプログラミングやってみた
チーム開発に次ぐチーム開発です。どんなスーパーエンジニアでもチームで動くわけなので絶対に押さえなければいけないポイントではあります。
一人で開発するのとはまたいろいろ違ってたくさん発見があるのが本当に面白いです。ここに関してはハードスキルよりもソフトスキルが試されます。技術力を高めることはもちろんなんですが、ソフトスキルも高めてエンジニアとしてもビジネスパーソンとしても成長したいですね。
チーム開発継続中
先週から開発してるアプリは引き続きチームで作ってます。
毎週土曜日は他のチームと一緒に一週間の進捗を発表する時間があります。実際にアプリのデモを行いながら振り返るので、前もってherokuにデプロイしておく必要があります。
なので金曜日にデプロイ作業を30分程度で行うように見積もっていたんですが、甘かったです。鬼のエラー地獄が待ってました。結局1時間以上はデプロイ作業やってたと思います。
gitでherokuにプッシュする時にエラーが出ました。ネットで調べてもほとんど情報がなく苦労したんですが、結局railsのバージョンを上げたら完治しました。デプロイするときにいろんなgem等のバージョン周りでデプロイ先とうまくいかないことがよくあるような気がしてます。
でも次もう一回エラー出てもどこから手をつけるか難しいな…エラー文にバージョンのことは明示されてないから、そもそもバージョンが問題なのかどうかもわからないしバージョンだったとしてもある特定のgemが悪さすることもあるらしいので、gemなのかrailsなのか…余計にややこしいです。
初めての面接
今週TECH::EXPERTに入ってから初めて面接を受けました。聞かれた質問はこんな感じですね。
- どういうことをスクールで学んでるか
- どういう開発チームを好むか
- なぜエンジニアになりたいか
なんかやっぱり面接を受けて人と話すことでふわっとしてたとこが固まってくるみたいなことありますね。もちろん話す内容は準備してましたが、いろいろ考えることがありました。
どういうエンジニアになりたいのかとか、そもそもなんでエンジニアになろうと思ったのかとか、スクールに入って実際にコード書き始めるとあまり意識しなくなっていたので、意識づけして最短ルートで進んでいきたいと思います。
プロジェクト追加
今のチームとは別のチームにもアサインされ、既存サービスの完コピを作るプロジェクトを開始することになりました。通常最初のチーム開発を終わらせてからこの完コピを開始するんですが、僕の場合ちょっと早めにカリキュラムを終わらせたので前倒しにしてもらいました。
で、チームで話し合って「Pairs」のクローンを作ることにしました。今回もアジャイルで開発していきます。
まずプロダクトバックログに機能を書き出して、見積もりポーカー(各機能がどれくらいの工数を要するかチームで決める方法)を行うとこまでやりました。これだけで9時間ぐらいかかりました。
それぞれの機能の難易度感をチーム内ですり合わせるのに時間がかかるんですよね…でもこれをやらなかったら見積もりがバラけてかなり精度が落ちるので必要なもんだと思ってますが、実際現場はどうなんだろう。もっと上手なやり方がある気がするな。
読書
Twitterで紹介されていた技術書を買ってみました!多分人生で購入した初の技術書です。
Progate交流会でもオブジェクト指向の話出たから、買ってきた!@neer_chan さんのツイートが無ければまだ出会ってなかったであろう…感謝🙏 pic.twitter.com/zEFk0wHyXQ
— 金子幸三郎@未経験エンジニア (@Kosaburo_Kaneko) 2018年6月1日
一瞬で読み進めてしまったんですが、めっちゃ面白いですねこれ。オブジェクト指向と言えばなんか人間クラスがあって歩くとか喋るとかいうメソッドがあるぐらいのぼやっとした比喩でしか認識してなかったけど、そもそもなぜオブジェクト指向が必要とされたのかその経緯から教えてくれるのでスッと入ってきます。いやーまだまだ勉強できることがたくさんあって嬉しいです。
終わり
このチーム開発が終わるとカリキュラムは全部終了なんですよね。卒業まで一ヶ月切った今、入る前よりかなりスキルアップしていると感じてます。むしろここからどういう方向に進むかしっかり考えないと…というフェーズに来てる気がします。
今週はスケジュール的にカリキュラムとカリキュラムの谷間みたいなタイミングだったのであまり書くことはなかったんですが、実際のチーム開発作業は月曜から始まるのでなんとか三週間で完成できるように頑張ります!