View on GitHub

resume

danimal141's resume

danimal141’s resume

目次

プロフィール

アカウント

職務経歴詳細

株式会社Speee (2020年9月~)

今はリードエンジニアとして新規事業立ち上げに携わっています。

やっていることは以下のような感じで、状況に応じて比重を調整しています。

開発ではRails, React/TypeScript, GraphQL, Auth0あたりを最近よく触っています。興味があることに記載しているようなテーマを追っています。

新規事業

チーム規模
期間
概要

TODO: アップデート


株式会社ニューロープ (2014年2月〜2020年9月)

創業メンバー(執行役員)として参画し、自社プロダクト開発を担当しました。

創業から3,4年ほどはCEO、CTO、私の3名体制で少数チームでPMFを目指す形を取っていたため、バックエンド、フロントエンド、インフラ (AWS)、ネイティブ (iOS)の全ての開発に携わってきました。

追加の資金調達が完了した後は事業上、自社AIの開発がもっとも重要になったため、CTOがAI開発、私がWebのプロダクト開発とエンジニア採用・育成に主に責任を持つように分担しました。

プロダクト開発に関しては引き続きCTOにコードレビューに入ってもらいフィードバックを受けながら、なるべく私やチームメンバーのみで技術的な意思決定ができる体制にしていきました。またエンジニア採用に関しては海外エンジニアの採用も検討していたため、開発チームの公用語を英語にしつつ、スカウトの作成、面談設計、採用後のオンボーディング設計、1on1導入なども私主導で行いました。英語力の強化に関してはこちらもご一読いただけると幸いです。

メディア、画像認識API、toB向けSaaS、AIレコメンドエンジンなど、様々な開発に関わってきたのですが、網羅すると長くなり過ぎてしまうため自分にとって特に重要だった開発のみ抜粋し、以下に記載します。

ファッションメディアサービス

チーム規模
期間
技術
概要

メインのWebアプリケーションです。

創業当時、私とCTOの2名体制で開発のすべてを担っていたのですが、私はそれまでフロントエンド以外の実務経験がありませんでした。そのため私はフロントエンドまわりのベースを整えることで信頼貯金を作りながら、それを切り崩してCTOが作っていくバックエンドのコードやインフラの設定をキャッチアップしていくようなスタイルで開発がスタートしました。 そこから半年ほどでバックエンドやインフラまわりもある程度は自走できるようになってきたため、それ以降はシンプルにスクラム開発で2名で優先度順に並んだタスクを上から交互に取っていくようなスタイルに落ち着きました。

「画像を定期的にクローリングする機能」「画像にメタデータを付与するSPA管理画面」「商品レコメンド機能」「ペイメント機能」など、プロダクトに必要な機能開発を一通り担当しました。一部を切り出して派生プロダクトを作ることも多かったので設計から実装、リリースすべてに責任を持つ機会にも恵まれました。最終的にはピボットしたのですが当初はtoCサービスとして育てていく想定だったため、iOSアプリ開発もその中で2年ほど経験しています。

運用期間が長いプロダクトだったため、中長期的に1つのプロダクトを育てるということを経験させてもらえたのが大きな学びでした。Railsのメジャーアップデート(4->5, 5->6)やSolrのメジャーアップデート(4->7)、レガシーになったフロントエンドのモダン化 (React.js/TypeScriptの導入)など、技術的負債の解消とも多々向き合いました。

ファッションデータ分析基盤

チーム規模
期間
技術
概要

SNS、メディア上のファッションデータを定期的にクローリングし、自社の画像認識AIに解析させ、その結果を蓄積して分析できるようにしたものです。

データ収集基盤は以下のようなものになります。

  1. ターゲットとなるSNSやメディア上のファッションデータをクローリングし、RawデータをS3に保存する
  2. Rawデータの画像を自社の画像認識APIで認識し、認識結果を別途S3に保存する
  3. AWS Glueを使って溜まった上記のS3データをJOIN、加工、変換してS3にParquetで保存する
  4. 結果をAthenaで解析、QuickSightで閲覧できるようにする

1に関してはコマンドラインをGoで実装し、定期的にコマンドを実行するような仕組みにしています。またTwitterのようにAPIが提供されていないメディアも対象だったため、そういったメディア向けのスクレイピングAPIを別途Railsで実装し、それをGoのコマンドライン経由で呼べるようにしました。

3に関してはAWS Glueのクローラを定期的にキックするコマンドラインをKotlinで実装しました。

新しい技術を小さな所から積極的に導入するカルチャーが強いチームだったので、Kotlinのキャッチアップや当時リリースされたばかりのAWS Glueの謎挙動に非常に悩まされたことが記憶に強く残っております笑。全体の開発に関わっていましたが、Goで開発することを希望するメンバーが多かったため、私はRailsのAPIとKotlinのコマンドライン実装の比重が比較的大きかったです。

データ活用社会で各社の持つアセットが競争優位性になる昨今、データ収集や分析の基盤開発に包括的に携われて貴重な経験になりました。


株式会社ポケラボ (2013年9月〜2014年1月)

自社スマホゲーム

チーム規模
期間
技術
概要

自社タイトルのチームにフロントエンドエンジニアとして参画しました。既存のガワネイティブ部分のJavaScriptのパフォーマンスチューニングや新規イベント関連の実装を主に担当していました。


モンスター・ラボ (2012年4月〜2013年8月)

受託案件でのフロントエンド開発や自社のコーポレートサイト改修、後輩エンジニアの育成、新卒エンジニア採用の面接などの業務に携わりました。

自分にとって特に重要だった開発のみ抜粋し、以下に記載します。

[受託開発] スマートフォン向けコミュニティアプリ

チーム規模
期間
技術
概要

クライアント先に常駐し、クライアント側で編成された新規事業立ち上げチームのフロントエンドエンジニアとして参画しました。担当はマークアップ全般とフロントエンドのUXをJavaScript / jQueryを用いて実現する範囲です。

どちらかというとウォーターフォールに近い開発スタイルだったため、リリースまでに約50ページに渡るページのコーディングをする必要がありました。そのためベトナムのオフショアチーム (フロントエンドエンジニア数名 + ブリッジエンジニア1名)の力を借りて、日本語が話せるブリッジエンジニアの方経由で仕様の認識を皆で揃えつつ、各エンジニアメンバーへの技術的なフィードバックはSkypeで英語でコミュニケーションを取りながら行いました。

当時、私自身も新卒1年目でフロントエンドエンジニアとしてキャリアをスタートしたばかりだったのですが、必死で技術をキャッチアップしつつ、ベースを作って他のメンバーに引き継ぐような、ミニテックリードのような働き方を経験させていただきました。

プロダクトに関しても多少のピボットがありスケジュールを引き直すような事態はあったのですが、予定通りのリリースを達成しました。クライアント側でリリース前のクオリティチェックをしていただいたので、クオリティ面の水準も満たしつつリリースができました。

私について

キャリアの大半をスタートアップや新規事業立ち上げのような環境で過ごしているので、0->1開発や総合格闘技的な戦い方で成果を出すのが得意なタイプです。開発を担当するのであればなるべくユーザストーリ単位でフルスタックに責任を持ちたいです。逆に人材が比較的豊富で専門性を強く求められるような環境だとあまりバリューが出せないかもしれません (e.g. バックエンドチームに所属してスペシャリティを発揮するような働き方)。

技術のみを追求するというよりは人や事業にも興味があるタイプなので、事業サイドのメンバーと議論したり、チームメンバーをサポートしたり、カジュアル面談やミートアップ等で社外のエンジニアの方とお話するのが結構好きだったりします。最高のチームで文化祭前夜が永続しているようなプロダクト開発がしたいです。

技術スタックとしてはRailsとReact.js(TypeScript)が一番使い慣れていて、次にGoという感じです。スクラムなどチーム開発も特に問題ないと思います。iOS開発をやっていたのはかなり前なので期待しないでください、必要があればゼロべースで勉強いたします。後はブランクはありますが、開発のコンテキストであれば英語環境下でも問題なく働けると思います。OSSへのコントリビュートも抵抗なくできます。むしろやらせてください。

苦手だと自覚しているのは「人に頼ること」です。スタートアップで「自分がなんとかせねば」という使命感を強く持ったまま働きすぎたせいで、何でも自分でなんとかしようとしがちです。周りを信頼していないというわけではありません。今は「これは自分がやるべきか?」「これは一番レバレッジの効く働き方か?」と常に自分に問いながら仕事するようにしています。

というわけで事業フェーズや組織に応じて「自分が何をすべきか」を考え、一番レバレッジの効く戦い方で成果を出せるよう尽力いたしますのでお手柔らかによろしくお願いいたします。

スキル

プログラミング言語 / フレームワーク

実務で問題なく使える

実務経験はあるがあまり自信がない

ミドルウェア / インフラ

実務で問題なく使える

実務経験はあるがあまり自信がない

その他

興味があること

まず「レガシーな業界をテクノロジーの力で革新する」ような事業に携わりたいと思っています。明らかに不便なのに進化が止まり放置されているような社会課題と向き合っていきたいです。

そして今は「エンジニアの成果を事業や経営の成長にしっかりと結びつけること」に一番興味があります。もう少し具体的に表現すると「事業成果が最大になるように開発組織やアーキテクチャをデザインすること」や「事業の成長や世の中の変化に合わせて最適な形にリデザインし続けること」をやっていきたいです。

基本的に私自身は「エンジニアの責任とは技術を使って事業上の課題を解決することである」と考えています。こちらで同様のテーマで登壇しているので、もしよろしければそちらも見ていただけると幸いです。 しかし一方で約10年ほどエンジニアとして様々な開発に携わっていく中で、やはり純粋にモノづくり自体が楽しいという気持ちもあり、それは今も変わらないです。そして同様の想いを持つエンジニアの方も少なくないと思います。偉そうなことは言えないですがそんな彼ら彼女らの味方であり続けたいし、そういった多様性を認めつつ最大の事業成果を出せるようになりたいです。

そういった想いから次の私の大きなチャレンジとして、以下のような成長サイクルを回せるようなエンジニアになりたいと考えています。

すべてを自分一人の力で達成することは困難かもしれないですが、上記のような状態を作ることができれば文化祭前夜が永続するようなプロダクト開発ができると思うんですよね。手段は問わず、まわりの力を借りながら「エンジニアの成果が事業や経営の成長にしっかりと結びついた状態」を作ること、そして「エンジニアがやりがいを持って、意味のある技術課題と向き合えている状態」を作ること、それが今の私のメインテーマです。

ちなみにキャリアとしてPdMのような役割を担っていくイメージはあまり持っていないです。これまでの自分の強みを活かせるイメージがわかないので。PLに整合するアウトカムを定義する部分 (WHY / WHATを決める部分)はPdMに任せ、私は価値のあるプロダクト(Howを決める部分)とアウトカムを高速にデリバリーし続けられるチームやアーキテクチャ (BS寄りの成果)を作る責任を主に担っていきたいです。

興味がないこと

今はIndividual Contributor (IC)のような働き方にはあまり興味を持っていないです。事業サイドも巻き込んだ大きい課題をテーマにしたいです。ただし今後、ICや技術全振りの働き方に再び興味を持つ可能性もあるとは思います。

関わりたい事業の軸としては興味があることの項で記述したような想いがあるので、エンタメやゲームなどをメインに扱われているような環境は合わないかもしれません。

好き

苦手

資格

資料

自分のアウトプット関連