はぜにっき

日記です。(毎日更新ではない)

2.5年後の25歳を見据えた基礎能力の向上を考えたい

はぜです。

20歳で就職して、社会人3年目、22歳のはぜです。
エンジニアの世界では「わかもの」と言える状態だと思っています。多分。知らんけど。

現職に入社してから思っているのは、自分の基盤となるようなものが無いなあということ。
(一応これまでやっていた)Back-Endで何か強いものを持っているわけではないし、Front-Endにも興味が出てきてはいるし、色々やりたいことはある。
持っているのは、資格試験で身につけられるレベル感の基礎知識と、短いエンジニア経験ぐらい。
興味や関心でずっと生きていけるわけではない(なくなったら終わりだとは思うけど)し、自分としてもふわふわした状態で居続けるのはつらいので、ちゃんと数年後を見据えた勉強のやり方をしていかないといけないタイミングなのかなあ と思って、この文章を書いています。

基礎能力って何

所謂CSと、数学と、英語になるのかなあ と。
コンピュータサイエンスは高校〜専門学校でやったとはいえ、基本情報+α程度のことしかやってないし大学や大学院の情報科学を専攻してきた人達とは大きく差が開いている。
あと数学、AtCoder等の競技プログラミングをやるとよくわかるんだけど、情報科学/数学の大1〜2年知識が必須で解説がされていて、その一番下のところまで行けていないので結構焦る。
というかそもそも高校の数学もII/Bまでしかやってなくて、III/Cやってない。よくこの界隈で生きていけてるなってよくおもう。
英語は今も絶賛困っていて、今月からDUO3.0を毎日読むのはやってるんだけど明らかに頭に入ってないし、ちゃんと考えてやらないといけないなあと。

Software Engineerとして

あと、上に挙げたこととは別に、ソフトウェアエンジニアとして0 -> 1程度の小規模なプロダクトは作れるようになりたいというのがあって。
最低限++ ぐらいのInfrastrcture, Back-End, Front-End, 他諸々の技術を得た状態にはなっておきたいと思っていたりする。
具体的には、各分野の流行り廃りがある程度肌で感じられるぐらい。
今はDockerとかk8sのあたりが全然わからなかったり、Front-Endはまだまだ謎が多いし、Back-Endもふんわりとしかわかってない。
Web以外となると、関数型はさっぱりだし組み込み方面とかHPCとかはもう。何それっていう用語が飛び交っている。つらい。

とまあ、後半は置いといて良いにしろ、自分が住んでいる世界の一回りぐらいは理解できるようになりたい。 というのがふわっとした目標。

2.5年

今2018年8月末で、25になるのが2020年の12月。@27ヶ月。
具体的にどうブレイクダウンしていくかはこれからだけど、とりあえず期日だけはしっかり頭に置いて動いていきたいと思う

がんばろう。


直近やること/必要になること

Front-End

Back-End

  • Ruby (on Rails), REST API
    • API Serverをサクッと作れるようになる, Performanceについて考えられること
  • Go (他Rustとか?)
    • Railsでどうにもできない速度が必要な部分や、型が必要になるものを作るときに別の選択肢を入れられること
  • Secure Programming

Infrastrcture

  • OSまわり
  • Search Enginesについて(Infraではない気がするな)
  • Container

全体的に、一つの技術に特化するというよりも、その場その場で適切な判断が取れるように正しくある程度深みのある知識を広く持てるようになりたい。
というかそうしないと自分の本当の意味での興味とか関心がわからん。


現状頭にあることはこんな感じ。
3ヶ月単位?ぐらいで色々目標決めて、物を作っていったり行動したりっていうのを続けていくのが良いのかなあと考えている。 これからは現状頭にあるWebサービス群をさっと作れるようになるための、Webサービス開発における基礎を身につけていく予定。

同時に、英語とか数学に手を出したいんだけど、時間を作るのって難しい。効率良く学んでいきたいと思う。また考える。