見出し画像

[MIXI]TDD challenge #7 ONLINEに参加してきた

自己紹介

まず初めに簡単な自己紹介ですが、高校まで野球をやっており、プログラミングは大学に入学してから始めました。文系の大学3回生で24卒として就職活動を行なっています。プログラミング歴は2年ほどで、昨年から京都の企業でエンジニアインターンをさせていただいてます。主にRubyを触ってます。

参加した理由

  • TDD(テスト駆動開発)を使った開発がしたい

  • MIXIの雰囲気を知りたい

インターン先でテストコードを書くことはありますが、いつも後から書いていました。今まで、テストコードは追加した処理の後付け的な感じでいつも書いていたので、テストから書く開発手法に興味があったので、参加しました。

TDDとは?

TDD(Test Driven Development=テスト駆動開発)は、実装前にテストコードを書き、そのテストで最低限の動作を確認した後にリファクタリングを重ね、コードを洗練化させていく開発手法のひとつ。

MIXI TDD challengeとは?

MIXIさんが定期的に開催しているTDD(テスト駆動開発)の1dayワークショップです。具体的に詳しい内容は話せませんが、基本的にペアプロで進めていきます。与えられた課題をテスト駆動開発の手法を用いて解いていきます。わからないところや詰まった時はチューターの方に適宜サポートしていただけます。

タイムスケジュール

10:45-11:00 受付
11:00-12:30 ワークショップの説明、チュートリアル
12:30-13:30 ランチタイム
13:30-18:00 ワークショップ
18:00-19:30 質問会、懇親会

https://mixi-recruit.snar.jp/jobboard/detail.aspx?id=vab1YlndYscdIvR0QrggrA

使用した言語、テストフレームワーク

  • Ruby 3.1.2

  • Rspec

Rubyの標準のテストフレームワークであるminitestではなく、今回はRspecを使いました。

学んだこと

  • TDD(テスト駆動開発)について

  • ペアプロ

  • 設計

TDD(テスト駆動開発)を聞いたことはあったが、実践したことが無かったので、TDDの目的や流れを学ぶことができました。詳しいことはネタバレになるので書けませんが、テストを書いたことが無い人やテストの重要性が分からない人、テスト駆動開発を学びたい人には最高のイベントだと思います!

今回、ペアプロで進めていく形式でした。インターン先でもペアプロはやったことがありますが、最初から最後まで行うペアプロは初めてでした。ドライバー(コードを書く人)とナビゲーター(書いたコードに対して、意見やアドバイスを送る人)に分かれて、開発を行いました。普段1人では気づきにくいミスに気づけたり、より良い書き方を知ることができたり、とても学ぶことが多かったです。

感想

今回のワークショップに参加して、とても勉強になることばかりでした。TDDに沿って、コードを書く経験ができましたし、テストや設計について、エンジニアの方が考えていることを知ることができ、とても勉強になりました。TDDや設計について、もっと深く学んで、インターンや個人開発で活かしていきたいなと思いました。また、TDDの知識だけでなく、エンジニアの方の考えやアドバイス、同世代のすごい人たちに会うことができ、たくさんの刺激を受けました。自分に足りないところを再認識できたので、ここで学んだことを活かして、やっていきたいなと思いました。

TDD(テスト駆動開発)を学びたい人、テストや設計について学びたい人、エンジニアの方と話したい人、学生のエンジニアと交流したい人はすごく楽しめるイベントだと思います!こんなに素敵なイベントを開催していただいたMIXIの社員の方々、手厚いサポートやイベントを盛り上げてくださり、楽しく参加することができました!本当にありがとうございました!


最後に今回いただいたものを載せます😇


この記事が気に入ったらサポートをしてみませんか?