ジュニアWeb Developer として働き始めて5ヶ月が経過しました。
働き始め当初は、ついていくだけで精一杯でしたが、少しづつ色々なことを考える余裕が出てきたのでまとめてみます。
ずばり、「ジュニアポジションから一皮むけるには」
就職するまでは、まずウェブデベロッパーになることが目標でしたが、
働き始めると、まだまだ越えていかないといけない壁が多いことを痛感します。
その壁を1つ1つ挙げていくキリがありませんが、ざっくり言うと大きく2つに分けられると思います。
技術的なスキルと技術的スキル以外の部分
まずは技術スキルの向上から
最新フレームワークの知識よりWeb、プログラミングの基礎知識
当然 Web Developerとして働く上でスキル向上は必要不可欠です。
ただ最近気づいたのは、新しいフレームワークをしっかり知っていることよりも、
そもそものWebやプログラミングの基礎を理解していることが重要だということです。
今の会社ではフロントエンドとバックエンドの区切りがなく、デベッロッパーチームの9人がみんなフルスタックとして働いています。
ということで、Ruby on Rails をやったりVueをやったりCSSをやったり、たまにNginxを再起動したり。
多種多様なタスクがふられます。
このような業務を行う上で、一番必要なのは、フレームワークの知識より、サーバーからUI部分まで一連の流れをすぐに理解できる力だと感じます。
フレームワークの知識は、日々の業務で知らず知らずのうちについていきます。
というのも、RailsやVueは、
- 他の人が今までに書いた綺麗なコードがすでに存在するからそれを参考に出来る
- コードレビューで「もっとこういういい書き方がある」と教えてもらえる
そんな感じで、日々の業務に熱心に取り組んでいれば勝手に知識がついてきます。
それに対して、
- 最適なデータベースの設計は
- デザインパターンとは
これらの、プログラミングの根本部分の知識は、改めて本を読んだりしないとなかなか身につきません。
そして日々一緒に仕事をしているシニアの人と感じる差は、こういった部分だと感じます。
とここまで、あたかも自分のポジションをしっかり分析した意見のようになっていますが、
以前マネージャーと話した時にアドバイスされたことの要約です。
就活中は、どうしてもポートフォリオを作ったりしたくて、なかなか基礎をしっかりという時間が取れなかったので、現在は基礎をしっかり勉強しています。
ちょうど会社では、$1,000までトレーニング費用が貰えるので、現在はNYUのデータベースの授業を受けています。
完璧にNYUブランドで選びましたが、クオリティは全く高くないので不満たらたらです。
〜ここまでが技術的なとこ。
ここからが技術スキルアップ以外で、ジュニアポジションから一皮むける上で必要な事です。
プロダクトを知り尽くす
これに限ります。
例えば、他の部署(マーケティングチームとかロジスティクスチーム)から、
「こんなレポートがあったら助かる」とか、
そういう話が出た時に、すぐにプロダクトに落とし込むことが出来る力。
こういう力が高い人は、社内でもすごく評価されている印象です。
当然会社で働く以上、コードだけ書いていればいいということはありません。
その会社の、Webのスペシャリストとして、色んなアイデアを形にする力が必要です。
ただこのような力を身につけるには、色々な壁があります。
まずは、英語力。
他部署とのコミュニケーションは当然として、自分のチームにうまいこと報告できる英語力が必要です。
ただ、英語力は、たった数ヶ月で飛躍的に向上したりはしません。
ということで、すぐに取り掛かれることの1つとして、プロダクトを隅々まで理解することが挙げられます。
何から何までプロダクトのことを理解していれば、英語力はあまり問題になりません。(多分)
特に僕のような、他のデベロッパーと比べて、スキルが低い場合は、
とにかくプロダクトのことを隅々まで理解して、アクティブに仕事することが、次のステップに進む上で必要不可欠かなと感じます。
まとめ
ということで、自分なりに感じた「ジュニア脱皮作戦」をまとめてみました。
コメント