ソフトウェアエンジニアとして労働をする上で、最低限抑えておくべき箇所になります。
上司の言ってることやミーティングの内容のメモを取りましょう。
NotionなどでOKです。
理由: 1度聞いただけだと忘れてしまいますし、何度も聞くのは相手の時間を奪うことになるためNG
また、メモを取ってる姿勢(オンラインならタイピング音など)は相手に良い印象を与えます。(こいつちゃんとメモ取ってくれてるジャン)
難しいですが、仕事の場合は「相手ありき」になるため、「相手の立場」から考えるクセをつけれるとBetterです。
例えば、上司の視点から見て、
ソフトウェアエンジニアで正社員をやる場合もフリーランスをやる場合も、ビジネスを行う場合も大切な視点になります。
「相手が主役であって、自分はその人をサポートをする、サポートすることによって対価が得られる」という考え方が仕事やビジネスに共通する部分です。
Giveをまずすることで、自分側にTakeができます。
逆に言えば、一方的なTakerになると、周りから人は離れていきます。
先に価値を提供するからその対価を得られます。
例)
タスクなどをスピーディーにこなす(Give) -> 単価が上がる(Take)
NG)
単価上げてほしい(Take) -> ????
先にGiveがないため成立しない
特にソフトウェアエンジニアの場合は仕事でソフトウェア開発や、不明点を調べたり、他人のコードを見たりすることで、仕事時間(労働時間)に自分のスキルが向上します。
なので、仕事を「仕方なくやる」というマインドではなくて、「自分のスキルを向上させる(資本主義レベルを上げるなど)」という自分のためにやってるけど会社にも労働者として価値提供ができるという状態が理想的です。
例)
会社と自分がwin-winの関係になるように仕事をすることを意識することが重要です。
また求人に応募する際にもこの考え方は重要です。
自分のために仕事するためにそれに合う会社を探す必要があります。
お金のためだけに働くと基本的には貧乏になります。
などなど、自分が成長する仕組み(レベルアップする仕組み)を作ることが仕事を通してできるとBetterです。
例えば、働いている会社で少しセルフブラックぎみに働いていた結果、1年後に大きく技術力を伸ばせていて市場価値が上がっている、など。
基本的に中長期タームにおいての作業ゲーはある程度惰性でやりつつも、数ヶ月単位で振り返ってみると、成長できているような状態が理想的です。
1ヶ月振り返ってみて成長できてると実感できているのであれば、それは良い方向に進んでると言えます。
1週間、2週間では目に見える成長はしにくいので、長期的な視点に定期的に立ち返るクセをつけましょう。
ロングタームゲームです。
実際にリアルで市場価値の高いソフトウェアエンジニアと関わって仕事をしていると、意識していれば自分との差分が見つかることが多いです。
市場価値の高いエンジニアと自分との差分が分かれば、それを言語化して埋める作業を日々行っていくことで、自分のレベルを上げることができます。
例)
年収が高い人と低い人には明確に違いがあるので、その差分を常に意識することは年収を上げる上で非常に重要です。
プログラミングを仕事でやっていく場合には、「強い上司にのっかる力」が自分の技術力などを高めるフェーズでは(でも)すごく貢献します。
「強い上司にのっかる」というのは、強い上司からさまざまな部分を真似して継承していくことが1つの意味です。
強い上司にはあって自分にはない部分(かつ、埋めていけそうな部分)を発見してそれを日々の作業で埋めていくことが強い上司にのっかる意味です。
逆に言えば、強い上司などに乗っからずに1人でやるのは無理です。
プログラミングで仕事をする場合には大変な部分もあります。
こういったシーンで焦って精神的な負荷が高くなることは多いので、そういった時に「落ち着いてやる」というスキルが必要になります。
落ち着いて1つ1つやる(逆に言えば、落ち着いて1つ1つやるしかそもそも処理ができない)
落ち着いて毎日コンスタントに量を入れることができれば最強です。
例)
AをやるというのはA以外の全てのことができないことを意味します。
トレードオフという概念です。
どんな人も1つ1つしか処理はできないという事実を知るということが前提にあります。
いろいろ一気にやろうとすると逆に集中できなくなるだけなので、落ち着いて1つ1つのことにフォーカスして順番にやっていくことが重要なマインドセットです。
ソフトウェアエンジニアで仕事をしているとチーム内で自分の立ち位置(地位、ポジション)などがある程度は把握できます。
例)
ジュニアレベルだとしても、そのジュニアレベルの中でもこの人はできる、この人はできない、などが仕事をチームで進めているとハッキリと分かります。
仕事を通じてこのチーム内での地位を上げる必要があります。
チーム内での地位が上がる = 技術力とそれに伴った仕事遂行力が上がっている状態 -> 転職やフリーランス化などが可能になる(収入が上がる)
このような関係性が成り立つので、収入を上げたい場合でもまずはリアルのチーム内でできる限り上のポジションを目指すことが重要です。
そのためには目の前のことをちゃんと日々がんばる、上司が期待するアウトプットまたはそれを上回るアウトプットを出すことです。