お仕事募集中です.
Last update: 2019-04-30
コンタクトを取る場合, Twitter またはメールでお願いします.
エンジニアとして働き始めてから, サービスマインドと技術力の双方を高いレベルで身につけたいと思っていました. 技術については元々興味を持っていたのでサービスマインドを伸ばす方を意識していましたが, 最近は逆に技術面を伸ばせていないことに課題を感じています. それを求められる環境に自分を投じてみたいです.
純粋に技術で勝負することが求められる仕事・ポジションがあり, チャレンジさせてあげてもいいよ, というお話があれば詳しくお伺いさせてください.
実績(実際に作って導入した/運用している)と, 能力(できると思うが機会や優先度の都合で実績になっていない)の両方を書きます.
1分野で突き抜けたことができない器用貧乏です. (上述の理由による.)
- 数学
- 専門は数論幾何でした.
- 好きな定理は Krull's height theorem.
- 圏論は詳しくないです. (特に計算機科学用途はさっぱり.)
- 最近数学をやってないので, 筋力的な衰えを感じています.
- Emacs Lisp
- つらいのでもう書きたくない. (Lisp は好きだけど Emacs Lisp は嫌い.)
- 自分で使うために拡張を書く.
- 学生時代に書いたものは使っているが汚すぎて公開できていない.
- GitHub でいくつか公開しているが, MELPA などに登録したことはない. (どうせ el-get で入れるし.)
- ゲーム制作
- JavaScript (ES5) + Perl + MySQL でゲームを開発・運営していた.
- ゲーム内機能の企画的観点, バトルロジック設計, フロントエンド, サーバー, DB 設計, 業務用ツール作成まで一貫してできる.
- 自分で 1 から企画を作りきったことはない. アドバイスをするか, アイデアの種を提供するか.
- インフラ管理は別チームで, 自分は殆ど関与していなかった.
- フロントエンドというのは JS のことで, ネイティブアプリのレイヤでコードを書いたことはない. (C++ の描画周りを少し読んだくらい.)
- Unity については全くわからない.
- pure C# で提供されている強化学習用 simulator に手を加えるくらいはできる.
- テスト
- 副作用を伴わない, またはテスト上問題にならないような設計に落とし込むことが多い.
- Web サービスでやるような E2E テストの知見はない.
- ちょっと CircleCI する以上のことをやったことはない.
- JavaScript
- イベントループによる, ゲームのバトルロジックや描画くらいのものは書ける.
- Perl
- 多少の読み書きはできる.
- 最後まで友達にはなれなかった.
- prefork 型でメモリを効率的に利用しつつ大量のリクエストを安定して捌く, といったことを考えるのは好きです.
- MySQL
- スロークエリのチューニングなどは殆どやったことがないと言って良い. そもそも N+1 が発生しない書き方をする.
- Rails を触っていた時代に N+1 クエリが発行されていないかを監視してちょっと対応したとか, その程度.
- Python
- Akka like な actor model library を pure python で実装したことがある. (小規模な強化学習用途.)
- Pykka は複数インスタンスや複数プロセスで利用できなかったので.
- Flask などを使って API サーバーを作れる.
- Akka like な actor model library を pure python で実装したことがある. (小規模な強化学習用途.)
- クラウドインフラ
- (要件次第ですが) 1000 request/sec 程度の機械学習の推論 API, くらいであればアーキテクチャ設計から実装まで一貫してできます.
- ほぼ GCP しか触った経験がないです. AWS は Fargate をちょっと触ったくらい.
- Terraform ちょっとだけ使えますが, ベストプラクティスからは遠いと思います.
- 複数部署やチームにまたがるインフラの提供はやったことがありません. また, クラウドインフラのみを触る人になるつもりはありません.
Rust と Kubernetes が良い投資対象だと思っています.
- Rust
- Rust の職があれば他の優先度下げてもよいくらい.
- Kubernetes
- GKE しか触ったことがない.
- 下のレイヤをちゃんと理解したい.
- GKE + private cluster + Cloud Armor + Cloud IAP で社内向けの小さい HTTPS サービスを提供するくらいならできる.
- Kubeflow などの, pure web 以外の用途が色々出てくるとよいなと思っている.
- 大規模な強化学習
- 理論的なところよりもシステム面で興味がある. (興味があるのは現職でのバイアスを含むと思う.)
- 通信部分や replay buffer なんかは rust で書いて, インフラは kubernetes で書いて, 誰しもが気軽に並列分散 RL に挑戦できるようになると面白そう.
- 機械学習と同じで, 強化学習自体を銀の弾丸とは思っていない.
- 実応用上は simulator の設計をどうするかというところも問題になるので, 啓蒙していきたい.
- 機械学習
- DL モデルを書いたことがある.
- でも確固とした理論・経験に基づいてタスク設定やモデル作成をすることはできない.
- 使ったことのあるフレームワークは tensorflow のみ.
- 機械学習フレームワークとその周辺ツールチェイン
- 大規模トラフィック
- 桁違いに大規模なトラフィックをいかにして捌くか, という課題は今までチャレンジする機会がありませんでしたが, 興味はあります.
- フロントエンド開発
- React + flumpt + TypeScript で業務用の小さいダサいツールを作ったことがある.
- 小さいカッチョイイツールを必要なときにパッと作れるくらいには触れておきたい.
できる(はずと思っている)けれど, 技術面を伸ばすためにしばらく距離を置きたいです.
- サービスマインドや事業価値を優先しすぎること.
- 技術によって貢献する, というスタンスで行きたい.
- 対人コミュニケーションや社内政治が多い業務.