新卒で自社開発企業にエンジニア就職

【10週目】テックキャンプ(エンジニア転職)の記録 【卒業】

ノロ

どうも、テックキャンプ(エンジニア転職)卒業生のノロ(@noronoro_yurupoです。
プログラミングを学びたくてテックキャンプ(エンジニア転職)に通うかどうか迷ってる。だから実際にテックキャンプ(エンジニア転職)に通っていた人の意見が聞きたい。

読者

という人に向けて記事を書きました。
記事の内容
・【10週目】テックキャンプ(エンジニア転職)の記録 【卒業】
今回は9週目の振り返りをしてみたいと思います。
前提
・❶:コースは「エンジニア転職」。
・❷:フリーランスコースとエンジニア転職コースのカリキュラム内容は同じ。チーム開発のメンバーになることもある。
これからテックキャンプ (エンジニア転職)にいくか迷っている人はもちろん、テックキャンプ (エンジニア転職)に参加している人にも参考になると思います。

※ちなみに1週目の記事は以下になります。気になっている方はぜひ。
【1周目】テックキャンプ(エンジニア転職)記録 【スパルタ】
では実際に見ていきましょう。




テックキャンプ (エンジニア転職)10週目のスケジュールを公開

64日目 個人アプリ2つ目作成
65日目 休養
66日目 ウィザード方式による新規登録機能の実装
67日目 トップページのビュー作成&投稿機能
68日目 商品購入機能&コメント機能
69日目 いいね機能&フォロー機能&カテゴリー表示機能
70日目 最終課題発表会

とうとうテックエキスパート最終週。

初めは70日間とか長いなあと思っていたのですが、振り返ってみると一瞬でしたね。

それだけ楽しくプログラミングに取り組めましたし、いい同期にも出会えました。

最終日の飲み会ではプログラミング以外にもいろんな話ができました。これから先も関係を深めていきたいなあと。

・64日目:個人アプリ2つ目作成

10週目の初日は2つ目の個人アプリを作り始めました。

最終課題を通して学べたことが色々あり、それを自分なりにアウトプットしたかったので。

ということで早速この日は全体的な構想とDB設計を行いました。

・アプリ内容:自分好みの本を購入できるアプリ(おすすめ表示をどう実装するかが肝)
・DB:DBのテーブルは10個(予定なので増える可能性は大いにあり)
こんな感じで、DB設計も慣れてきたからか、2時間かからずに終わらせることができました。

そして、以下のコマンドをターミナルに打ち込みアプリを作成。

・Rails new _5.2.2.1_(バージョンは5.2以上にするのが無難) new アプリ名 -d mysql
これで簡単なアプリは完成ですね。DBをcreateし、サーバーを起動後localhost3000が表示されれば成功です。


これですね。

これができたらあとは自分の好きなようにビューを作ったり、機能を実装していきアプリを充実したものにしていけばOK。

この日はこれくらいにして、最終課題に向けてのプレゼン資料を作りました。

MEMO
64日目は2つ目の個人アプリを作成しました

・66日目:ウィザード方式による新規登録機能の実装

65日目は少し休憩し、66日目からガリガリコードを書いていきました。

この日はウィザード方式の新規登録をsession方式で取り組もうと決めていました。

最終課題ではsession方式を使わなかったので、個人アプリでは実装したいなあと思ってたんですよね。

そもそもsession方式がなにかというと、次の通り。

・session方式:最後のビューまでデータを持っていき、登録ボタンを押す瞬間に全てのデータをDBに格納するもの
かなりざっくりしてますが、慣れないうちはこれくらいの理解でOKです。

僕が最終課題でやった方法だと「次に進むボタン」を押すたびにデータがDBに格納されてたんですよ。

なので、ユーザーが入力に飽きてブラウザを閉じると、それまで入力していたデータはDBに残ったままになります。

ノロ

これはセキリュティー的にあまりよくないですよね。
ただ結論から言うと、session方式で実装することはできませんでした。。

5時間格闘しても希望の光が見えなかったので、以下のようにredirectで無理やり実装することにしましたね。


deviseの機能をここで一旦断ち切って


ここから普通にform_forで一回一回データを格納する形です。

最終課題と同様の実装になってしまいましたが、セッションでカバーできる以外のセキリュティー面は最終課題以上に仕上げることができたので及第点ですかね。

MEMO
65日目はウィザード方式の新規登録機能を実装しました

・67日目:トップページのビュー作成&投稿機能

67日目はトップページのビューを作成し、その流れで投稿機能を実装しました。

今日やったことは基礎カリキュラムをちょっと応用した程度のことなので、そこまで時間はかかりませんでした。

とはいえどビューを書くのは個人的に苦手なので、フロントエンド側にかなり時間が取られました。


こんな感じで経験者からしたら20分程度で終わることを、僕は40分くらいかけてしまい精神的にまいってしまいました。。

ビュー作成が終わってからは、同期とこれから先の「エンジニアキャリア」についての話にかなりの時間を使いましたね。
そして、以下のような投稿機能(ちゃんとDBに格納される)を実装し、この日は家に帰って寝ました。


MEMO
67日目はトップページのビューを作成し、投稿機能も流れで実装

・68日目:商品購入機能&コメント機能

この日は以下のことをやりました。

・❶:Pay.jpを用いた商品購入機能
・❷:コメント機能
やってみると案外簡単でした。

Pay.jpを用いた商品購入機能

Pay.jpはgemを入れた後に、以下のようにコントローラーに記述をし、ルーティングを組めばOK。


こうすることで商品はきちんと購入することができます。

ただこれだけだと同じ商品を何度も買えてしまうので、ここらへんは自分なりに工夫して実装する必要はありますね。

コメント機能

コメント機能も簡単ですね。基礎カリキュラムのようにやれば簡単に実装することが可能。

今回僕はコメントにも編集機能と削除機能を実装したのですが、これがまた結構やっかいでしたね。


こんな感じで、コメント機能はネストしてあるので実装するのに時間がかかりました。

しかし、いろいろ試行錯誤することで自分の技術力が向上したので挑戦してよかったですね。最高でした。

MEMO
68日目は商品購入機能とコメント機能を実装しました

・69日目:いいね機能&フォロー機能&カテゴリー表示機能

この日はコード書きたい欲がやばかったので3つ機能を実装しました。

最終課題発表会前日ではあったのですが、そんなこと関係なしにコードを書いてしまいました。脳みそすっからかんになりましたね。

実装した感じは以下の通り。

これがいいね機能で

これがフォロー機能ですね。

なんか難しそうですがそこまで難しいことはしてないんですよね。Qlitaの記事を参考にすれば余裕で実装することができると思います。

最初はQlitaのありがたみがわからなかったのですが、実際に自分のアプリを作り始めてきてからQlitaは神だなあと思いましたね。

この記事を読んでいる方で、まだこれからプログラミングを始めようと思っている方は、今からでもいいのでQlitaは見ておくようにするべきですね。

ノロノロ

最新の技術情報にキャッチアップするのにQlitaは最適なんですよ。
MEMO
69日目はいいね機能、フォロー機能、カテゴリー機能を実装しました

・70日目:最終課題発表会

いよいよ最終課題発表会です。

この日は最終課題のまとめと、それぞれ自分が思ったことをイベントスペースで発表しました。

もっと具体的に内容をまとめると

・チーム内メンバーの自己紹介
・自分の実装した箇所の説明
・最終課題で大変だったこと

・後輩に向けて一言
こんな感じですかね。一人当たり2分くらい話しました。

思い返してみると、テックキャンプに入った頃から比べると技術力はかなり上がりましたね。

今では環境構築も余裕でできますし、簡易的なブログアプリくらいなら10分もあれば余裕で作れます。

それに

同じ背丈でプログラミングを学んだ同期ができて最高でした。
僕は大学生ということもあり、ここまで本音で話し合える年上の方がいなかったので、本当に新鮮な気分でした。

しかもみなさん優秀で、プログラミング以外でも多くのことを学ばせて頂き感謝です。感謝しきれません。

これから大半の同期(僕も含めて)は、モダンな企業に勤めるために東京に出向くと思いますが、時間を見つけて飲みに行ったりしたいですね。

MEMO
70日目は無事最終課題発表会を終えることができました

・テックキャンプ(エンジニア転職)を選んで良かった

テックキャンプ(エンジニア転職)に関しては色んな意見が飛び交っています。

・値段が高すぎる
・メンターのレベルが低い(もはや受講生の方が高いまである。個人的にここは事実だと思ってます)
・SESの企業しか紹介されない
・カリキュラムの内容がしょぼい
こんな感じで。

確かに60万はちょっと高すぎじゃない?とは思いましたが、実際に通った僕の率直な意見としては「通って良かった」ですかね。

こんな時代にわざわざ教室まで足を運んでプログラミングをしに行くなんて非効率だなあと思ってたのですが、通ってよかったです。

オンラインだと同期との出会いもなかったですし、ここまで技術力は上がらなかったと思いますね。
僕は大学生なので、このあとはインターンで経験を積み、新卒としてファーストキャリアを「エンジニア」にするべくもっと頑張ります。

それに、今となってはプログラミングが大好きな状態なので、早くどこかの企業に入ってガリガリコードを書いていきたいですね。

楽しみです。

追記:自社開発企業から内定を頂くまでにしたことを書きました

テックキャンプ時の僕のスケジュールを紹介している記事です

僕のテックエキスパート時代のスケジュールをまとめてみた【卒業生】

テックキャンプ(エンジニア転職)のカリキュラム内容を紹介している記事です

テックエキスパートのカリキュラム内容を語ります【実際に通った件】

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA