MENU

【卒業生】テックキャンプはチーム開発でメルカリを作ります!

テックキャンプの事前学習

テックキャンプの短期集中コースでは最終課題で、メルカリクローンサイトのチーム開発を行います。

他のプログラミングスクールと比べて、チーム開発が体験できるのはテックキャンプのみで、就職に有利な経験を積む事が可能です。

  • チーム開発って難しそうだなぁ
  • チーム開発でどんな経験が得られるんだろう

こういった疑問に、実際にテックキャンプに通ってみた僕の経験をもとに答えていきます。

目次

テックキャンプのチーム開発が本格的

実際にチーム開発でつくったサイトがこちら。

トップページには、カテゴリー機能、ユーザーのログイン、新規登録機能、下の方にはピックアップ商品のページがあります。

プログラミングって1人でやるものだと思いがちですが、チームプレイや協調性が求められます。

受講生の中でも、チーム開発でプログラミングに対する理解が深まった、という人も多かったです。

アジャイル開発が体験できる

テックキャンプの最終課題では5人チームで4週間のアジャイル開発を行います。

アジャイル開発とは簡単にいうと、チームメンバーで役割を決めて、それぞれで作業を分担し、期日を設けて進めていくイメージ。

僕のチームでは、フロント側の開発をする人と、サーバーサイド側の開発をする人、と分けて進めていきました。

メンターさんに1週間単位でスプリントレビューをしてもらい、進捗の管理などもしてもらいました。

1つの作品を複数人で開発していくのは想像以上に難しく、メンバー同士で揉めてしまうチームも必ずでてきます。

SlackやTrelloなどを使いこなす

ライフコーチやチームメンバーへの連絡は、全てSlackというチャットアプリを使います。

チーム開発をする上でのタスク管理は、Trelloを使いました。

僕はいままでこういったツールを使ってこなかったので、最新のコミュニケーションツールを使うことは勉強になりましたし、

Trelloも使いこなせると、個人的なタスク管理や生産性もアップできるな、と思いました。

GitHubも使う

また、エンジニアになる上で絶対に欠かせないのがGitの知識です。テックキャンプではその中のGithubを使います。

Gitをすごく簡単にいうと、複数人で開発をするとき、データを共有したり、個別で保存したり管理できるシステムです。

複数人で開発すると、保存したデータが競合するコンフリクトが多発します。

誰がどこの作業をしているのか、メンバーで情報共有できてないとコンフリクトが生じ、プログラムが動作しなくなることが多々ありました。

わからないところを聞く力

チーム開発のとき、どうしても解決できないエラーがでます。

そういった時に、チームメンバーを頼ったり、他のチームの人に聞いてみたりして解決することがよくあります。

プログラミング学習は孤独になりがちで、わからないところを聞ける環境がないと、挫折率が高くなりがちです。

チーム開発を通してメンバーと仲が深まったり、協調性が磨かれたり、助け合う力みたいなのが育ちます。

ソロプレイが得意な人もいると思いますが、プログラミングに関してはチームワークが必要なので、協調性は重要ですね。

> TECH CAMP公式サイトはこちら

テックキャンプのチーム開発で身についた知識や技術

チーム開発で身についた技術は以下の3つ。

  • 応用カリキュラムまで(Rails,JQueryなど)の総復習
  • 実務を想定したGithubの使い方
  • チームワークや協調性

10週間の間で、自分でも驚くほどに成長を実感できたのがチーム開発の期間でした。

カリキュラムの総復習ができる

最終課題でメルカリのクローンサイトを作りますが、これといって新しくプログラミングの技術を学ぶわけではありません。

これまでに学んだHTML/CSS,Ruby,Rails,JavaScript,MySQL,AWSなどで作ることができるので、復讐みたいなイメージですね。

とはいえ、応用カリキュラムまでで習得した言語は、ほぼ忘れていて実際には使えないと思ってた方がいいです。

プログラミングは、実際に自分で考えたコードを書くことによって上達するので、カリキュラムを眺めて紙にまとめた程度では、ほぼ忘れていて使い物にならないです。

簡単な個人アプリを作ることが上達への近道でした。

実務を想定したGithub

チーム開発をするときは、本体(master)からいくつもの枝分かれ(brunch)を作って作業を進めていきます。

作業が完了した人は、枝分かれ(brnuch)を本体に結合(merge)するのですが、その際に競合(conflict)が多発します。

そうしないために、それぞれの作業内容を確認したり、毎朝その日の予定を立てたり色々な工夫をしていくわけです。

当然これは実務で必須なので、Githubの使い方が学べたことは良かったです。

チームワークや協調性

最終課題が一番早く終わったチームに共通してることは、チームワークが取れていて、Githubの競合(コンフリクト)が少なかった、ということです。

何度も言いますが、協調性こそエンジニアに必要なので独学ではそこを払拭できるかがポイントになります。

チームメンバーとご飯に行ったり、プライベートで作業会をする人もちらほらいました。

チーム開発は絶対にやるべき

テックキャンプに通われない方であっても、エンジニアを目指す以上チーム開発は絶対に経験しておくべきだと思います。

例えば、エンジニアを目指すコミュニティやオンラインサロンなどに入れば、同じレベルの受講生同士で、擬似のチーム開発を体験することができます。

アジャイル開発、進捗管理、メンバーとのコミュニケーションなど、どれも就職活動でアピールできるポイントになるので、絶対にチャレンジしてみましょう。

> TECH CAMP公式サイトはこちら

目次