emolog

脳内メモです。

2021年を振り返る

こんにちは。emonoです。
急にやってきた寒波に、震えながら生きてます。
今年も残す所、あと少しですね。
2021年の記憶を無くす前に、一年をふり返りたいと思います。

上半期

友人とサービスを作るが挫折

友人とwebサービスの開発をして、2度挫折しました。
自分が、要件定義とバックエンドとインフラを担当して、友人にクライアント側をお願いする形で開発していました。

しかし、MVP作成に時間がかかりすぎてしまい、モチベーションが維持できず、リリース出来ないまま、2回ともプロダクト開発を中断しました。

自分で大きめの絵を書いたのにも関わらず、リリースまで至ることができず、能力不足を痛感しました。

下半期

退職

8月に、2年と1ヶ月間働いた会社を退職しました。

途中でプロダクトの全面リプレイスがあり、0 → 1でのデータベース設計、アプリケーション設計等を担当させて頂き、貴重な経験を積むことが出来ました。

バックエンドエンジニアとしての実装力と設計力の向上を目的として入社したので、入社以前と比較すると設計力を大幅に伸ばすことが出来、一定目標を達成出来たと思っています。

ですが、上半期でサービス作りで挫折したことを受け、「今後はプロダクトマネジメント能力、フロントエンド周辺技術を向上させたい。」と自分の興味範囲の変化を感じたので、退職することにしました。

前職の皆様、2年と少しの間大変お世話になりました!

転職

9月から、プロダクトデベロッパーという職種で転職しました。
特定のプロダクトにて、横串でフロントエンド、バックエンドで開発し、PdMと並走する職種です。
Golang / React / TypeScriptという、今までの職場で触ったことない言語での挑戦となりました。

転職前のニート期間に、読書してます。えらい。

Golangがなにもわからなくて、泣いてます。

少し慣れてきて、調子に乗っています。
入社から3ヶ月程経過して、技術キャッチアップも出来てきました。
来年は、もっと成果を出したいです。

個人開発

年末に、個人開発を全くしていないことに焦り、クソアプリ Advent Calendarに参加しました。

pictwi.vercel.app

新しい職場で使っている技術ベースで、土日でサクッと開発しました。OGP画像でいい感じにつぶやきできるものです。

よければ、使ってあげて下さい。

こんな感じで使えます。

zenn.dev

クソアプリ Advent Calendarの記事です。

トレンドに載って、喜んでいます。

来年の抱負

2022年30歳になります。なにか社会的な責任が重くのしかかるような気がして、怯えてます。

「まあ、先のことを、過剰に不安に思っていても仕方がないな。」と書きながら思ったので、来年は以下に取り組んでいきます。

個人開発をする

「ものづくり」がシンプルに好きだと気づいたので、個人開発は引き続きやっていきます。

来年は、最低でも3つはなにかを作りたいです。作ること自体が学びだし、楽しいのでやっていきます。

思い浮かべているもの

仕事でしっかり成果を残す

仕事で携わっているプロダクトを伸ばしたいです。
今のプロダクトは、自分とPdMの2人での開発体制なので、自分の出力が増えれば、直接的にプロダクト開発のスピードが伸びると思っています。
なので、直接的に使う技術(Golang / React / TypeScript)は引き続き学びながら、抽象度の高い技術(アーキテクチャ設計、データ設計、コンピュータサイエンス)の知見も深めて、高品質でスピード感のある開発をして、プロダクトを伸ばしたいです。

文章を書く

技術記事やブログを書く比重を、高めていきたいと思っています。
現職の他のエンジニアが文章能力が高い人ばかりで、スキル不足を感じます。トレーニングも兼ねて、ブログや技術記事も定期的に書きます。

終わりに

以上です。お世話になった方々、今年もありがとうございました。
来年もよろしくおねがいします。
楽しい1年でした。来年も楽しいといいな。

pictwi.vercel.app

Railsのgenerationコマンドの実行optionを変更する

前提

  • RailsAPIサーバーとして振る舞う。

やること

    config.generators do |g|
      g.template_engine false # view配下を作成しない
      g.assets false # scssを作成しない
      g.helper false # helperを作成しない
      g.test_framework :rspec,
        view_specs: false, # viewのテストを作成しない
        helper_specs: false, # helperのテストを作成しない
        routing_specs: false
    end  

githubActionでbundle installの際に、bundle lock --add-platformしろと言われた

f:id:ababababa0222:20210308172835p:plain

事象

  • MacでlocalのRailsを動かしていた
  • githubActionでubuntuの実行環境でCIを実行したかった
  • bundle installの際に Your bundle only supports platforms ["x86_64-darwin-19"] but your local platform is x86_64-linux と言われる
  • bundle lock --add-platform x86_64-linux してねって言われる
4s
Run ruby/setup-ruby@v1.71.0
Installing Bundler
bundle install
  /opt/hostedtoolcache/Ruby/3.0.1/x64/bin/bundle config --local path /home/runner/work/telpay/telpay/vendor/bundle
  /opt/hostedtoolcache/Ruby/3.0.1/x64/bin/bundle config --local deployment true
  Cache key: setup-ruby-bundler-cache-v3-ubuntu-18.04-ruby-3.0.1-Gemfile.lock-1bec2a8434e23d7af956d5debdeb907f064e4ce098d3207562299dd550707b10
  /opt/hostedtoolcache/Ruby/3.0.1/x64/bin/bundle install --jobs 4
  Your bundle only supports platforms ["x86_64-darwin-19"] but your local platform
  is x86_64-linux. Add the current platform to the lockfile with `bundle lock
  --add-platform x86_64-linux` and try again.
  Took   0.73 seconds
Error: The process '/opt/hostedtoolcache/Ruby/3.0.1/x64/bin/bundle' failed with exit code 16

対応

  • bundle lock --add-platform x86_64-linux して再度commit
  • 通った

brew updateで `homebrew-core / homebrew-cask is a shallow clone. `と怒られる

f:id:ababababa0222:20210312000009j:plain

Macにて、 brew update を実行しようとしたら怒られた

$ brew update
Error:
homebrew-core is a shallow clone.
homebrew-cask is a shallow clone.
To brew update, first run:
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow
These commands may take a few minutes to run due to the large size of the repositories.
This restriction has been made on GitHub's request because updating shallow
clones is an extremely expensive operation due to the tree layout and traffic of
Homebrew/homebrew-core and Homebrew/homebrew-cask. We don't do this for you
automatically to avoid repeatedly performing an expensive unshallow operation in

エラーにこうしてね、ってコマンドがあるので、それに沿って下記のコマンドを実行

git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow

結構時間がかかりました。

再度

brew upgrade して終了

SAMを用いて、ローカルでAWS lambdaの開発をする

f:id:ababababa0222:20210312000123j:plain

やったこと

  • lambdaを使うプロジェクトにて、ローカル開発をしたかったので調べた
  • SAM(サーバーレスアプリケーションモデル)でいい感じにできるっぽかったので調べた

SAMのインストール(Mac OS)

  • 前提
    • AWS CLI, Git, Dockerをインストールしてあること
  • homebrewを用いてインストール
$ brew tap aws/tap
$ brew install aws-sam-cli
# インストールしたバリデーションが返却される
$ sam --version
SAM CLI, version 1.23.0

実行

  • samを用いてローカルのlambdaを起動する
# localのlambdaを起動する
$ sam local start-api