こんにちは。ふわふわしょうちゃんです。
今日は未経験者の方へ、これからWEBエンジニア / プログラマーとして、職業に就きたいなーと考えている人のために、自分が今いる環境も含めて、WEBエンジニアとしてのお仕事についてお伝えします。(主観なども含めて)
今のWEBエンジニアとしてのお仕事
WEBエンジニアとして、今の職場に転職してから、約2か月半ほど経過しました。
職場が変わると、求められている業務内容も当然変わります。WEBエンジニアとしての技術的なスキルマッチが高ければ、高いほど、その職場で求められる業務内容も馴染みやすく、成果にも短い期間で直結していくと思います。
今の職場の環境は、純粋にWEBエンジニアとしての力が求められる場合が多く、僕自身に何が足りないのか、また、どこを継ぎ足していけばよいかが明確にわかる環境で、日々とても勉強になりながら、業務を進めていけることは、本当にありがたいです。
ただ、それでも「スキルがあればそれでいい」という訳ではなく、人間関係(コミュニケーション)が上手くできる人でないと、中々、信頼を得ることは難しいでしょう。
得に、IT関連のお仕事は、今やコロナ禍でSlackやChatWorkのような社内コミュニケーションツールを活用しながら、業務を進めていく場合が多いので、プルリクエストでのコードレビューや、タスクをゴールに導くための道筋も自分一人で判断してできるものではありません。そこには、必ずといっていいほど、コミュニケーションが発生します。
自分の場合、今回の転職で最重要だったのは「ライフワークバランス」でした。
仕事を定時まで、しっかりとこなし、すぐさま幼稚園に子供を迎えにいき、お風呂や食事などの家事、寝かしつけまで、朝の6時前から夜の22時まではノンストップです。
そのサイクルを可能にしてくれた今の職場環境だからこそ、しっかりと成果を出すことにコミットできます。
双方にとって「WinWinの関係」だと感じています。(勝手なオレの思い込み)
別途、個人のスキルアップのために、リソース(時間)を使うゆとりは僕にはありませんが、その分業務を通して成長していければ、会社への貢献度がより深まるので、淡々と業務をこなすことを進めていきたいと感じています。
企業には経営者の価値観、考え方が必ず表にでます。
ある程度そうした視点を考慮し、企業を選ぶことができれば、悩まなくてもいい問題(パワハラとか)で悩まされる可能性は少ないと思います。
ちなみに、僕の転職の実態についてはコチラです。
キャリアを積んでもわからないことは続く
かれこれ、WEB系の仕事を始めてから、10年以上の歳月が経ちました。
ただ、僕の場合は、純粋なプログラマーという感じではなく、その時々に必要に応じて、沢山のことを経験してきたような気がします。
ですので、10年もやっていれば、未経験の方からすると「プログラミングとか余裕でしょ。」的な見方はあるかもしれませんが、簡単な処理をすることに対して、無駄に時間を過ごしてしまったり、解決に導くためのアルゴリズムに四苦八苦したりは今でも全然あります。
特に、コンピュータ系の学校で学んだ経歴もないですし、完全なる独学です。
順序よく学びがあるエンジニアの人からすると「そんなことも知らないの?」というような歯抜けも全然あります。
現在は自社サービスを展開している企業ですから、サービスについての複雑な構造も、まだ理解していないことがほとんどですし、作業に対しての影響度も見えない状態です。
そして、何よりも、「なぜ、そのような実装をされているのか」という背景や、運用フローもわからない状態なので、案件でプログラミングをしても、どうしても考慮が足らない状態になりやすく、簡単にタスクを完了することも難しく感じるのは仕方がないというか、必ず誰でも歩んでいく道だと思います。
ですので、基本的なプログラミング構文や、サーバー関連、Gitなどの開発業務をするのに欠かせないツール群の知識は当然必要として、それでも、複雑なシステムに慣れていくことは、たくさんのタスクをこなした先に徐々に見えてくるのが現実です。
稀に、「わからないこと」自体がみっともないと感じているエンジニアの人を見かけますが、そのようなエンジニアはヒューマンスキルが低い人だと僕は思います。
いくら前職で実績があったとしても、わからないことをわからないと言えることはカッコイイです。
未経験の人は、周りの人にバリバリ仕事をこなしている人を見ると、「なんでもできるんだろうな」と思ってしまいがちですが、誰でも頭を打ちながら少しずつできるようになっていくものです。
いくらキャリアを積んでも、ITの世界はわからないことが続くものだということは知っておきましょう。
どんな人が重宝される?
WEBエンジニアとして、どんな人が重宝されるのか、というのは、必ずしも共通するものではありませんが、主観でリストに挙げてみました。
- エンジニアスキルが高い人
- 泥臭く(根気よく)タスクをこなす人
- 主体性がある人
- 人を引っ張っていけるような(マネジメント気質な)人
エンジニアスキルが高い人
まず、言わずもがな、プログラミングスキルや、エンジニアスキルが高い人は、システム開発の業務では、確実に重宝されます。当然ですよね。
ただ、それとは裏腹にヒューマンスキルが極端に低い人は、敬遠されます。
それでも、スキルさえあれば、多少のわがままを受け入れてくれたり、自分の都合の良い環境を手に入れることが違う業種よりも比較的できやすいと思います。
泥臭く(根気よく)タスクをこなす人
WEBエンジニアのお仕事は、泥臭くバグの原因などを調査したり、ひたすら面倒くさい作業を続けていく場面があります。
そして、コードは一文字でも間違えているとエラーを引き起こし、ある意味では「テキトー」が許されない作業でもあります。
睡眠が足りていない場合などは、自分でも何をやっているかわからない時が多々あり、新たなバグを生み出してしまったりする可能性もあります。
よく、「何か物作りがしたい」「常に技術を学べる」という動機でエンジニアになろうとする人もいると思いますが、全然勉強にならない時期もありますし、物作りはさておき、改修作業が続いたり、資料作成や調査が続いたりといったこともあります。
それでも泥臭くタスクをこなしてくれる人は、エンジニアに向いていると思います。
要は、自分の好きなことだけやっていきたいわがままな人は向いていないということです。
主体性がある人
これは、どの業種でも当てはまりますね。もちろん、WEBエンジニアも指示待ちの人は重宝されないと思います。
プログラミングは好きだけど、要件が出てくるまで動けない人は、仕事ができないのと同じです。
要件がないなら、何か要件がないか周りの人に聞ける人、他部署の人でもシステムについて改善がないか調査すること、または、システムオーナーに提案ができる人、仕事というものは探せばいくらでも出てくるものです。
そうした視点を持てない人は、ただのプログラマーで終わってしまい、一昔に流行った言葉、「プログラマー35歳限界説」に当てはまりそうです。
僕は、どちらかというと主体性が強いタイプなので、もちろん40歳を超えた今も、限界などありません。(そもそも限界説誰が言い始めたん?)
人を引っ張っていけるような(マネジメント気質な)人
この項目も、どの業界でも重宝されるイメージがありますね。役に立たない管理職はまた別の話。
周りのチームメンバーに、同じ立場に立って業務を進めることができたり、目標に対しての牽引が出来る人は重宝されますね。
マネジメントができる人は、エンジニアとしても大事な付加価値なので、経験できるタイミングがあれば、是非、実績を積んでおく方をお勧めしたいとおもいます。
僕も今は、マネジメントが不要の環境ですが、マネジメントの経験を2社してるので、キャリアとしては、転職に有効に活かすことができたりもすると思います。
得に、「プレイングマネージャー」は重宝されます。(ある意味完全なる奴隷ですが 。→ メンバーより先に帰ることを良しとしない企業がよくあるため。残業必須か。。)
WEBエンジニアのスキルは懐中電灯に似ている
最近思うのですが、未経験者の人に伝えたいことの一つとして、WEBスキルは「懐中電灯」に似ているな、と感じています。
スキルの高い人は、暗闇の中を広く、遠くまで照らせることができる精度の高い懐中電灯を持っているのと同じです。
システムは複雑なものが多いですから、開発に参画としても、最初はわからないことだらけです。
どういう構成のシステムになっているのか、開発運用フロー、ファイルツリー、環境構築、などなど、どんどん疑問が湧いてきます。
コーディングをする際も、クラスなりメソッドなりがひしめき合っているので、真っ暗闇です。
その暗闇を少しずつ、照らして、歩いていくことで、迷路のタスクゴールを達成できます。
気が付くと、全体マップが見え、把握できているような感覚でしょうか。(トルネコの大冒険とか風来のシレンとかそんな感じ)
どんな状況でも、まず一歩から
この項目は、問題解決をする際に僕が一番気を付けていることです。「どんな状況でも、できる限り細切れにして一歩ずつ進む」ということを意識してプログラミング作業をしています。
僕はせっかちな性格なので、どうしても、階段を飛ばして進み、タスクを早く終わらせて次のタスクへ行きたい衝動にかられます。
ですが、この性格の人は、中々タスクを終わらせることができません。
考慮が足らなかったり、ソースコードが規約に沿っていなかったり、無駄なコードを書いてしまっていたり、結局、遠回りしてしまいます。
できるだけ最小単位で作業を確実に進めていく人が結局はゴールまで早く辿りつけることができます。
まさに「うさぎとかめ」の話と同じです。
まとめ
今後、ますます需要が見込まれるIT業界ですが、WEBエンジニアのお仕事について、紹介しました。
企業が変われば、業務内容が変わるように、誰もが同じような考えにならないかもしれませんが、一つの意見として、参考になればと思います。
- 就職先は経営者の人物像も含めて検討すること。なぜなら、企業価値に直結する。
- いくらキャリアを積んでもエンジニアという仕事はわからないことが多い。
- 問題解決の糸口は、どれだけ目の前のタスクを細切れにするかが重要
では、今回はこの辺で!