Persistence

技術メモなど

愚直であれ

技術エントリーではなく、気持ちの整理的なエントリーです。

技術力のなさを痛感

最近、転職活動をしていたり、技術力の高い人達と共同作業をさせてもらう機会があって、自分の技術力・知識量が本当に低いなということを痛感してます。特に転職活動については、自分が望むようなWeb系ベンチャー企業に対しては完全に力不足であることが分かりました。

自己分析

そんな凹むことが多いこの頃ですが、新しい気づきもあります。まず技術力については現状は現状として受け止めるしか無いとして、何が問題なのか自己分析をしてみましたところ、成長のスパイラルができていない事が分かりました。

成長のスパイラルは、以下の①〜④で回ると考えています。

①物事を始める ②壁にぶつかる ③壁を乗り越え達成感を得る ④次のステップへのモチベーションが湧く

しかし、自分の場合は②の部分で諦めてしまうことが多く成長のサイクルが回っていませんでした。②で止まった後どうなるかというと、以下のようなループになります。

①物事を始める ②壁にぶつかる ③モチベーションが下がる ④今やっていることより他の事のほうが面白そうに見える

②で止まってしまう人のパターンとして、簡単に言うと「根性なし」な性格なんですが、もっと深く行動心理について調べると、「心理的なストレスに弱い」ということらしいです。それに壁を登ることを楽しくできないようであれば、エンジニアには向いてないんじゃないかなとも思いましたが、それを決めるのはまだ早いです。

ストレスに弱いのは生まれ持った性格と育った環境によるものなので仕方ないですが、成功体験をたくさん積んで自分に自信が持てればある程度は変えられるのではないかと思います。そのためには、一度決めたことを愚直にやり続ける事が大事だと考えています。「継続は力なり」っていう言葉は知っているし重要性も理解していると思っていたけど、全然わかっていなかったことに気づけました。

それから技術的な自分のポジションもわかったことは多きな成果です。自分はやっとホイミとかギラとか覚えたくらいのレベルです。何故それがわかったかというと、相対的に自分よりがレベル高い人たちが自分の周りにたくさんいるから。だからそういうところに飛び込んでみるっていのもやって良かったと思います。

あと課題として見えてきたことは、アルゴリズム力(つまり論理的に思考を組み立てる能力)が無いということ。自分はサービス指向が強いのでWeb系のフレームワークとかライブラリばかりを使っていたけど、それって用意された道具を使っているだけで、プログラマとしての基礎体力はアルゴリズム力何じゃないかと思った。これがないとコピペはできるけど1から作ることができない人になります。

まとめ

  • やると決めたことを脇目もふらず愚直にやりきる
  • 困難に立ち向かうことを楽しむようにする
  • アルゴリズムの勉強をする