・チーム開発ってどんな感じ?
・2ヶ月目の転職サポートはどんなことをするの?
1ヶ月目に続き、実際にDMMWEBキャンプ(専門技術コース)を受講した筆者が2ヶ月目の講習を終えて感じた率直な感想を記事にしたいと思います。
注意点として、DMMWEBキャンプは日々アップロードを重ねており、カリキュラムが変更になることも結構ありますので、参考程度に御覧ください。
※本記事は2021年6月の感想です。
DMMWEBキャンプ2ヶ月目で学べること
最初の1週間は応用課題
2ヶ月目に入って真っ先に取り組むのが応用課題です。
応用課題の内容は、1ヶ月目の課題でもあったRailsの投稿アプリの応用です。
具体的には、
- 投稿アプリのデバッグ(間違え探し)
- 投稿アプリにいいね、コメント機能の実装
- 投稿アプリにフォロー、フォロワー機能の実装
- 投稿アプリに検索機能の実装
- 投稿アプリのいいね、コメント機能を非同期通信化
更に進める人はグラフ機能、星評価、チャット機能など、投稿アプリに機能を追加していきます。
応用課題(デバッグ)の内容
最初に取り組む応用課題はデバッグです。
デバッグでは、あえてエラーが出るようにされたRailsアプリを配布され、そのエラーを自分で見つけて解消するといった内容です。
私は、エラーが発生するとまずはエラー文をコピーして検索していましたが、この方法だと今後同じようなエラーが出ても同じような対応しか出来なくなります。
課題のデバッグをすることで、まずはエラー文に何が書いてあるのかを理解してどこを修正すればいいか考える癖が身につきました。
応用課題(機能追加)の内容
機能追加では、SNS投稿アプリで必須ともいえる機能を追加していきます。
- 投稿アプリにいいね、コメント機能の実装
- 投稿アプリにフォロー、フォロワー機能の実装
- 投稿アプリに検索機能の実装
- 投稿アプリのいいね、コメント機能を非同期通信化
どの機能追加もカリキュラムに沿った学習ではなく、ヒントだけ出されている状態です。
自分で検索して機能を実装していかないといけないので、今までのなぞるだけのカリキュラムよりもグッと難易度が上がります。
応用課題の進め方
応用課題のカリキュラムで意識したほうが良いことは余計な所で時間を使わないことです。
応用課題の目的はRailsの理解を深め、ポートフォリオに役立つ応用知識を身につけることです。
私も最初は、細かいレイアウトを修正するなど、本筋とズレたことで時間を使ってしまいました。
(検索ボタンのレイアウトを全く同じようにしたり)
応用課題はとても多いので、これからDMMWEBキャンプを受講する人は、レイアウトは気にせず、機能の追加方法だけにフォーカスしていくことおすすめします。
DMMWEBキャンプの目玉、チーム開発の内容
応用課題の1週間が終わったら、チーム開発が始まります。
チーム開発では、振り分けられた3~4名のチームチームメンバーとECサイトを作成するカリキュラムになっています。
ちなみに2ヶ月目の課題が「チーム開発でECサイトを完成させること」になりますので、チームメンバーと相談して、まずはECサイトを完成させることに重きをおきましょう。
チーム開発は設計からスタート
まずは開発前に、チームメンバーと設計やスケジュールを決めて行きます。
作成するものは、
- ER図(テーブルの関係性を示す図)
- テーブル定義書(テーブル内のカラムの設計)
- アプリケーション詳細設計書(アプリの詳細な動きを設計)
- WBS(スケジュール管理)
これらをチームメンバーと作成していきます。
結成したばかりのチームなので、役割分担がやんわりとしてしまうので、誰がどれを担当するかはしっかりと決めておきましょう。
開発はチームメンバーと共有しながら行う
チーム開発では一人の開発環境とは全く違います。
GitHubの扱い方、レイアウトはどの色で統一するか、変数名はどうするかなどなど。
そうならないために設計を立てていますが、作業をするうちに必ず何個かイレギュラーが発生してしまいます。
一人の開発では「全部直せばいいか」と思っていたことも、チーム開発ではそうも行きません。
「なにか変更したい」「ここがわからない」などは、早めにチームメンバーと共有しながら進めて行くことがチーム開発では大事になってきます。
GitHubの扱いは現場さながら
チーム開発のGitHubは、今まで以上に慎重に扱う必要があります。
個人の開発とは違い、チームメンバー共有のリポジトリで作業をするので、担当箇所以外を変えてしまうとコンフリクトが起こったり、他のメンバーのプルリクエストを確認しないといけません。
チーム開発のGitHubの扱いは、個人開発より神経を使いますが、その分GitHubの扱いにも慣れますし、就職後も間違えなく役立つ知識となります。
コミュ障でもチーム開発はなんとかなる
中にはコミュニケーションを取るのが苦手で、チーム開発は嫌だなと感じている人もいると思います。
私もコミュニケーションを取れるのが苦手で、チーム開発初日はかなり緊張していましたが、
皆さん同じ目標を持った同士が集まっているので、話も合うし否定的な人もまずいません。
最終的には連絡先も交換するくらい打ち解けることが出来ました。
チーム開発は、独学ではとても経験出来ないような学びが多く、DMMWEBキャンプのカリキュラムの中でも特に価値のある経験になりました。
2ヶ月目の転職サポートについて
書類添削(履歴書・職務経歴書)
2ヶ月目は、1ヶ月目から取り組んでいた履歴書と職務経歴書の添削を行います。
特に職務経歴書はとても丁寧にフィードバックを貰えるので、しっかりとした職務経歴書を作れます。
私も何度が再提出をして、ようやく合格を貰えました。
また、添削面談ではIT業界に関するレポートを作成と次回のすり合わせ面談に関する連絡も受けます。
2〜3ヶ月目までにIT業界に関するレポートの提出
IT業界のレポートは全部で3枚です。
内容は、「自社開発・受託開発・SESのメリット・デメリット」ですが、私の場合それっぽいことを検索してもなかなか答え出すことがむずかしかったです。
提出期限は3ヶ月目の終盤までと余裕はありますが、早め早めに出してフィードバックを貰ったほうが無難です。
まとめ
DMMWEBキャンプを2ヶ月目受講してみた感想は、
- 2ヶ月目以降はRails漬けになる
- 応用課題はポートフォリオ作成の準備
- チーム開発は思った以上に学びが多い
などがあげられます。
チーム開発では、最初はチームメンバーと仲良く慣れるか不安でしたが、皆さんいい人ばかりでとても楽しくチーム開発が出来ました。
技術面でも、GitHubの扱い(転職後も必須の技術)や誰がどこの部分を担当するのかなどのコミュニケーションのとり方など、本当に様々なことを学べます。