Web系に転職したい人の勉強記録

Web系に転職したいなーと最近たまに思うようになったので、それ向けて勉強を始めた。

まあ勉強なんて転職してからでもいいじゃない説はあるけど、損はないよね。多分。

なんとなくイメージとして、

  • 一通りの分野に常識的な知見があること
  • 時間かければそこそこのものが作れる

ってことが結構重要なのではないかという気がしているので、まずは前者の一通りの知見を身につけるべくお勉強をしていく。

とりあえずデータベース設計、API設計、インフラ設計、アルゴリズムかなぁと思ったので一冊ずつ本を選んでみた。

 

1.データベース実践入門

 業務でsqlのクエリを書いたりはするものの、正直なんとなくで書いていたのでデータベースが何なのかすらよくわかってなかったりするので下記を読了。

データベースは集合演算であるということ、効率的に集合演算を行うためには、DB設計が重要であること。が書かれている。とりあえずリレーショナルモデルの大事さはわかった。

わかったのだけど、正規化が必要って事実だけ頭に止めておけば、実務的にはフレームワークのmodels設計とかクエリの書き方とかのほうが重要度が高い気がする。別途勉強しなきゃなぁと思った。

2.Web API: The Good Parts

 APIの設計に関する本。読んでみると内容的に知ってることが多かったので流し読み。

Web API: The Good Parts

Web API: The Good Parts

 

 結局これもWebフレームワークの使い方のほうが重要度高いのではという気がした。

3.マイクロサービスアーキテクチャ

  最近良く聞くマイクロサービス。今の業務でもAPIサーバが大きくなってきて、サーバを分離したりしているのだけど、いまいち分離の方針がピンと来なかったりでもやもやしたので読んでみた。

マイクロサービスアーキテクチャ

マイクロサービスアーキテクチャ

 

 のだけど、ちょっと内容が抽象的で何を言っているのかよくわからなかった。

サーバの機能をどこで切り分けるか、サーバ間連携は同期か非同期か、等、書かれていることが重要なのはなんとなくわかるのだけど、さっぱり頭に入ってこない。

4.珠玉のプログラミング

珠玉のプログラミング 本質を見抜いたアルゴリズムとデータ構造

珠玉のプログラミング 本質を見抜いたアルゴリズムとデータ構造

 

 はるか昔、大学生の頃にアルゴリズムとデータ構造の授業を取った気はするのだけど、実際にコーディングってほとんどしたことないんですよね。いやしてたのかもしれないけど頭から抜けている。業務でスーパーアルゴリズムを活用しなきゃいけないシーンってあんまりないと思ってるんですけど、アルゴリズムに強いプログラマってかっこいいよね!って気はするので一応勉強。

 

 

1,2読了、3放置、4現在進行系。

やっぱり昨今のデータベース設計にしろAPI設計にしろrailsの影響をめちゃくちゃ受けている気がするので、次はrubyrailsの勉強を本格的にしたほうがいいのかなぁという気分。

ちょろちょろチュートリアル読んで動かしていたりするのだけどruby全くよくわからんです。