求職情報
来たるべきときに備えて情報交換したい目的で書いています。
良いお話は常にお待ちしております。
(逆に言うと良いお話でない限り積極的には転職しません == スキルセットや価値基準を見ていないご連絡にはお返事できかねます)
スキルセット
できること
基本的に好きなことなので、優先度こそあれ普段から調べたり触ったりしているものが多いです。
Web フロントエンドを主に得意としています。
JavaScript / TypeScript
普通に仕事をする分にはドキュメントはほぼ引きません。
ECMA Script 仕様書を少し読みました。
ECMAScript か ECMAScript じゃないか https://quiz-maker.site/quiz/play/3xDV9T20210813225140
Compiler API や Conditional Types 、Template Literal Types も多少かじっています。
flowtype は現役世代ではありませんが、 flow -> TypeScript をやったことはあります。
もうやりたくない。
React
普通に仕事をする分にはドキュメントはほぼ引きません。
Suspense については実運用に耐えうる知見や自信を持ち合わせていませんが興味はあります。
ReactNative
Expo でちょっとしたのを作る程度ができます。
ルーティング?や UI ライブラリの最適解は分かってないです。
Redux
たまにドキュメントを引きますが普通に仕事に使えます。
デバッガビリティ等々から他の状態管理よりも Redux を好んでいます。
thunk / saga 等の middleware は可能な限り採用したくないです。
Next.js
たまにドキュメントを引きますが普通に仕事に使えます。
特に新しい機能は調べますが、古くからある機能は普通に使えます。
この書き方古いかも?みたいなのも調べます。
ので、総じて他の技術よりは調べがちな自覚があります。
ISR の実運用知見はありません。
逆にちゃんとアクセス数あるところで実運用知見あるところあるんか?
Vercel や Amplify にデプロイする場合には裏がサーバレスであるという特性に気をつけないといけないのは理解しています。
コネクションプールとかね。
Gatsby
ちょっと普通に v3 を触ったくらいなので、変なことをやるには調べる必要があります。
v2 以前はわかりません。
Gatsby Cloud が便利なことくらいは知っています。
Angular
たまにドキュメントを引きますが普通に仕事に使えます。
ngModule まわりは自信がありません。
@ngrx/store の設計について強い自信はないです。
RxJS
たまにドキュメントを引きますが普通に仕事に使えます。
好きですが、得意ではないです。
css
たまにドキュメントを引きますが普通に仕事に使えます。
デザインに合わせて実装とかは普通にできます。
transform とか radius とかで変わった形を表現するみたいなときには結構ググります。
scss 、 tailwindcss 、 styled-components を主に使います。
WebGL
three.js や少し GLSL を使用 3D 表現を実装したことがありますが、抵抗は少ないくらいで特段の強みではないです。
ビルド
webpack / rollup / vite / esbuild を普通に使えます。
webpack.config はドキュメントをたまに引きつつカスタマイズできますが、最近はあまり触っていないので筋が衰えています。
最近は vite をよく使います。
生 swc は使うタイミングがない。
ビルド環境には Next か vite 使いがち。
バックエンドのビルドもまだ esbuild かなあ……。
browserify とかの時代のコードを最近のビルド環境に乗せるのもがんばればできるんじゃないか……?
ビルド時の依存の解決や CommonJS / ES Modules まわりはある程度知っているつもりです。
eslint
わりと強めのこだわりを持って config を書いています。
prettier をあまり採用しないので、フォーマットまで多く任せられるルールを書いている。
必要に応じて plugin 書いたりはできます。
デバッグが難しいので速くはない。
ブラウザ仕様
特に詳しいわけではないですが、めぼしいところは抑えているつもりです。
アクセシビリティ
わかるはんいで気をつけようとは思っていますが、関連仕様等は詳しくないです。
eslint の jsx-a11y に怒られて覚えたというところ。
バックエンド / システムプログラミング / クラウドも普通にちゃんとできると思います。
Web バックエンド
Node.js が特に得意ですが、 Python / Ruby (Rails) / PHP / Go も実務運用経験があります。
Node.js / Rust 以外でのバックエンド開発にはあまり乗り気ではないです。
zod や OAS 互換のライブラリでの Schema を使い回せることによる恩恵が大きいと考えているため。
現存する OAS からのコード自動生成ライブラリには懐疑的な立場です。
gRPC からのコード自動生成についても同上。
バックエンドフレームワークでの HTML レンダリングには現代では否定的な立場です。
nginx 等を使用して部分的に Next.js に置き換えていくというアプローチ自体には興味があります。
サーバレス
ある程度特性を理解した上で使用できると思います。
やってはいけないこととか。
serverless framework を多少触れますが特段得意ではないです。
システムプログラミング
いわゆるユーティリティライブラリやスクリプト、バッチの実装程度はできます。
簡単なアルゴリズムを実務に応用したこともあります。
計算量をある程度意識して重めの処理を記述できます。
必要に応じてメモリ効率をある程度意識した処理を記述できます。
OS 実装やカーネルは全くわかりません。
Linux
普段使いしていて困らない程度には使えます。
ここでいう困らないとは、トラブルシューティングがある程度可能という意味です。
Mac の方が xxx ができて便利だな、とかはありますが。
普段使い用には Arch Linux が好きです。
WSL2 や自宅サーバにも Arch Linux を使用しています。
壊れても何が悪いかすぐ分かりやすいのが好きです。
Arch Wiki にハードウェアまわりのことも書いてあるのも好きです。
GNU / POSIX 等に強いこだわりはありませんが、 shell は POSIX 準拠のものが好きです。
RDB
アプリケーション用には普通に仕事に使えます。
それぞれの特性を意識した選定等はできません。
最低限アンチパターンは避けますが、極端なパフォーマンスチューニングはできません。
AWS
root アカウントから Control Tower 等を経由して監視用・開発用アカウントを複数作る程度はできます。
一般的に Web 開発でよく使われるものたちのほとんどは普通に使えると思います。
VPC を始めとしたネットワークまわりも普通に構築はできますが、ベストプラクティス等はわかりません。
コストの最適化は素人です。
Google Cloud
AWS よりはあまり触っていませんが、普通に使えると思います。
Firebase
使う場合は調べながらで、特段の強みではありません。
CI/CD
ルールの書き方はわりと調べながらですが、概念としては理解して特に困らず仕事できます。
Runner Pool をホスティングする場合の適切なキャッシュや Runner の払い出しについては知見がないです。
その他
計算機科学
アルゴリズム、論理回路、コンピュータアーキテクチャ等の基礎的なものをある程度勉強しています。
分散処理の基礎やテキスト処理は大学の頃講義で学んだ程度の知識はあります。
機械学習は業務でたびたび携わるのに必要な基本的な理論の知識程度はあります。
実務に直接利益をもたらすことは少ないですが、あまりにも的はずれなことはあまり言わないのではないでしょうか。
開発ツール系
vim で生活はできるけど窮屈に感じるくらいです。
tmux は結構設定書いています。
WebStorm を使っています。
ネットワーク系
安全に自宅サーバへの穴を開けたりするくらい。
自宅サーバはありますが一般のご家庭です。
セキュリティ系
いわゆる常識的なことはやっています。
認定セキスペの勉強をしていました。
システム設計
継続的に価値提供可能であることに価値を感じています。
戦術だけを真似することについては否定的な立場です。
開発プロセス系
プロジェクトマネジメントについては本で読んだくらいのことしかできません。
アジャイル・スクラムにある程度理解はありますが、無免許です。
積極的にスクラムの採用を薦める立場ではありません。
できるなら XP の方が好きです。
知らないこと
知らないということは今まで必要にならず上に優先するほど強い興味を持っていなかったことの現れでもあります。
やりたくないわけではないですが、特段バリューが出るわけではないと思います。
Vue.js / Nuxt.js
ほぼわからないので、やる場合はドキュメント見ながらになります。
積極的に今から学習しようとは思っていません。(否定する意図ではない)
Unity
素人です。
Azure
素人です。
iOS / Android ネイティブアプリ
素人です。
画像認識 / 音声認識
素人です。
ファームウェア
簡単なことしかできません。
自作キーボードの配列変えるとか
Arduino Reonald でコントローラ作るとか
moddable はファームウェアに入るのか……?
JS なら書けるけどここで書けることだけでファームは完結しない認識をしている
ハードウェア
簡単なことしかできません。
キットになっている自作キーボードを組み立てるとか
はんだ付けはほどほどできる
やりたくないこと
やりたくないことを書くのは良くないという観点もありますが、ミスマッチを防ぐためにあえて明記します。
仕事をする上でこれが前提となるとかなり悩みます。
jQuery 時代のコードの TS での書き直し
好きな時期もありましたが……特段良い条件でないと乗り気ではないです。
microservices
チームで運用まで責任を持てない限りやるべきではないという立場です。
kubernetes
チームで運用まで責任を持てない限りやるべきではないという立場です。
Python / Rails / Go / PHP
特に好んで勉強しておらず、強みでもないので、特段のバリューを出せないと思います。
価値基準
業種
特段に強いこだわりはありませんが、Fintech / EC / DX 系以外への興味は薄いです。
営業色の強い会社は合わないかもしれないです。
キャッシュポイントに納得できるものが良いです。
業務内容
基本的に得意分野を生かしてバリューを出せることを最優先にしたいです。
特に自分の強みが生きるわけでもない仕事には乗り気ではないです。
チームとして成果を大きくする働きかけに興味があります。
実装業務のみに強いこだわりがあるわけではないです。
条件
基本的にはフルタイム前提で探しています。
直近の副業があるため、副業でのご相談の場合は時期調整になりそうです。
出社必須の場合、勤務地は首都圏であることが必須です。
2022 年 4 月移行首都圏在住予定のため、出社必須の場合、時期調整をお願いする可能性があります。
可能な限りリモートワークが良いです。
通勤という行為により著しくパフォーマンスを損なうため。
週/月に何日という出社であれば問題ないです。
勤務日はカレンダー通り(土日休み)が良いです。
希望報酬額についてはお察しください。
明らかにミスマッチなお話を結構頂くため、恐縮ですがご考慮お願いします。
ご連絡先
Twitter の DM でご連絡頂けると幸いです。
私のスキルセットが御社のどのような課題とマッチしそうかをお聞かせ頂けると嬉しいです。
交友関係が近い場合、エンジニアの方からのご連絡ですと嬉しいです。