【募集背景】
複数の事業が開発されている中で、各サービスごとのユーザーIDを統合するための基盤創りを強化しています。MIXI社のプロダクトに限らず、子会社のサービスも含め多様なユーザー情報を一元管理することで、多くのサービス間の連携や、今まで以上のユーザー体験を提供が可能になると考えています。また外部向けのサービスとして、決済や暗号資産など複数の機能を実装してオリジナルのwalletサービスも開発を進めており、今後の事業拡大に伴い、組織を今まで以上に強く、また各メンバーに向き合える体制を創るべく採用を行うこととなりました。
【業務内容】
ID基盤/新規Walletサービスの開発におけるサーバーサイドエンジニアを募集します。APIサーバーやその裏側の決済システムの開発や運用に従事していただく予定です。
・サーバ要件定義・アーキテクチャ設計・インフラ構築
・サーバサイドアプリケーション開発
・サービス設計、業務フロー設計
・各プロダクトとの連携に関わる仕様調整・開発
・PCIDSSに準拠した運用フローの改善等
※インフラに関してもサーバーエンジニアがカバーしている組織体制のため、広い範囲で業務を積んでいただくことが可能です。
※少数精鋭の組織のため、企画との連携も多く、企画にも積極的に携わっていただける環境です。
【開発環境】
Elixir をメインの使用言語としており、インフラでは AWS のフルマネージドサービスを積極的に採用しています。
(使用技術)
言語:Elixir(メイン)
(使用ツール)
ライブラリ:Phoenix
インフラ:AWS (Fargate, ALB, NLB)
ストレージ:DynamoDB, Aurora
ソースコード管理: git
プロジェクト管理: GitHub、JIRA
【組織に関して】
本組織は企画職を含め十数名規模の組織で、エンジニアの割合が高い組織です。基本的に内製メインで開発を進めており、決済システムに関して設計から運用まで学ぶことができる環境です。また先々を見据えた品質を考慮した設計や技術選択、開発スピード、継続的なサービス改善も徹底する組織を目指しています。
【開発システムの特徴】
従来のオンプレミスやアプライアンス製品中心の決済システム開発とは違い、本部門ではWeb開発の標準的な手法であるCI/CDや、クラウドを中心としたインフラストラクチャを駆使して開発しています。
フルマネージドサービスを積極的に採用し、必要であればコンポーネントを内製するなどして可能な限りサーバレスに近づけることで、少人数での運用が可能なPCI DSS準拠システムを実現しています。
コンポーネントを内製する際には、単純に様々なシステムの内部プロトコルにただ追従するだけでなく、運用面、機能面での拡張性を持つことを意識して作っています。
メインの言語としてはErlang VMの安定性や耐障害性、言語機能の利便性や社内での開発運用実績などを考慮しElixir を利用しています。
今後は6gram単独での成長を目指すだけではなく、MIXI全体の決済基盤を目指して社内他サービスへの連携や機能提供についても進めていく予定であり、引き続き積極的な新規開発が続く見込みです。
【所属エンジニアの過去登壇資料、登壇実績等】
Jetpack時代のFragment再入門 (DroidKaigi 2020)
https://speakerdeck.com/rnakano/a-guide-to-learning-fragment-on-jetpack-era
サーバーレスなPCI DSS対応クレジットカード決済基盤システムを運用しながら、みんなでわいわいDIYの精神で、新しいモバイル決済サービス6gramを作っている話 (デブサミ2020)
https://www.slideshare.net/FumitoshiTaoka/pci-dss-6gram
グループウォレットアプリ6gramの運用をはじめてみた (SRE NEXT 2020)
https://speakerdeck.com/ryosan470/6gram-sre-next-2020
Elixirで決済サービスをつくってみた (Developer boost 2019)
https://speakerdeck.com/enerick/elixir-dejue-ji-sabisuwotukututemita