何度目かぶりのおひさしぶりです投稿
お久しぶりです(n+1回目)
転職が無事に終わって以来、引越し→転職→結婚のドタバタがようやっと落ち着いて、趣味の方のプログラミングができるようになりそうだったので、また書き始めようかと思います。
書き始めようかと思いますと言いましたが、そう言えばあれやるこれやると言って一回も続いた試しがない、、、
それはさておき、現在私は教育業界のシステム開発部でインフラエンジニアをやっており、KubernetesやらなんやらをYAMLでなんやかんやしているのですが、そう言えばWEBアプリとかちゃんと作ったことないなと思ったので作ってみることにしました。
とりあえずモノリシックな形から初めて最終的にはマイクロサービスみたいな形でKubernetes上に展開して、デバック環境とかももりもりで作れればと思ってる。
仕事ではAzureDevOpsでタスク管理とリポジトリの管理してるけど、個人開発だし担当領域ごとにリポジトリ分けるのもめんどくさいので、GitHubのissueとか使ってやってみる。(同じことできるかはわからん。)
とりあえずこんな感じでラベルとマイルストーンつけて管理してみる。
あとはこんな感じで wikiに定義とかを書いてそれっぽくしてる。(というか自分が忘れないように書いている)
機能一覧、テーブル定義、URL一覧、GraphQLのスキーマあたりはwikiに残そうかな。実際の開発だと合意に持っていくために構成図とか書くんだろうけど、一人で開発する時ってみんなどれくらいちゃんと作ってるんだろ。ネットワーク構成図とかないと途中でわからんようになるかな、、、
そもそもちゃんとシステムを一から作るのが初めてなので、こういう設計とかもあってるかどうかは実はあんまりわかってない。どっかのタイミングでちゃんと勉強した方がいいんだろうなとは思っているけど、人間必要に迫られないと勉強しないものなんだなあ(遠い目)
ちなみにBFFを用意して、フロントとBFFの間はGraphQL、BFFとバックエンドの間はgRPCで実装するつもり。GraphQLもgRPCも触ったことないけどスキーマをきちんと作ればコードはほぼ自動で作れそうだったので、なんとかなると思っている。
言語はフロントはイヤイヤTS使うとして、バックエンドはGoで開発する予定。
簡単でとっつきやすいらしいということと、CNCFのあれそれがだいたいGoで書かれているので、SREとしてやっていくならGoは読めないとだめって誰かがブログで言っていたのでその練習で使ってみることにした。
認証周りとか、フロントのレイアウトとかどうやって実装してるのか全然理解できてない上に言語仕様も頭に入っていないので、いつになったら完成するかわからんが、少しずつ進めていく。(マイルストーンで期日つけて追い込んでいるので、多分開発は進む。ブログは知らん。)
ちなみに技術的なことはZennの記事にして、調べたことはスクラップに殴り書く予定。こっちのブログは、開発で詰まったりした時とか言語のお勉強の裏話とかを書くはず。
次の更新は書くこと決まっているので早いと思います。
ではまた
転職先が決まりました
隔週更新とはなんだったのか、かなり久しぶりの投稿です。
タイトルの通りです。
7月末から転職活動を始めて仕事のドタバタも重なりほとんどブログでは話せていませんでしたが、無事に転職が決まりました。
転職活動中は、やっぱり実務未経験だとSESみたいな人材サービスの企業に勤めるしか道はないのかと弱気になっていましたが、何とかなってとりあえず一安心です。
転職エージェントも利用していましたが、結局paiza経由で採用になったのでエージェントの人たち(リ〇ルート以外)には悪いなと思っています、僕みたいにカタログスペックの無い人間からするとスキルチェックで書類選考を通過できるシステムは心強い
次の職場ですが、学習塾を運営する企業のアプリ開発・システム開発の業務を行う部署に配属されることになりました。
ただ、立ち上げたばかりの部署だそうで人手が足りておらず、フロントからインフラ関係まで幅広くかかわることになりそうで今から震えています。
実務経験が必要なポジションだったのですが、塾の経営にかかわっていたことや独学でいろいろなことをやっていたことを(Kubernetesや分散処理に関するあれそれを特に)評価していただいたようで・・・。
そういえば最近twitterで、実務未経験の採用面接での発言の内容が似たようなやつばっかりでキレた(要約)という旨のツイートを見たので、面接官に高評価!みたいなネットコラムとか記事を読まずに転職活動しててよかったなとしみじみ思いました。
言語とかも自分で気になったものを深堀していたので、もしネットの情報を参考にしてRoRとかPHPとか触ってたら結果は違ったのかもしれないと思うと、人と同じことできない性格でよかったなと思いました。
プライベートでも大きな転機を迎えまして、来月から大阪に住むことが決まったので今から暴漢・窃盗への対処法を勉強しています。
都会コワイ
今後は(今度こそ)更新頻度を増やして、技術的な内容も記事にできればと思いますので、よろしくお願いします。
勉強したいことが溢れてきたのでまとめる。
キリンレモンを飲んでいるときにドデカ雷が鳴ったので、びっくりして全て鼻から吐き出しました。1号です。
さて、タイトルについてですがプログラミングというか情報系の勉強を進めている中で、知らない知識や技術に出会うことが多々あり、気になる!触ってみたい!と基礎知識もないままにあれこれ手を出した結果、本は積み上がり、ブックマークは増え続け、収集が付かなくなってきました。
なので、一度学習するロードマップ?順序のようなものを一旦まとめて、見ず知らずの誰かに発信することで、移り気な未来の私を自制しようと思った次第です。
基礎知識補強:データ指向アプリケーションデザイン
↓
圏論の勉強(Haskellの勉強:すごいH本):YouTubeの講義の動画
↓
Elmの勉強:プログラミングElm
↓
Akkaの勉強:Akka実践バイブル
転職を考えているので、ここまでできたら一旦制作物を作ろうと思います。
1、AkkaStreamとKafkaを使ったAPI
2、簡易版Apache avro
3、チャットアプリ
のようなものが作れればとぼんやり考えています。
また、競技プログラミングのスコア次第で面談を行えるサイトもあるようなのでAtCoderやpaizaのテストやコンテストは都度やっていこうと思います。(言語は今はScalaで解いていますが、最終的にC++かRustになると思います。そうなるといよいよ頭と時間が足りなくなる・・・。)
他にもデータサイエンス関連の本や機械学習の本、いつ使うのかわからないk8s、Spark、Kafkaの本など合わせて10冊は積んであるので諸々落ち着いたらちょっとずつ読み進めたいと思います。
プログラミングに直接関係は無いですが、英語と統計の知識はいずれ必要になると思うので早めに勉強を始めたいです。というか今の職場でも英語は必要なので、自ずとできるようになることを祈ります。(ほぼ日本語しか話していませんが、一応職場内の言語英語なので)
できるだけ寄り道をせずに進めればいいのですが、新しいことをはじめるたびに芋づる式に知らないことが出てくるので、転職活動をはじめることができるのはいつになるやら・・・。
次くらいには勉強した技術的なことを記事にしたいと思います。
はじめましての記事
はじめまして、去年の春頃に仕事でGASを触ってからプログラミングにのめり込んだ者です。
初めは、企業と研究者のマッチングサービスや、失敗の体験共有SNS、役になりきってユーザーと交流するチャットサービスなど 色々作ってやるぞ!
と、息巻いていたのですが、芋づる式に出てくる知らない単語や知識を追っていくうちにどんどんゴールから遠ざかり 今は分散システムやデータベースの内部実装について学習を進めています。
言語はScala、Haskell、Rust、Elmあたりを少しずつ触っています。基本的な文法は理解しているのですが、メモリの扱いや、圏論、モナドなど関数型言語特有の考え方などはまだまだ勉強が足りないなと感じています。
日本語の情報が少ないので、英語を。それから、機械学習について学ぶために数学を勉強しないといけないので、圧倒的に時間が足りない...。
という状態なのですが、その忙しさを楽しんでいるところもあります。 ただ、別業種の仕事をしながらだと本当に時間が足りない、ということで現在転職をする準備を進めています。
予定ではすでに成果物とポートフォリオが完成しているはずだったのですが、冒頭にも買いた通り脱線につぐ脱線で勉強が思ったように進まずまだ何も作れていない状態です...。
そういった経緯もあり、ブログをノート代わりにして自分の頭の中を整理できればと思い始めてみました。 (あわよくば横の繋がりができればという下心もあります。)
プログラミングの話だけでは無く、日常のあれこれも書く予定です。 更新頻度はそれほど高くないと思いますが、よろしくお願いいたします。
1号