こんにちは!
今年の4月に新卒入社した藤原です。
3ヶ月半に及ぶ研修が終了したため、ここで振り返りをさせていただきます。
自己紹介
大学は情報系の学部で、C言語とJava言語は経験していましたが、Javaは苦手で、なんとか単位を取れるくらいしか勉強していませんでした。 卒業研究でもArduinoの制御でC言語(厳密に言えばC/C++ベースのArduino言語)ばかり書いていました。 さらに、チーム開発経験もフレームワーク使用経験もゼロの「なんちゃてプログラミング経験者」でした。
研修について
- 私を含め新卒2名
- 研修期間は3ヶ月予定(実際は3ヶ月半)
新卒教育専属のOJTについていただき、講義形式、もしくは課題を作成してレビューをもらいリファクタを繰り返すといった形式で研修を進めます。 毎日の最後に、日報で「分かったこと」や「困ったこと」をまとめ、夕会にて情報の共有を行います。
研修の目標
- 『早期戦力化』を目指す
- チームにアサインするための最低限のスキルを身につける
研修内容
- Scala+PlayFramework研修:dowangoさんのscala教材に沿っての講義・ハンズオン形式
- Mac講座:Terminalの基本的な使用方法についての講義
- Git講座:Gitの概念・基本的な使用方法についての講義
- Web基礎研修:Webアプリケーションの全体像・基礎についての講義
- ドメイン駆動設計研修:「Domain Driven Design Quickly」を一読した後、講義
- オブジェクト指向研修:メイヤーの「オブジェクト指向入門」に沿っての講義
- データベース研修:「SQL 第2版 ゼロから始めるデータベース操作」を使ったハンズオン形式
- Webアプリ研修①:Scala研修で作成した美容室予約のコンソールアプリをもとにWebアプリを作成
- Webアプリ研修②:DDD研修を受けて美容室予約アプリを再設計・作成
躓いたこと
研修中に私がしばしば躓いていた箇所を以下にまとめてみました。
名前付け:C言語ばかり書いていたため、変数名・メソッド名の名前付けには苦しみました。(研修が終わったがまだまだ苦手...)C言語だと数値は
num
や文字列はst
といった省略型の変数名ばかりつけるので、Scalaでの長くても分かりやすい名前をつけることに違和感がありました。GIt:間違えたコマンドを使ってしまって自力で元に戻せないのが恐怖。 研修序盤はGitでの失敗の対処に多くの時間を取られていました。
HTML・CSS:もともとWebアプリ作成経験がなくフロントエンドを触ったことがなかったため、Playの講義の際に当たり前のようにHTML・CSSが出てきて、困惑しました。 もう一人の新卒がフロントエンドが得意だったおかげでサポートしてもらえましたが、PlayとHTMLといった知らない領域を2つ同時に学ぶのは非常にしんどかったです。
研修を終えて感じたこと
目標が「チームにアサインするための最低限のスキルを身につける」という抽象的なものだったので、目標を達成できたのか自分にはわからないです。短い期間で研修を行う場合、最低限この課題に関してはこれくらいの技術レベルで対処してほしいといった定量的な目安があれば目標を達成できているかどうかわかりやすかったのかなと思います。
研修期間が3ヶ月半というのはあっという間に感じましたが、短い期間のわりには沢山のスキルを身につけることができました。3ヶ月前にはScalaもテストもフロントエンドも全く書けず、GitもTerminalも全く使えなったので、それなりに成長できたのではないかと思います。
意気込み
この1年間は失敗してでも『自分ができること』を増やしていく姿勢で望もうと思います。
そのためにはまず苦手を減らしていくこと、一番苦手な『誰が読んでも読みやすいコードを書くこと』から克服しようと思います。
1日でも早く自信を持ってチーム内で発言できるようになるために、頑張る所存でございます。
よろしくお願いします!!!!!