DROBE のエンジニアリングに関連する情報をまとめています
Module | 言語 | フレームワーク | 詳細 |
---|---|---|---|
PHP | Laravel | サービスのメインとなるサーバーのフレームワークとして使っています | |
Go | マイクロサービスに使っています
新規で開発を行う場合の選択肢でもあります | ||
TypeScript | ExpressApolloServer | 管理機能を提供しているサービスで使っています | |
TypeScript | React | Redux, Redux Saga, Apollo Client などを Backend に合わせて利用
Styling は Styled Component を使っています | |
TypeScript | Next.js | SSG コンテンツ用に使っています | |
Python | PyTorch他 | API server は gRPC server を利用
深層学習には PyTorch を使いつつ SKLearn や LGBM なども必要に応じて利用 | |
Python | ArgoWorkflowBigQuery | ArgoWorkflow
BigQuery | |
TerraformCloudFormationArgoCD | 状況に応じて使い分けています
EKS は ArgoCD による GitOps で管理しています | ||
ECSEKSIstio | ECS: サービスのメインとなるサーバーが動いています
EKS: ETL や ML の API などが動いています | ||
GitHub ActionsGitLabCICodeBuildCodePipeline | ほぼ全ての repo は GitHub で管理しています | ||
redash | 分析用に使っています
ECS に Deploy して使っています |
技術資料
社内外で参考にしてもらえそうな技術的な知識を不定期で資料化しています。
解説や HowTo から、ちょっとした Tips まで幅広にまとめていきます。
※各タイトルをクリックで詳細記事が開きます
📝 設計
ECS の Schedule Task (Fargate) と Laravel
React の Component 設計と Atomic Design
DROBE における Next.js の利用事例
🏫 解説
Typescript の Decorator
[論文解説 ] Unbiased Learning to Rank via Propensity Ratio Scoring
🏙️ インフラ
Laravel の ECS への Deploy
ECS 環境における Laravel と Master 更新
Laravel Worker が ECS の Scale In でエラーを吐かないようにする
AWS Lambda と SQS を使って webhook によるスパイクに対応する
ArgoWorkflow で行う ETL 運用
Istio のバージョン更新について
Istio を ArgoCD で運用する
EKS Cluster を切り替える際の external-dns の挙動について
ArgoCD で管理しているクラスターを切り替える際の ArgoWorkflow CronWorkflow の切り替え方について
minikube の driver について
ECSの異常終了をお手軽検知
🤖 機械学習
Google Auto ML Tables を使った PoC
ML の Feature Engineering を ETL の一部として行う
pytorch の Embedding の挙動について
機械学習の特徴量として日付を使う際の考慮点
💻 開発環境
GitHub の Codespaces を開発環境として導入する
LLM を利用した EC の開発環境
😎 Tips
poetry の依存関係でエラーが発生した場合の対処
poetry を使って python の project を作る
docker で no space left on device が出た時の対処法
pandas の concat における注意点
pandas で 3 項演算子 like な処理を行う
sklearn の LabelEncoder の挙動
sklearn の CountVectorizer の挙動
sklearn の OrdinalEncoder の挙動
GitHub Actions から ECS Task を起動する
GitHub Codespaces の features を使う