フルスタックデベロッパー / テックリード。フロントエンド・バックエンド・インフラを横断し、要件定義から運用まで一貫して担当する。
- 開発歴 15年目(2012年3月〜) / 個人事業歴 7年目(2019年10月〜)
- 言語 Go, TypeScript, Elixir, Rust
- 設計 マイクロサービス / DDD / クリーンアーキテクチャ
- インフラ AWS, GCP, Terraform, Kubernetes
| 項目 | 内容 |
|---|---|
| 所在 | 埼玉県所沢市 |
| 年齢 | 34歳(1992年生まれ) |
| GitHub | @makoto-developer |
| X (Twitter) | @makotodeveloper |
| ブログ | blog.makoto-developer.net |
高校卒業後、データベース専門の会社でインフラエンジニアとしてサーバ構築の技術を身につける。プログラミングに興味を持ちSES企業へ転職し、複数のプロジェクトでWebアプリ開発の経験を積む。その後大手IT企業を経て、2019年10月にフリーランスとして独立。現在は都内のベンチャー企業を中心に開発している。
| 言語 | 経験 |
|---|---|
| Go v1.18〜v1.26 | Gin, gRPC, GORM, Cobra。goroutineによる並列・並行処理の設計、パフォーマンスチューニング |
| TypeScript 〜v5.9 | Node.js(〜v24), Next.js(〜v16), Vue.js(v2), Redux, TanStack, React Native。型プログラミング、プロジェクト構成とデータストアの設計 |
| Elixir / Erlang v1.10〜v1.19 | Phoenix, LiveView, Elixir Desktop。動画配信のルーティングサーバなどリアルタイム性が求められるネットワークプログラミング、TURN/STUNサーバ構築。高可用性が要るシステムで採用することが多い |
| Rust v1.24〜v1.93 | Actix Web, Tauri(v2)。GUIアプリ、Webアプリ。性能が要る部分をRustで書き、ルーティングはElixirに任せる構成で使うことが多い |
| 分類 | 技術 |
|---|---|
| AWS | Aurora, DynamoDB, Lambda, EKS/ECS, API Gateway, AppSync, Cognito, S3, SQS/SES, ElastiCache, WAF, VPC など |
| GCP | Spanner, Cloud SQL, BigQuery, GKE, Cloud Run/Functions, Pub/Sub, Firestore, Firebase, Dataflow, Cloud Armor など |
| IaC・コンテナ | Terraform, Kubernetes, Helm, Argo CD, Docker |
| データストア | PostgreSQL, MySQL, Oracle, Snowflake, Redis, MongoDB, Elasticsearch |
| SaaS・PaaS | Vercel, Netlify, Cloudflare, CircleCI, Auth0, Shopify, Salesforce, kintone, さくらVPS |
| その他 | Kafka, RabbitMQ, Nginx, Zabbix |
設計・導入からパフォーマンスチューニングまで担当。AWS / GCP ともに Terraform で構築している。
サーバ構築(ラックサーバ、RAID、クラスタ)、ネットワーク敷設・設計(Yamaha RTX/SWXシリーズ)、DHCP/DNS/NFS/SSL、可用性設計、仮想化(VMware)。
Figma, shadcn/ui, Material-UI, Bootstrap, BEM, レスポンシブ対応。見本があればその通りに実装し、なければ設計から提案する。
Claude Code, Codex, GitHub Copilot, JetBrains AI Assistant, Google Antigravity
- 過去5年分のみ掲載(2012年より22の開発プロジェクトに参加)
- 終了日の新しい順。期間が重複しているものは副業などで並行して稼働
商業施設やオフィスビルなどの公開されている市場データを蓄積、分析するアプリ。
フルスタック / 業務委託・フルリモート / 開発チーム5人(全体200人)
- 国土交通省が公開するオープンデータを使い、ビルや土地の市場価値を履歴として表示する機能を開発
- DWH(Snowflake / dbt / Embulk)によるデータ基盤の設計と構築
- 地理データを扱うAPIとDBの設計
- 複数プロダクトを横断してリファクタリング。重複ライブラリを共通化し、地理データ情報マートを新規構築してデータ取得経路を統一
- 地図検索、PDF出力などのバグ修正とレスポンス改善
- AIのみでレビューまで完結させる開発と、複数プロダクトを同時に修正するための仕組み作り
| 分類 | 技術 |
|---|---|
| フロントエンド | Next.js(v15), TypeScript(v5), TanStack, shadcn/ui, GraphQL |
| バックエンド | Rust, Ruby(Rails), Python, Golang(v1.25), DDD, Snowflake, Google Maps API, PostgreSQL, MySQL, Highcharts, AWS(Aurora, EKS, ECS, Lambda など), GitHub |
| AI | Claude Code, Devin |
Shopifyアプリの機能開発・運用と、Shopifyに依存しないスピンオフアプリの新規開発。2024年3月に解散した開発チームに復帰。
テックリード / フルスタック / 業務委託・フルリモート / 開発チーム10人(全体15人)
- 既存Shopifyアプリの機能開発と運用。問い合わせ対応、トラブルシューティング、スクラムイベントの改善
- スピンオフアプリをゼロから設計・開発・リリース。多様なプラットフォームの注文データを扱うため DDD / クリーンアーキテクチャ / マイクロサービスを導入
- ProtobufでAPIを統一。他社のインターフェース変更にも追随できるよう、データ構造を抽象化して依存関係を分離
- AI(Claude Code / Copilot)を使った開発の仕組み作り。JetBrains MPSでDSLを読み込ませてClaudeのコンテキストを90%削減し、Claude自身用のKanbanで忘却を防ぐなど、AgentやGuidelineを設計
| 分類 | 技術 |
|---|---|
| フロントエンド | Next.js(v15), TypeScript(v5), TanStack, shadcn/ui, grpc-transport |
| バックエンド | Golang(v1.25), gRPC, マイクロサービスアーキテクチャ, クリーンアーキテクチャ, DDD, AWS(Aurora, EKS, ECS, Cognito, Lambda など), Terraform/Helm/Argo, GitLab |
| AI | Claude Code |
| その他 | Python, Pandas, Jupyter Notebook, ペアプロ, スクラム(1週スプリント) |
2, 4と同じ会社、別開発チーム
クレジットカードや電子決済などの決済システムの機能開発、運用保守。
フルスタック / 業務委託・フルリモート / 開発チーム10人(全体200人)
- Cloud SQL から Spanner へ移行設計と実装。IDをUUIDv6で生成して逆順で発行し、水平分散させるなどSpannerの特性を考慮して設計
- goroutineによる並行処理で応答速度を改善。MQサービスを使い、リクエストが急増しても耐えられる可用性を設計
- 決済機能の開発を通じて、与信システムや3Dセキュアなどのドメイン知識を習得
- 1〜3年目の若手10名ほどのチームで、技術的なアドバイスとスクラムの進め方を指導。メンバーに合うやり方を提案し、生産性とドメイン知識を高めた
| 分類 | 技術 |
|---|---|
| バックエンド | Golang(v1.22), gRPC, GraphQL, マイクロサービスアーキテクチャ, クリーンアーキテクチャ, Kafka, GCP(Cloud SQL, Spanner, GKE, Cloud Functions, BigQuery など), Terraform/Helm/Argo, GitLab |
| その他 | SAFe, スクラム(2週スプリント) |
2と同じクライアント・プロジェクト
Shopifyで公開しているアプリの開発、運用。
フルスタック / 業務委託・フルリモート / 開発チーム10人(全体15人)
- 初期リリースから担当し、利用者数を0人から数千人へ増やし、年間数億円の売上を達成
- フロントエンド、バックエンドを横断して開発
- Kubernetes / Terraform / Helm / Argo でインフラを管理
- Shopifyは頻繁にバージョンアップがあるため、E2Eでリグレッション試験を自動化して工数を削減
- 決済と国内/海外配送の実装を通じてドメイン知識を習得
- モブプロを導入し、既存メンバーしか知らないドメイン知識を新規メンバーへ共有して受け入れをしやすくした
| 分類 | 技術 |
|---|---|
| フロントエンド | Next.js(v13), TypeScript(v4), アトミックデザイン, GraphQL, Playwright |
| バックエンド | Golang(v1.17), GORM, gRPC, GraphQL, マイクロサービスアーキテクチャ, クリーンアーキテクチャ, AWS(Aurora, DynamoDB, SQS, SES, EKS, ECS など), Terraform/Helm/Argo, GitLab |
| その他 | E2E, ペアプロ/モブプログラミング, スクラム(1週スプリント) |
某SNSサービスのシステム移行。テックリードとして技術選定から導入・運用まで担当。
テックリード / フルスタック / 副業案件(アルバイト)・フルリモート / 開発チーム5人(全体200人)
- Node.js から Elixir(Phoenix) への移行を依頼され、技術選定、計画〜リリース、リリース後のメンテナンスまで対応
- 最大スループットを1,000 req/s から100,000 req/s に引き上げ
- サーバ数を100台から5台に減らし、インフラコストを削減
- 既存サービスの振る舞いをGherkinで記述して整理し、E2Eでデグレを検出できるようにした
- DevOps環境の導入
- Rust/Tauriを使ったモバイルアプリの開発
- 開発メンバーの面接・採用活動、Elixir/Erlangの勉強会の開催
| 分類 | 技術 |
|---|---|
| フロントエンド | Next.js(v13), TypeScript(v3), Playwright/Gherkin |
| バックエンド | Node.js(v14), Elixir(v1.10〜v1.15), Phoenix(v1.4〜v1.6), PostgreSQL(v12), GCP(GKE, BigQuery, Firebase など), RabbitMQ, GitHub |
| モバイル | Rust(v1.43〜v1.73), Tauri(v1) |
| その他 | E2E, ペアプロ |
5とは異なる案件
フロントエンド開発チームのテックリードとしてReactの設計を担当。
テックリード / フルスタック / 業務委託・フルリモート / 開発チーム5人(全体50人)
- 技術的負債が多くなったVue.jsアプリをReactへ移行するにあたり、ディレクトリ構成、状態管理、モジュール管理方法を設計
- アトミックデザインで設計したコンポーネントを社内に配布し、どの部署でも使える開発環境を構築
- Cognitoを使った認証認可の設計
| 分類 | 技術 |
|---|---|
| フロントエンド | Vue.js(v2), Next.js(v12), Redux, TypeScript(v4), アトミックデザイン |
| バックエンド | Node.js(v15), AWS(API Gateway, Lambda, Cognito, DynamoDB, AppSync など), レイヤードアーキテクチャ |
企業とインフルエンサーをつなぎ、商品PRを管理・運用するプラットフォーム。
フルスタック / 業務委託・基本リモート(週1出社) / 開発チーム7人(全体50人)
- 既存のVue.jsアプリへの機能追加
- アトミックデザインで新規Next.jsアプリを立ち上げ
| 分類 | 技術 |
|---|---|
| フロントエンド | Vue.js(v2), Next.js(v11), TypeScript(v4), Redux, BEM(CSS), GraphQL |
| バックエンド | Golang(v1.14), クリーンアーキテクチャ, GraphQL, gRPC, DDD, Auth0, GitHub |