DROBE エンジニアリング資料
💻

DROBE エンジニアリング資料

DROBE のエンジニアリングに関連する情報をまとめています

DROBE では以下のような技術やツールで開発をしています

DROBE の技術スタック

Module言語フレームワーク詳細
Backend
php
Laravel
サービスのメインとなるサービスで使っています
Backend
go
grpc
マイクロサービスや Batch 処理などに使っています
Backend
typescript
ExpressApolloServer
管理機能を提供しているサービスで使っています
Frontend
typescript
React
Redux, Redux Saga, Apollo Client などを Backend に合わせて利用 Styling は Styled Component を使っています
Frontend
typescript
next.js
SSG コンテンツ用に使っています
Machine Learning
python
pytorch
API server は grpc server を利用 深層学習には pytorch を使いつつ SKLearn や LGBM なども必要に応じて利用
ETL
python
ArgoWorkflowBigQuery
ArgoWorkflow BigQuery
インフラ管理
terraformcloudformationArgoCD
状況に応じて使い分けています EKS は ArgoCD による GitOps で管理しています
コンテナ実行環境
ECSEKSIstio
ECS: サービスのメインとなるサーバーが動いています EKS: ETL や ML の API などが動いています
CI / CD
github actionsgitlabCICodeBuildCodePipeline
ほぼ全ての repo は github で管理しています
BI tool
redash
分析用に使っています ECS に Deploy して使っています

技術資料

社内外で参考にしてもらえそうな技術的な知識を不定期で資料化しています

解説や HowTo から、ちょっとした Tips まで幅広にまとめていきます

📝 設計

ECS の Schedule Task (Fargate) と Laravel
ECS の Schedule Task (Fargate) と Laravel
React の Component 設計と Atomic Design
React の Component 設計と Atomic Design
👚
DROBE における Next.js の利用事例

🏫 解説

Typescript の Decorator
Typescript の Decorator

🏙️ インフラ

Laravel の ECS への Deploy
Laravel の ECS への Deploy
ECS 環境における Laravel と Master 更新
ECS 環境における Laravel と Master 更新
ArgoWorkflow で行う ETL 運用
ArgoWorkflow で行う ETL 運用
Istio のバージョン更新について
Istio のバージョン更新について
Istio を ArgoCD で運用する
Istio を ArgoCD で運用する
EKS Cluster を切り替える際の external-dns の挙動について
EKS Cluster を切り替える際の external-dns の挙動について
ArgoCD で管理しているクラスターを切り替える際の ArgoWorkflow  CronWorkflow の切り替え方について
ArgoCD で管理しているクラスターを切り替える際の ArgoWorkflow CronWorkflow の切り替え方について
minikube の driver について
minikube の driver について

🤖 機械学習

Google Auto ML Tables を使った PoC
Google Auto ML Tables を使った PoC
💻
ML の Feature Engineering を ETL の一部として行う
pytorch の Embedding の挙動について
pytorch の Embedding の挙動について

😎 Tips

poetry の依存関係でエラーが発生した場合の対処
poetry の依存関係でエラーが発生した場合の対処
poetry を使って python の project を作る
poetry を使って python の project を作る
docker で no space left on device が出た時の対処法
docker で no space left on device が出た時の対処法
pandas の concat における注意点
pandas の concat における注意点
pandas で 3 項演算子 like な処理を行う
pandas で 3 項演算子 like な処理を行う
sklearn の LabelEncoder の挙動
sklearn の LabelEncoder の挙動
sklearn の CountVectorizer の挙動
sklearn の CountVectorizer の挙動
sklearn の OrdinalEncoder の挙動
sklearn の OrdinalEncoder の挙動