はじめに
情報系の学科でCSを学習している学部2年のDot-P (@DotP_engineer) です
今回は、ハッカソンは個人参加するべきか、チーム参加すべきかについて話していこうと思います!
この記事はハッカソンにあまり参加したことがない人、個人参加しようか迷っている人向けに書いた記事になります。
ここで書くチーム開発は即席でチームを組むことを指します。
知人とチームで参加する予定がある方にはあまりこの記事が役に立たないかもしれませんが、ご了承ください
チーム開発と個人開発、それぞれのメリットとデメリットについて話していくので最後まで読んでいただければ幸いです。
自己紹介
工学部の情報系学科2年。 普段は、C言語やLinuxを触ることが多いです
そのため、Webの知識については皆無に等しいです。
ハッカソンを通じて、ReactやTypeScript、Flaskなどを触ったので、ほとんど初心者といっても過言ではありません。
この記事を書いているのはちょうど3回目のハッカソンが終了したときで、内訳としては2回は即席でのチーム参加、1回は個人参加という具合です。
3回目のハッカソンで企業賞をいただきました
何回かハッカソン後の懇親会に参加し、そのなかで個人参加に不安を感じている方がかなり多いと感じたので、私なりに見解を書いていこうと思います。
国語は苦手なため、読みづらい文章かもしれませんが、誰か1人のためにでもなれば幸いです
SNS
・Twitter: @DotP_engineer (←モチベーションの増加になるので、フォローしてね)
・Qiita: https://qiita.com/DotP_engineer
・Github: https://github.com/Dot-P
・Atcoder: https://atcoder.jp/users/Dot_P (今年の2月から始めました!)
チーム参加、個人参加のメリット・デメリット
前置きが長くなってしまいましたが、メリット、デメリットについて話してみたいと思います!
ざっとまとめるとこんな感じです。
個人開発 | チーム開発 | |
---|---|---|
技術力の向上 | ◎ | 〇 |
プレゼンスキル | ◎ | △ |
新たな発見 | 〇 | ◎ |
コミュ力 | △ | ◎ |
リーダブルコード | △ | 〇 |
開発期間 | 長い | 短い |
チーム開発
チーム開発では、主に協調性が磨かれます!
特に即席チームでは、異なるバックグラウンドやスキルセットを持つメンバーと共同作業することが一般的です。そのため、他者の視点を理解し、共感を示す必要があります。
相手に伝えたと思ったけれでも、伝わっていなかったというケースも多々あります。
私もチーム開発をした際、フロントエンドとバックエンドの間でうまく情報交換がなされておらず、結局作り直しになってしまったという経験がありました。そういった経験に対する反省が協調性を磨き、他の団体で開発するときにも生きています。
さらにチーム開発では新たな発見もできます!
先ほども言った通り、ハッカソンにはバックグラウンドが違うやスキルセットの異なる人が大勢いらっしゃいます。フロントエンドの知識しかない人がバックエンドの知識をかいつまむこともできますし、何なら教えてもらうことだって可能なわけです。
これは未知に踏み出すビックチャンスです!
恥ずかしながら私はフロントエンドとバックエンドをどう繋げるのかが分かっていませんでした。そのため、チーム開発したコードを見て教えてもらうことで初めて理解しました。
どんな技術があるのかなどを認知するにはハッカソンでのチーム開発にはもってこいです
個人開発
個人開発のメリットはなんといっても技術力の向上です。一人であると、わからない箇所は基本的に自分で調べていかないといけないですし、公式ドキュメントを読む機会も増えます。
メンバー間での日程調整がない分、開発期間も長いです。設計から取り組むことができるので、力は申し分ない程度つけられると思います。
しかし、自分で意識して取り組まない限り、リーダブルなコードを書く力は身に着けられません。どうしても機能の実装、UI/UXが優先されてしまうためどうしてもないがしろにされがちです
これが一番大事なのですが、最後までやりきる覚悟は必要であると感じています。参加したものの、継続的に開発ができず前日にキャンセルする人が一定数いらっしゃいます。それ相応の覚悟で臨むことを強くおすすめします。
最後にまとめとして「こんな人におすすめだよ」ということを書いていこうと思います。
こんな人におすすめ
チーム開発
・フロントエンド、バックエンドのどちらも自信がない (どっちかは触っていて、html、cssはできる)
・初めてハッカソンに参加するので不安に感じている
・協調性を身に着けたいと思っている
・チームにリーダーのような人がいる
個人開発
・人に頼らず、開発できるような力をつけたい
・フロントエンド、バックエンドのいずれかはできる
・プレゼンスキルを身に着けたい
・開発期間が十分とれる
・最後までやりきる覚悟がある
まとめ
よく、「私はバックエンドしかできないので個人開発は...」という方がよくいらっしゃいます。しかし、ハッカソンに初参加するわけではないのならば一度個人で参加してみるとよいと思います!
使える技術の幅が広がり、チャレンジできるものも増えます。個人で最後までプロダクトを開発することで、一人で作れることに対する自信も持てます。
その自信が、あまり開発経験のない友達など周りの人を巻き込んで開発をするきっかけになり、もっと開発が楽しくなるはずです。
この記事を読んだ皆さんが素敵なエンジニアライフを過ごすことを願っています
(終わり)