🌈

プラハチャレンジを卒業しました!!!

2021/12/18に公開

第1期生として2021年1月から参加していたプラハチャレンジですが、2021年11月末をもって卒業となりました!
プラハチャレンジを通して、学べたことや大変だったことなど、いろいろ振り返っていこうと思います。

プラハチャレンジとは

プラハチャレンジとは、株式会社プラハが運営するオンラインブートキャンプです。
https://praha-challenge.com/

また、プラハチャレンジを作った理由も以下のブログにありますので、もし今後受講を検討している方がいれば、ぜひ一読してみてください!
https://praha-inc.hatenablog.com/entry/2020/12/02/144950

また、以下のPodcastにて卒業後のインタビューを受けましたので、こちらも併せて聞いていただけると、プラハチャレンジの雰囲気が伝わりやすいと思います!
https://anchor.fm/praha-inc/episodes/10-e1bme12

エンジニアとしての経歴

2019年1月に異業種からエンジニアに転職して、もうすぐ3年になります。
これまではSESとして、JavaやC#を使って業務系のシステム開発をメインで行ってました。
その過程で、それぞれの事業における複雑なドメイン領域をコードに正しく落とし込むことができていないと感じることが増え、ドメイン駆動設計などの設計手法について学び始めました。
また、ウォーターフォールで開発をしていくことがかなりしんどく感じることが多く、アジャイル開発などの開発手法についても学んでいきたいと思っています。
最近はリアクティブアーキテクチャに興味を持ち始めて、ScalaやAkkaを勉強しています。
また、2022年1月からは運営会社であるプラハにジョインする予定です。

受講を決めた理由

結論から言うと、タイミング・内容の両方がめちゃくちゃピッタリだったので、自分は即決でした。
その中でも大きかった要因を軽くまとめます。

1. 次に何を学ぶべきか決めかねていた

エンジニアとして働き始めてもうすぐ2年になるくらいのタイミングにちょうどプラハチャレンジ1期生の応募が始まったことを覚えています。
当時は 「もうすぐ2年になるけど、このまま独学で好きなことだけ勉強していっても大丈夫なのか?」 という漠然とした不安を抱えていました。
独学だと、やっぱり好きなこととか興味のあることを優先して勉強してしまうんですよね。
(ちなみに自分はちょうどドメイン駆動設計とかテスト駆動開発とかを勉強し始めた頃でした)
しかも未経験向けのスクールは大量にあるのに、初級から中級って意外とないんですよね。
そんな自分にちゃんと体系立てて学べるのは、とても魅力的でした。

2. 社外で勉強できる環境が欲しかった

自分はSESとして現場に出て働いていたんですが、当時の現場には技術の話をできるようなエンジニアが全くいませんでした。(知り合いにはいましたけど、同じ職場ではなかった。。。)
そして経験が2年しかなく、大した実績もない若者が 「テストを書きませんか?」 とか 「設計が良くないと思います」 とか言ったところでもちろん相手にされるわけもないです。
自分がそれを実践して、効果を証明できれば相手にされたのかもしれませんが、自分にはまだそこまでの実力はなく、チームに布教することは到底できませんでした。
ただ、ここで転職するのは逃げたみたいで何か納得がいかなかったので、どうせ転職するにしてももっと実力をつけてからにしようと考えていました。
社外の活動として、たまに開発合宿をやってみたり、技術書展に本を出してみたりとかもやってましたが、継続して何かを一緒に勉強するっていう感じの環境は当時の自分にはなかったので、プラハチャレンジはドンピシャでした。

実際に受講が始まるまで

プラハチャレンジを受講するには、事前テストを受けて通過する必要があります。
僕が受けた事前テストはGoogleフォームで解答を送るっていう方式で、時間制限とかはなかったです。
ただ結構内容が難しかったり、「どこまで細かく答えれば良いんだ?」みたいな質問があって、なんとしても通過したかったので、半日くらいかけてめちゃめちゃ細かく解答したことを覚えています。

事前テストを通過したら、軽く面談をした後にオリエンテーションがあって、ついに受講開始です!

良かったこと

1. 同じ志を持った仲間がいる環境で高めあうことができる

自分にとってはこれが一番大きかったです。
やっぱり同じことを学んでいる仲間がいれば、困った時にお互いに助け合えたり、お互いの知識を共有することでさらに学びが深まっていくと思います。
また、ペア・チームを組んでカリキュラを進めるため、途中で「飽きたからやーめた」は、できません。
自分はすぐ興味があることに逃げてしまうので、こういった強制力が働くのもありがたかったです。

2. カリキュラムの内容が充実している

全部で60個以上の課題が用意されています。
課題の内容は、さまざまな原則や設計手法などの内容を調べてまとめるものや、実際に手を動かして実装するものなど、さまざまな種類があります。
それぞれの課題をしっかり深掘りしていけば、広く浅くではなく、広く深く学ぶことができます。
ただし、やりすぎると次の課題に進むタイミングを失うので、自分はある程度のところで止めていました。
この辺りを個人で自由に決められるのもありがたいところでした。
例えば、興味のある分野は深く、ここはある程度知ってるからな〜っていうところはサッと流すような課題の進め方もできます。

詳細な課題の内容は伏せますが、これらの課題をしっかり進めることで 「変更容易生が高いアプリケーションをチームで開発するために必要な基礎知識」 をつけることができるんじゃないかなーと感じました。

3. 輪読会やゲーム大会など交流の場がある

現時点で開催されているのは以下の3つです。

  • 輪読会 : 隔週
  • 競プロ会 : 毎週
  • ゲーム大会 : 不定期

基本的に、CEOの松原さんが「こういうイベントをやりましょう!」と言ってイベントが始まることが多いです。
ただ、その後の運営はそのイベントに参加する人たちでやることが多いです。
また、自発的にイベントを開催して良いので、今後さらにイベントが増えていく可能性もあります。
(自分は輪読会とゲーム大会によく参加しています。そしてこれらのイベントは卒業後も参加可能です。)

元々自分はこういった公の場で発言することがあまり得意ではなかったんですが、輪読会で意見を話すだけでも少しずつ苦手が解消されていってるな〜と思ってそういう面でもメリットを感じています。

「conpassとかで応募されてるイベントってちょっと参加のハードル高いんだよな〜」という方でも、プラハチャレンジの参加者同士なので、気軽に参加できるのが嬉しいポイントです。

めっちゃ大変だったけど、めっちゃ良かったこと

1. 特大課題と呼ばれるものがある

ある程度プラハチャレンジを進めていくと、突然 「特大課題」 と呼ばれる課題が出現します。
ざっくりいうと、これまでプラハチャレンジで学んできた知識を総動員してAPIサーバーを実装します。
(ちなみに自分は特大課題の完了に約2ヶ月かかりました。他の人も最低1ヶ月はかかってそうです。)

この特大課題をやることで、これまでの課題で学んできたことがさらに定着した感じがあります。
やっぱり手を動かすのが一番大事っていうのを改めて感じました。

2. 擬似アジャイル開発を行うチーム開発課題

プラハチャレンジの終盤に差し掛かると、チーム全員で擬似アジャイル開発を体験できる課題が用意されています。
ちなみにこれも開始から完了まで大体2ヶ月くらいかかります。

自分が最も苦戦したのはチーム開発課題でした。
POとのミーティング、チームメンバー同士のタスクの管理、コードレビューなどなど、チーム開発では考えなければならないことが個人開発に比べて格段に増えました。
また、自分は普段ウォーターフォールなので、アジャイル開発自体も初めてでした。
初めてだらけの中、なんとかリリースまでできた時は達成感やばかったです。燃え尽き症候群になるかと思いましたw
改めてチーム開発の難しさと楽しさを知ることができる、とても良い課題でした。

まとめ

プラハチャレンジを卒業するまでの約11ヶ月、とても充実した日々を過ごせたと思います。
これまでならダラダラ仕事して残業とかしていたところを、プラハチャレンジを進めるために頑張って進めてなるべく定時に上がれるようにしたり、休日もすぐゲームしてしまうところを課題進めるためにちょっと我慢してみたり、、、。
意識もちょっと変わったような気がします!

もし自分と同じような悩みを持っている方がいれば、プラハチャレンジはおすすめできるので、次の募集があればぜひ応募してみてください!

GitHubで編集を提案
アガルートテクノロジーズ/PrAha

Discussion