`
key | value |
---|---|
氏名 | 佐藤慎吾 |
業務形態 | 正社員 株式会社Hubble在籍 |
年齢 | 27 |
性別 | 男性 |
最寄り | 札幌地下鉄 |
最終学歴 | 高卒(大学中退) |
所在地 | 北海道札幌市 |
資格 | AWS Certified Solutions Architect Professional |
普通運転免許証AT | |
危険物 乙種第4類 | |
自己PR | インフラとバックエンドが一番の得意領域です。自動化が好きです。パフォーマンスチューニングとかも好きです。要件定義や設計などの上流工程も大歓迎です。 |
- 周りに良い影響を与える人間
- 自分の考えや技術を常にオープンにし、周りにも知見を共有することを常に意識している。
- 自分がすべてやってしまうと属人化もする上、自分の仕事も増えてしまうので、自分の分身をいかに増やすかということを常に考えている。
- 何に対しても好奇心旺盛
- 自分が経験したことのない領域の技術に対しても抵抗感なく取り組むことができる
- 面倒くさそうな課題に対しても、黙々と取り組める
- レガシー環境の改善に積極的に取り組める
- ただし、それなりの裁量権があり、スピード感を持って作業できる環境でなければ、パフォーマンスを最大限には発揮できない
- 単純作業が嫌い
- ただし、自動化は好きなので、自動化したい
- ドキュメントをちゃんと書く人間
- ドキュメントがないと属人化して、余計な質問が一杯飛んでくるので、なるべくドキュメントは書くようにしている。
key | value |
---|---|
プログラミング言語 | PHP, Python, Java, TypeScript, JavaScript, Ruby |
フレームワーク | Laravel(PHP) , Django(Python) , SpringBoot(Java) , Angular(TypeScript) , Rails(ruby) |
コンテナ技術 | Docker, Kubernetes, EKS(AWS), ECS(AWS), ECR(AWS) |
CDN | CloudFront, Vercel |
CICD | CodePipeline(AWS), CircleCI, GithubActions, Cloudbuild(GCP) |
IaC | Terraform, Terraform Cloud, CloudFormation |
DB | MySQL, PostgreSQL, MongoDB, Redis, RDS(Aurora), DocumentDB, MemoryDB, Elasticache, Elasticsearch |
データ分析系 | Redash, BigQuery(GCP), Kibana, Digdag(Embulk) |
機械学習(ML) | AWS Personalize、Tensorflow Recommender |
ソースコード管理 | git, Github, Gitlab, CodeCommit(AWS) |
認証系サービス | Auth0 |
メール系サービス | Sendgrid, SES(AWS) |
監視ツール | Datadog, StatusPage(Attlacian), Cloudwatch(AWS) |
その他使用経験のあるAWSサービス | EC2, RDS, DocumentDB, S3, CloudFront, ELB, VPC, Route53, SMS, SES, SQS, Kinesis Firehose, WAF, ECS, Fargate, Lambda, APIGateway, Aurora RDS, MemoryDB, CodeBuild, CodeDeploy, CodePipeline, Lambda, ECS Task, CloudWatch, CloudFormation, CloudTrail, AWS Config, GuardDuty, Well Architect, AWS SSO, AWS Personalize |
その他使用経験のあるGCPサービス | CloudStorage, CloudFunctions, BigQuery, Cloudbuild, Dataflow Template |
ガソリンスタンドでバイトしたり、ネカフェでバイトしたりしてた気がするけど、 もうあんま覚えてない。
ブラックなSESだったため、試用期間で退職
- ラベル管理アプリケーションへの機能追加案件(3 Month)
- 旅行情報サイトのリニューアル(5 Month)
- ゲームのAPIサーバーの開発(5 Month)
- フリーランス向けの営業支援システムの開発_運用(4 Month)
- 不動産電子契約システムの新規開発(6 Month)
- 工場作業者向けの生産管理システムの開発(3 Month)
- 不動産電子契約システムの開発補助(8 Month)
- 不動産営業支援_賃貸マンション検索サービスの開発(5 Month)
- 金融関係のローン申請サービス(2 Month)
- 美容整形の施術予約_口コミ投稿サービス(2 years over)
- 物流倉庫の管理マルチテナントサービスの開発 -> (3 month)
- バックエンドエンジニア
- インフラエンジニア(クラウドエンジニア)
- フルスタックエンジニア
- DevOpsエンジニア
- SREエンジニア
機能の実装とテストを担当
- Laravelを用いての機能追加
- CosmosDB(NoSQL)をアプリに組み込み
- AzureFunctionsを用いてWebアプリとCosmosDBの連携
- vagrantでの環境構築(ローカル)
この案件でPHPとLaravelについて理解することができました。また、CosmosDBというNoSQLやサーバーレスで関数が実行できるAzureFunctionを使ったので、良い経験になりました。
- 詳細設計と実装とテスト(主に管理画面を担当)
- リニューアルに伴うDB設計と移行スクリプトの作成
- LaravelでのWebアプリ開発
- 設計からテストまで
- DB設計、移行も担当
- バッチ処理なども担当
既存のテーブルの数が膨大でDBの整理、設計、移行がかなり大変でしたが、良い経験になりました。
- APIの詳細設計と実装とテスト
- Laravelを用いてのAPI開発
某カードゲームのAPIサーバーの開発をしました。 ゲームなので、レスポンスの速さも高いレベルが求められるのでレビューも厳しかったので、かなり鍛えられました。 特にDB周りの処理がかなり重要になってくるので、その周辺の知識も身に付きました。 DBの水平分割というテクニックがあることもこの案件で知りました。 また、CI/CDに触れることもできました。
- フルスタックエンジニア
- SpringBootでのAPI・Webアプリ開発
- AngularでのSPA開発
- CodePipelineでのCI/CDの構築
- dockerでの開発環境構築
- AWSのインフラ設計- 構築- コード化(CloudFormation)
- Auth0(OAuth2.0)の導入
- SendGrid
- 結合テストの自動化基盤の作成(selenium)
- Datadogでのログ- モニタリングの整備
フルスタックエンジニアとして開発から運用まで関わりました。
- バックエンド(Python, Django)
- フロントエンド(TypeScript, Vue.js)
- インフラ(AWS)
- バックエンド
- インフラ
バックエンドの開発とインフラを担当しました。特にDevOpsな領域にリソースを割いていました。 チーム内の勉強会で、TerraformやDatadogについて話したりもしました。
- graphqlのqueryやmutationの実装
- インフラのアーキテクチャ設計・構築(AWS)
- インフラの負荷テスト(JMeter)
- Terraformでのインフラのコード化(IaC)
- TerraformCloudでのインフラ更新の自動化
- GithubActionsでのCICD構築
- CodePieplineでのCICD構築
- ECS(Fargate)のオートスケーリング
- Datadog導入(ログ収集- モニタリング- アラート)
- データベースのチューニング
- バックエンド(Java, SpringBoot)
- フロントエンド(TypeScript, React)
- インフラ(Azure)
- SRE(一応)
- GithubActionsでのCICDの構築(Kubernetes)
- PR時にPreview環境をk8s上で自動生成するGithubActionsを作成、共通部品化
外資の会社の案件なので、コミュニケーションコストが結構かかるので大変でした。 なのですぐ辞めました。
- バックエンド(Python, django)
- フロントエンド(TypeScript, Vue.js)
- インフラ(AWS)
- システムアーキテクト
- 既存インフラの改善作業
- 開発環境/基盤整備、アプリのアーキテクチャの設計
- インフラ設計、レビュー
この案件は前にも関わったことのある案件で、今回は主に開発の補助をしていました。 開発の初期段階の基盤づくりやインフラの設計などを手伝いました。
- インフラ(AWS, GCP)
- バックエンド(Ruby, Ruby on Rails)
- フロントエンド(TypeScript, Next.js)
- スマホアプリ(swift, Kotlin)
- インフラ
- SRE
- MutliAZ導入での可用性の向上
- MySQL5->8へのバージョンアップデート
- Railsのテストを並列化させることによる速度向上(github actions, parallel-spec)
- モニタリング周りの整備
- 一部のアプリのCICDをGithubActionsに移行
- GCP周りのクラウドリソースのコード化(IaC, Terraform)
- MySQL、BigQuery間のデータ同期の仕組みを構築(DigDag, BigQuery DataTransfer)
メインの案件が忙しくなったので、割と短めで辞めてしまいました。
- インフラ(AWS, Lambda)
- バックエンド(Python)
- インフラ
インフラ
- Lambdaのサーバーレスアプリのインフラの設計・構築
- ChangeCalendarの運用自動化
- Terraformでのコード化
- ローカル環境の設計・構築
副業でやっていた案件です。任せられたタスクが完了したため、すぐ契約は終了しました。
- インフラ(AWS, GCP)
- バックエンド(Ruby, Ruby on Rails)
- フロントエンド(TypeScript, Next.js)
- スマホアプリ(Swift, Kotlin)
- インフラ
- バックエンド
インフラ・DevOps
- SLO&SLIの策定
- Elasticsearchの導入・RDBとのリアルタイムデータ同期の仕組みを設計・構築
- EKSでのKubernetesクラスター構築
- EC2(Kops,Kubernetes)からEKSへの移行
- RDS(MySQL)からAurora(MySQL)への移行
- MySQLバージョンアップ(5->8)
- EKSへのデプロイパイプライン構築(CircleCI + Terraform Cloud.k8sリソースもterraformで制御している)
- バッチ処理系をk8sのCronJobに移行
- HorizonPodAutoscalerとFargateでのオートスケーリング実装
- DBのドキュメントを自動生成、共有の仕組みを構築(Actions, AWS, Cloudfront)
- インフラのコード化(Terraform) + CICDの整備(Terraform Cloud)
- ログ/モニタリング基盤の構築(Datadog)・アラートの設定・ダッシュボードの作成
- 分析OSSであるRedashを社内AWS環境に構築・SaaSから移行
- AWS利用料金の改善(無駄なリソースの定期削除やSavingPlanの導入)
- AWSControlTowerとAWS SSO導入し、マルチアカウントの権限や管理をシンプルに
- データ分析周りのワークフローなどを作成できるOSS digdagを社内AWS環境に構築・整備
- SESバウンスメール対策
- 本番とそれ以外の環境のAWSアカウント切り離し
- 社内管理画面にCognitoを用いた、GoogleWorkspaceでのSSOを構築
- AuroraのServerlessV2と通常のインスタンスを用いて、適切にオートスケーリングするような設定を構築
- 本番とそれ以外の環境でデータを定期的に同期する仕組みの構築(RDS, ECS, S3, EKS)
- 社内にVPNの導入(YAMAHAルーター)
- WAFを用いて、リソースへの適切なアクセス制限を実現
- 1Passwordを導入して、機密情報を適切に管理できるように
- セキュリティ関連のサービスの導入、アラートの設定
- Session Managerの導入
バックエンド
- Dockerイメージサイズのチューニング
- 書き込み用DBと読み込み用DBを使い分ける修正(マルチDB対応)
- ローカル開発環境の整備
- APMをもとに、ネックとなっていた部分のパフォーマンスチューニング
- Elasticsearch周りのクラス設計・実装
- elasticsearchの検索パフォーマンスチューニング
- テストの並列実行による速度向上
- 開発wikiの整備
- LINEログインの設計・実装
- エラーログを適切に収集するための修正
- SESのバウンスレートを下げるための改修
- 非同期処理周り(Sidekiq)の設定調整
- Webサーバーをunicornからpumaに移行し、マルチスレッド化
- ライブラリのバージョンアップ作業とバージョンチェックの自動化
機械学習(ML)・データ
- RDSからBigQueryへの定期的なデータ同期の仕組みを設計・構築(EventBridge, Lambda, Cloud Function, BigQuery DataTransfer)
- 各種分析SaaSで収集したデータの取り込み等のデータフローを整備(GCP Storage, BigQuery DataTransfer)
- AWS Personalizeでのレコメンドモデル作成
開発者のための開発や、技術的負債の削減等は意識しながらやっています。
- インフラ(AWS)
- バックエンド(PHP, Laravel)
- フロントエンド(PHP, Laravel)
- インフラ
インフラ・DevOps
- ECS(コンテナ)への移行
- アプリのコンテナ化
- CICDパイプライン(GithubActions)の構築
- AWS CDKでのIaC実現
- Pythonでコーディング
- CDKのCICDパイプライン(GithubActions)の構築
- マルチリージョン対応
- GlobalDatabaseの追加
- フェイルオーバー作業自動化のためのスクリプト作成
- AWS Cloudwatch Dashboardの作成
- Stack毎にCDKで作成
- アプリケーションのオートスケーリング実現
- リクエスト数でスケールするための設定の記述
- 負荷テストでの動作確認の実施
- AWS DirectoryServiceとADFSによるSAML認証の検証
バックエンド
- Dockerでのローカル開発環境の構築
- SAML認証を行うための機能開発
- ADFSやAzureADでのSSOを実現するために実装
- OpenSearchの導入・検索機能の改修
- インフラ側の構築から、アプリケーションのコードの実装まで
- Algoliaから問題なく移行し、パフォーマンスチューニングなども行った
- インフラのTerraform化・TerraformCloudの導入
- 自分がすべてやるのではなく、Documentもしっかり書き、各開発者がTerraformを使いやすいような基盤を整えた
- 複数(10個以上)のECSサービスのTerraform移行・複数のサービスのAppRunnerからのECS移行
- 複数サービスのCICDパイプラインの設計・構築
- CIの速度チューニング作業含む(テスト並列実行やDBキャッシュ・Dockerfileの改善等)
- Datadog周りの監視基盤の整備
- ログパイプラインの整備、ログビューの作成、アプリの各コンポーネントに特化したダッシュボードの作成
- エンタープライズレベルの企業のモニタリングを重点的に行うためのダッシュボードを作り、開発者がレイテンシー等により敏感になるような体制を作った
- システム全体のリーアキテクチャ
- 非効率的な、あるいは、複雑性の高いサービスのリプレイス等を行い、システム全体の品質の向上や、コストの最適化等を行った。
- セキュリティ的に脆弱性のあるサービスのインフラのアーキテクチャの改修等
- SCIM2.0の規格に準じたプロビジョニング機能の実装