はじめに
先日、エンジニア育成の一環として行っているエンジニア定例の集大成である2泊3日のハッカソン合宿に参加してきました!
ハッカソン合宿では、4人1チームで、1つのプロダクトを作成します。
ハッカソンの取り組みについて詳しくは、今年もハッカソン合宿@土善旅館に行ってきました!の記事をご覧ください。
この記事では、私たちのチーム「タンゴドットjp」が作成した会社独自の単語帳サービス「TANGO!」の紹介をしていきます。
メンバー紹介
今回は、普段の業務内容も全く違うこの4人のメンバーで開発を行いました。
- 岡田
- 普段の業務はネットワーク構築・運用
- 熊谷
- 普段の業務はニュースサイトの運用・開発
- 浜村
- 普段の業務は連携パートナーデータ運用
- 山下
- 普段の業務はポイントサイトの運用・開発
TANGO!について
会社に勤務していると、その会社でしか使われていない単語や、会社で独自の意味を持つ単語に出会うことが多々あると思います。
その単語…
- 調べても出てこない
- 教えられても分かりにくい
- 自分が教える立場になった時も伝えにくい
こんな不満がありませんでしたか?
今回、私たちが作成したのは、そのような会社独自の単語を分かりやすく管理してくれる単語帳サービスです!
このサービス「TANGO!」は、ユーザーがその会社固有の単語を登録し、意味を投稿していくことで、その会社だけの単語帳を作り上げることができます。
なので、デザインはリズムのタンゴをイメージしてアニメーションを使ったオシャレなものになっています!
TANGO!でできること
使い方は簡単で、調べたい単語を検索するだけ!
①トップページから単語を検索
②検索結果から単語ページを表示
③会社固有の単語やその意味を掲示板のような形で閲覧可能!
- 閲覧数を追加することで、トップページから人気の単語が見れる!
- 独自マークで、会社固有単語との区別が可能!
まだ単語帳にない会社固有の単語や意味を登録したい場合は、意味の投稿、単語の登録を行います。
★調べた単語の意味が自分の知っているものと異なっていた…
- 単語ページでその単語の意味を投稿しましょう!
- 特に会社固有単語は複雑な使い方をしていることが多いです。今後誰かの参考になるかもしれません。
★調べたい単語が無かった…
- 検索結果のページから単語の作成をしましょう!
- 新着単語一覧から社内の人がきっと意味を投稿してくれます。
新しい単語を作成して…
登録完了!投稿を待ってみましょう!
開発の中で工夫したところ
今回のプロダクト開発でこだわったところは以下の2つです。
ドキュメントを用いたスケジュール管理の徹底
私たちのチームでは、合宿でのプロダクト開発に向けて、要件定義などを含めたドキュメントの作成を行いました。
その中でもスケジュール管理では、実際チームでの決断をする時に役立ったので共有します!
こちらが実際作成したスケジュールです。
プロダクトとして最低限の機能を持つ状態をv0として、何日目の何時までに出来ているという所まで想定していました。
また、2日目の午後では、15時までにv2までできていなければ、v3とv4を捨てるというDeadlineを定めました。
実際、作業をしていると想定より進まず、v3までできるかどうかという判断をする必要がありましたが、このドキュメントのおかげで素早い決断をすることができました。
スクラム開発の導入
スクラム開発とは、アジャイルソフトウェア開発手法のひとつで、プロダクトへの要望の優先順位を定めることで短い期間で最大限の成果を出すことができます。また、他の手法と比較してチーム内でのコミュニケーションを重視してます。
今回、私たちのチームでは「4人で1プロダクトを短期間で作る」という条件に適していると考えたので、このスクラム開発を取り入れました。
実際の作業中のカンバンです!
このようにタスクを細かく分けてホワイトボードに貼ることで、
- 誰が何をやっているのか
- どこまで進んでいるのか
上記の内容をコミュニケーションを取って確認しながら進めることができました。
また、スクラムの属人化しないという特性上、メンバー全員がそれまでの勉強会で学んできた全ての技術に触れながら開発することもできました。
学んだこと
今回の合宿を通して、多くの学びを得ることができました。
技術スキルも、普段の業務内容も全く違うメンバー同士で行った開発は、はじめは苦労しました。
一部メンバーの負担が極端に大きくなってしまったり、CSSデザインの作り直し、要件定義の確認不足、複数回のコンフリクトなど、トラブルも多々ありました。
しかし、メンバー一人ひとりの積極的なコミュニケーションによって、個人のスキルに関係なくコツコツとタスクを進め、短期間でサービスを作り上げることが出来ました。
このことから、チーム開発の難しさと、メリットを同時に学ぶことができました。
おわりに
思い返してみると、常に時間に追われながらの開発でした。
しかし、辛かったと感じたことはなく、楽しかったという思い出しかありません。
チームの雰囲気は常に明るく、息抜きには、温泉に卓球、食事など合宿自体も楽しめました!
このハッカソン合宿の経験を通して、メンバーそれぞれが得た学びを今後の業務に活かしていれけばと思っています。