GCP・TypeScript・ReactによるSaaSソフトウェアエンジニア

時給 3,000円 ~ 10,000円
雇用形態: 副業転職(業務委託から正社員)
勤務地:
弊社は提供する価値毎にデザインドックを作成しています。デザインドックにはビジネス上の価値やユースケース、価値のKPIなどが記載されています。フロントエンド・バックエンド・インフラを問わず、このデザインドックを形にしてユーザに提供していただきたいです。技術領域を跨いで参画することは一般的に難しいと考えられていますが、弊社ではやらないことを明記し各スタックを徹底的に利用することで可能になると考えています。今後もこの体制を促進する前提で、設計や投資を行っていきます。 - すべてのコードはGithubの1つのレポジトリで管理する。monorepoにすることで、機能の結合、CI/CD、アップグレード・セキュリティ対応、ドキュメント管理のコストを減らす。 - 開発で使用する言語をTypeScriptで統一する。プロジェクトやフロントエンド、バックエンド、インフラ問わず、TypeScriptを積極的に利用する。TSConfigやESLintは厳しくし、すべてのプロジェクトで同じ設定のもと運用する。 - GCPを積極的に活用する。今後5年AWSは使わない。GCPにないものに限って特定のドメインに特化したサービスを利用する。コンピューティング基盤として、GKE Autopilotのみを使用しCloud RunやCloud Functionsは積極的に使用しない。 - PostgreSQLを積極的に活用する。OLTPデータベースとしてのみならず、Job Queueing、Pub/Sub、Cronとしても利用する。Redis、Cloud Pub/Sub、Cloud Schedulerは利用しない。 - フロントエンドとバックエンドの通信はすべてGraphQLを使用する。スキーマ駆動を徹底し、GraphQL Code Generator、GraphQL Tools、React Queryを利用してスキーマから型と実装を生成する。 - GraphQLを前提にした場合、メリットが少ないためORMは使用しない。代わりに、SQLからTypescriptの型と実装を自動生成するPgTypedを使用する。PgTypedとDataLoaderを使用して、GraphQLのレスポンスを構築する。 - 開発効率を考慮し、フロントエンドのすべてのアプリは同じ構成に統一されている。バックエンドはフロントエンド毎にアプリを分けず1つのアプリで構成されている。 - フロントエンドのDev ServerとProxy Server用途に、Viteを採用している。セキュリティ関連のヘッダーからバックエンドの通信まで、本番環境と全く同じ状態で開発ができる体制になっている。 - フロントエンドのUIはすべて、ReactとMUIを使い構成する。Figma上のUIデザインもMUI前提に構成されている。MUIには引き続き投資し、MUI X Pro Planの検討も視野に入れている。 - SentryとMixpanelを使用し、フロントエンドのエラー監視とプロダクトの利用状況の取得を行っている。各機能のKPIを開発者が透過的に参照できる体制が整っている。