新人SEが効率的に成長するために必要なこと
軽く挨拶
記事を閲覧していただきありがとうございます。当記事は、SIerで働く新人SEの葛藤と日々のアウトプットを行うための記事です。技術的な話もしますが今回は「新人がいち早く戦力になる」ためにどういうステップを踏めばいいのかという観点で話していこうと思います。
結局アプトプットを出せるかだと思う
- エンジニアにおけるvalueとは
いきなりですが、私の思う価値のあるエンジニアとは、「生産性の向上にに貢献できる」エンジニアだと思います。これはベテランであっても新人であっても共通にしてチームに貢献することが大切だと思います。
「生産性」という言葉が抽象的なので一つ階層を下げてみましょう。例えば以下のようなものがありますね
- プロダクトの品質を高める
- チーム内、さらには外部にナレッジの共有ができる
- プロジェクトを進めるうえでの戦力になる
あげたらきりがないですが....
よく、エンジニアは技術だ!! という言葉を巷で小耳にはさみますがそれは、プログラミング力やインフラの知識といった狭義の技術力ではなく、「チーム、さらには組織のアウトプット力の向上に貢献する技術」私はそう考えます。
では、そのアウトプット力はどうやって身に着けていけばいいのでしょうか。純粋な技術力、コンサル力、そして業務知識。それらは、ベテランエンジニアが我々新人の数十倍と、保有しています。上司が私たち新人に求めることは爆速でプログラミングできることでしょうか? クッソ複雑なインフラ設計ができることでしょうか?
- 優秀な新人SE
個人の主観になりますが、新人SEにいち早く求められているのは「早く戦力になってほしい」純粋にこれに尽きると思います。そのために我々は成長することを求められているのです。
どのような点を伸ばすべきか、今現在自分の課題も踏まえて簡潔に考えると
- ITの基礎知識をいち早く入れる(IPアドレスとかサーバーとかbuild deplyとか....)
- 自分の業務に関係する技術領域の基礎知識はとっとと入れましょう。というか勉強すればいいだけなので土日も勉強すべき
- 今かかわっているプロジェクトの全体像を把握する
- 用語シランと会議の内容わからないし仕様ミスなど致命的なミスにつながります
- 仕事を可視化する
- 今何をやっていて進めるうえでどのような課題があって~というものを割り振られた小タスク内で作業履歴を残す
- これを行うことで自分の思考の整理にもなるし、先輩や上司と連携するときにも何をやっていてどこに課題を抱えているとかが分かりやすい
- 常に言語化することで分かりやすい文章を書けるようにする
- 自分が何を理解していて何がわからないの可視化か? もやもやわかりません。
例えば新しい技術を学んだら、まったくその知識がない人も理解できるくらい説明できるか。結局物事を伝えるのには言語で伝えるしかないので技術的な質問をするときとかもいかにわかりやすく伝えられるかが、キーになっていると思います。
- 自分が何を理解していて何がわからないの可視化か? もやもやわかりません。
エンジニアとして成長するために必要なこと
技術力というとPCの前での作業に終点が当たりがちですが、仕事ということで生産性の向上に貢献するのが目的なわけです。わかりやすい文章を書くだとか、凡ミスを減らすだとか割かし基本的なことが重要な気がします。
あとは、日々の気づきを振り返ることだと思います。結局良いアウトプットを出すにはは、経験値の蓄積が物を言うと考えています。なのでいかにして、「経験を積むか」だと思っています。有効な経験値を積むために、起きた事象や気づきを言語化してナレッジとして蓄積しておくことが重要な気がします。そしてそれを仕事の中で活用して理論を肌で感じて身に着けていく。結局これの繰り返しな気がします。仕事の優先順位のつけ方とか、上司に注意されたこと、うまくいったこと、すべて言語化して蓄積する習慣をつける。 世界が変わって見える気がします。
まとめ
とはいいつつ。このような思考になったのもつい最近の話です。未経験入社の頃の配属当時は、目の前の作業で頭がいっぱいでした。でも結局、わからないことが多すぎると馬鹿みたいにワーキングメモリ食うし、結果ミスも増えるしそれで委縮するし、負の連鎖になっちゃうのは仕方ない気がします。「いち早く基礎を頭にぶち込むか」そのカギは、学んだことの言語化、そしてタスクの可視化(ある意味では言語化)にあると思います。
次はもっと技術的な話がしたい.....