見出し画像

PrAha Challengeに参加してみる

はじめに

中級エンジニア向けプログラム「PrAha Challenge」に参加することになりました!😃

Codezineからメールが飛んできた時点で申し込むことは即断しました。
が、事前テスト見てちょっと臆したのでした。けどWebページ見てたらやっぱり参加したい想いが強くなんとか回答したのでした。
その結果、有難いことに選考を通過し参加できることに。

参加前の想いだとか、現在のスペックだとかを残しておこうと思いそれを書きます。

きっかけ

まず、元々42Tokyoに興味がありました。
でも公式にも書いてるようにこれは仕事しながら取り組むのは、試験の段階で既に無理とのこと。。私も仕事辞めるor休職してまでこれをやる覚悟があるかというと、色んな理由でYesとは言えなかったです。💦

でもなんだか独学だけだと、スキルは身に付けられるけど、どうも効率が悪い気がした。ぼっちなので、レビューしてくれるような人は周りにいませんでした。あと独学はモチベーションを保つことが大事だと思ってるので、自分が興味があることから学んでいくことが多かったです。
その結果、まあ案の定、自分の興味に偏ったスキルしか身に付いていない感じがしました。

私の場合、フルスタックなエンジニアになりたいと思っていますが、興味は言語の文法だとか、フロントエンドのデザインだとかに向きがちでした。
かつ大学の専門はエンジニアとは無縁だったので、その人たちが学ぶであろう基礎知識の土台がありません

結果、なんでかわからないけど動いてる、仕組みはさっぱりだけどこうすると良さそうなことはわかる。みたいな人になっていました。😥

それを脱したいと思ったのがきっかけという訳です。

色々書きましたが、まあ1番の理由はやっぱりモチベーション維持やスキル習得の効率が良さそう!と思ったことですね。

フルスタックエンジニアになるための学習ロードマップみたいなのはありますし、見たこともありますので独学でももちろん可能だとは思いましたが、良い環境があるならそれを存分に活用させていただこうと思った訳です。

PrAha Incさんには本当に感謝です。感謝してこれから頑張って取り組みます。

参加前のスペックの評価基準

参加後にどれだけ伸びたかを比較するため、PrAha Challengeのカリキュラムに沿って、今時点でどれだけ理解できているかを残しておこうと思います。

が、まず評価基準を決めます。

★5つで大雑把に以下のようにします。
※設計とかチーム開発などの手法系は、実践したことある、に読み替えます

☆☆☆☆☆:聞いたこともない。または聞いたことはあるけど、何なのかは全く理解してない。
★☆☆☆☆:何なのかは何となく知っている。けど説明はできない。
★★☆☆☆:一応何なのかは知ってる。あやふやなら説明もできる。けど実装はしたことない。
★★★☆☆:何なのか知ってる。説明もできる。実装もプライベートのハンズオンレベルならやったことある。
★★★★☆:何なのか知ってる。実装も実務(仕事orプライベートのハンズオンよりは上のレベル)で経験ある。
★★★★★:何のかもちろん知ってる。実装も実務で経験あるし、それなりに自信もあるかな。

フワッとした評価基準だけど。評価するのは私だし。ないよりきっとマシ。

参加前のスペックの評価

では早速、上から行きます。単語の横にカッコで★の数書きます。
と先にサマリ書いちゃいます。

総合平均★★☆☆☆1.59
内訳

WEBの基礎(平均:★1.3)
テストの基礎(平均:★1.0)
設計の基礎(平均:★1.3)
開発環境向上の基礎(平均:★1.5)
チーム開発の基礎(平均:★★★3.0)
サービス運用の基礎(平均:★★2.0)
フロントエンドの基礎(平均:★1.1)
バックエンドの基礎(平均:★2.0)
データベースの基礎(平均:★★1.8)
クラウドインフラの基礎(平均:★1.4)
高速MVP開発の基礎(平均:★1.1)

なるほど、1.59/5.00か。
このカリキュラムはエンジニア基礎を結構網羅的にカバーしている気もしたので、それを考えるとなかなか基礎がズル抜けなことが可視化されてしまいました。結構ショッキング。仕事でも苦労する訳ですね。😵
(注記しておくとカバーしていないものもあるみたいです。CSとかアルゴリズムとか大規模開発とか)

ちなみに職歴とかは、こんな感じ

・エンジニア歴1年(開発自体は9ヶ月ほど)
・Web・モバイルのフロントエンドの設計・実装が多い(でもAPI呼び方分からん。。クソコードであれば調べたら実装できそうかな。。)
・バックエンドはここ数ヶ月で初めて設計・実装やった(インフラに関しては聞いたことすらない単語のオンパレード)

今更ですが、だいぶ自己評価は低めです。そういう性格です。
項目ごとに以下の通り評価して、小項目の平均を(平均:)に書いてます。

WEBの基礎(平均:★1.3):
・HTTP通信に使われる各種ヘッダー(2):うん、多分半分くらいの名前と役割は知ってる。最近mitmproxyで通信の中身を見ながら勉強中。
・クッキー(3):最近やっとなんなのか理解した。けど実装は無理。。
・サードパーティクッキー(0):なんだそりゃ。。そもそもクッキーにはサードパーティ製があるんだ。
・CORS(0):わからん。。クロスオリジンを許可するらしい。へー。
・キャッシュ(2):役割は知ってるけど、実装は無理。。
・WEBサービスの脆弱性(1):なんとなーく聞いたことはあるしハンズオンレベルでやったことあるけど、実務であまり意識した機会はないな。。徳丸さんの本読まな。。
・HTTPS通信(1):「食べる!SSL! ―HTTPS環境構築から始めるSSL入門」を読んで頑張って理解しているところ。。なので実装はまだ無理。。。
・OAuth(2):実装はしたことなしできないけど、イメージはつくぞ。間違いなく「雰囲気で使わずきちんと理解する 整理してoauth2.0を使うためのチュートリアルガイド」のおかげだな。

こんな感じで項目ごとに評価。全部書くとはずいので、書かない。。

参加後のスペック(理想)

ここで終わるのも勿体無いので、目標たてます。

目標は、
太字の項目全てを★★★★4.0以上にすることです。総合平均4.0以上ではなくです。

つまり全部何とかする必要がありますね。先は長いですが頑張る。

本来ならアクションとマイルストーン決めてってなりますが、ここらへんはPrAha Challenge内で他の人と決めつつスケジューリングされていくと思うので書きません。

評価するタイミングはとりあえずこまめに、1項目終わるタイミングで評価しようかな。1項目ずつ進むわけだし、なるべくその項目の期間内に少なくとも3.0以上いけたら理想だな。

終わり

だいぶ長くなったけど、とりあえず現状は把握したし、目標も立てたのであとはやるだけということで明日から頑張ります。💪
余裕あれば学習したことをアウトプットしていけたらと思ってます。

ペア及びチームのみなさま、よろしくお願いします。

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