Opt Technologies Magazine

オプトテクノロジーズ 公式Webマガジン

Slackデータ活用ハッカソンの振り返り

alt

2023 年新卒のエンジニアで技術研修後に取り組んだ、Slack のデータ活用をテーマとするハッカソンについてご紹介します。 約1ヶ月半あった技術研修では個人で知識や経験を身につけるものが多かったのに対して、今回紹介するハッカソンでは2週間、チームで取り組んだものとなります。

あいさつ

こんにちは! 23 新卒エンジニアの中野です。 今年の新卒研修では 4 月に新卒社員全員で全体研修を受け、その後1ヶ月半ほどかけてエンジニア向けの技術研修を受けました。 新卒研修の振り返りについては以下の記事で見れますので、こちらもご覧ください。

技術研修では基礎知識の学習から実践形式での開発など、個人で行うものが多く大変でした。 その後2週間ほどかけて Slack のデータ活用というテーマでハッカソンを行い、チームでの開発も経験できたので、改めて振り返りをしたいと思います。

Slack データ活用ハッカソンの概要と進行について

弊社ではメインのコミュニケーションツールとして Slack を使っています。 今回のハッカソンは、コロナ前後でオフラインからオンラインへとコミュニケーションの主流が変化したこと、Slack をどう使うかが今後の組織の関係値・会社の発展の鍵になりそうといった背景から生まれた Slack 活用プロジェクトの一環として実施されました。

「Slack を最高のデジタルオフィスへ」をゴールとするこのプロジェクトの第一歩として以下の二つを目的としてハッカソンが行われました。

  • 実際にある課題に対しての施策・分析を行ってもらい PJ を進めるうえで解決能力を高めていく
  • チーム開発の練習の場として研修中に行い、配属後の業務に活かしていく

研修メンバーは Opt の 2023 新卒エンジニア6名と Digital Shift の新卒エンジニア1名の計7名だったため、2つのチームに分かれてそれぞれのチームで課題の発見から分析や開発を行いました。 また、課題の発見が難しいと感じた時のためにアイデアリストも用意されていたため、そこから一つ選んで解決することも選択肢の一つとしてハッカソンはスタートしました。

チームと成果物の紹介

チーム Ops

チーム Ops では、アイデアリストの中から「メンション付き投稿に対して絵文字リアクションや返信をしていない場合のリマインドを自動化したい」という課題を見つけました。 その背景には、入社直後に自分が入っていたチャンネルで、日々多くの情報が流れることにより見逃すことが多かったという経験も重なったそうです。 現状としては人の手でリマインドを行なっていたところを、自動化することでリモートワークでのコミュニケーションの質を向上させようという思いから「メッセージの確認漏れを防ぐ新 Slack Bot Mention Checker」 を開発しました。

Slack にデフォルトで入っているリマインダーと大きく違うところは、スラッシュコマンドを使うことで自分のタイミングで確認漏れを探せるという点でした。

チーム残業なし

チーム残業なしでは、コミュニケーションの質向上に取り組むためには現状を可視化するのが良さそうだと考え、Slack チャンネルの利用状況を分析しました。 弊社には times チャンネルという、業務とは直接関係ないことも呟ける自分用のチャンネルを作る文化があります。 強制ではないため全ての社員がそのチャンネルを作っているわけではありませんが、多くの人がこれを利用しています。 中には自分は特に呟くことがないのでチャンネルは作らず、他の社員の times チャンネルをよく見ている方もいます。

ここに部署を超えたつながりを作るきっかけができるのではないかと考え、times チャンネルの利用状況や部署間のつながりなどを分析しました。

Slack ハッカソンを終えて、エンジニア研修も含めてインタビュー形式で振り返ってみた

チーム開発を初めて経験した人が多い中で特に難しいなと感じた点はありましたか?

チーム Ops) タスクの割り振りやタスクの依存関係を考慮してメンバーを稼働させたり、作業時間を見積もるところに難しさを感じました。

チーム残業なし) チーム開発とはいっても、それぞれがやるべきタスクを独立して持っていたので開発を進める上ではそこまで難しい点はなかったですね。

開発を進める中でコミュニケーション面で意識したことはありましたか?

チーム Ops) Meet をつけっぱなしでコミュニケーションをとっていました。個別に相談したいときはさらにブレイクアウトルームを作ったりしていましたね。 あとは Slack と GitHub を繋げて PR の通知を Slack で確認できるようにしていました。

チーム残業なし) Meet 繋げっぱなしですぐに聞ける状況だったところは同じですね。 あとは Slack 上でのやりとりを多くして記録に残していました。口頭でのやり取りも文字にしておくことで進捗を追いやすかったです。

配属から1ヶ月半ほど経った今、エンジニア研修とハッカソンを振り返ってみて思うことはありますか?

チーム Ops) 実務を始める前に人のコードをレビューする経験を積めたのは大きかったと思います。コードレビューを通して自分のコードを他者視点で考えるようになりました。 配属後は基本的にすでにあるプロダクト開発に関わるので、チーム内でコミュニケーションを取りながら、アイデアを出して設計して計画を立てるなどゼロからものを作る経験をできたのはその後の配属先で開発チームに合流する上での自信につながったと思います。

チーム残業なし) エンジニア研修が終わった直後はクラウドインフラや CI/CD についてもう少しあればと思っていたけど、配属後にもキャッチアップの時間はあったしあれはあれで良かったと思います。 Docker とか データベース設計の話はもう少し欲しいと思いました。エンジニア研修の後半ではどちらも使っていて、そこでつまづくことも多々あったので。 AISOL 配属の人は研修とのつながりが少ないのが気になりました。知識を得たというよりは経験を得たという印象です。

エンジニア研修での学びをハッカソンでどれくらい活かせたと思いますか?

チーム Ops) プログラミング入門で TypeScript を書けるようになっていたのは大きかったと思います。エンジニア研修の後半ではもちろん、ハッカソンでも一通り動くコードを書くことができました。 バージョン管理入門で Git コマンドに触れることはできたんですが、GitHub の活用についてもう少し知る時間があればと感じましたね。 Issue や Pull Request だけでなく Projects なども活用すればより効率よく開発が進められたかもしれません。

チーム残業なし) どれくらいというと難しいですが、どの講座も少しずつ役立っていた印象です。TypeScript やデータベース、GraphQL なども活用できたと思っています。

エンジニア研修の直後に行った振り返りで、研修に対して物足りなさを感じた人がちらほらいたと思いますが、現在の配属後の仕事をしてみて改めて研修について思うことはありますか?

チーム Ops) 時間の関係もあるので仕方ないかもしれないですが、クラウドインフラ入門はもう少し時間があっても良かったと思います。 あとは CI/CD もあった方が良かったかなと個人的には思います。

チーム残業なし) CI/CD についてはこちらも同じ意見です。 あとデータベースやアプリケーション全体の設計についてもう少し学べたらと思いました。 知識として学ぶ座学の講座と手を動かす実践系の講座の配分がかなり難しいのかなという印象でしたね。

これを読んでいるであろう就活をしている学生や、これからエンジニアを目指す学生に伝えたいこと一言だけお願いします

  • とりあえず考えたり書くなど、学んだことを数多くアウトプットすることは大事だと思います。一方で、何を作りたいかを考えるのは難しい作業でした。

  • 開発に対して難しくとらえないのも大事かなと思います。初心者に向けていうと開発は難しいだけではないし、入社後の研修を通して初めてでもアプリケーション開発までできるようになりました。 エンジニアの先輩社員さんは優しいし、研修中どんな質問にも時間をかけて答えてくれるのでこの会社の研修はすごいと改めて感じました。

まとめ

以上、Slack ハッカソンの振り返りでした。2週間という長いようで短い期間でしたが、それぞれ多くの学びを得て、今の配属先でも日々学ぶことを続けています。 最後まで読んでいただきありがとうございます。

Opt Technologies ではエンジニアを募集中です。カジュアル面談も可能ですので、下記リンク先よりお気軽にご応募ください。