こんにちは、メディアエンジン株式会社でエンジニアをしているナバロです!
そろそろ2020年が終わりますね〜! みなさんは良い1年が過ごせたでしょうか?
私達、メディアエンジンのエンジニアチームもこの1年で色々ありました!
開発や、採用でも色々苦労しながらなんとかやってきました!
興味ある方はぜひ、カジュアル面談で聞いてください!
本題
今年の1月にこんな記事を書きました!
そこから約1年経ち12月になりました! 改めて、システムがどうなっているのか、弊社で取り組んでいる技術はなんなのかをご紹介できたらと思います。
メインシステム
現在の弊社のシステムの一番大きいところは、前回の記事と変わらず、 記事制作ディレクションシステムになります。
![]()
品質が高いメディアを効率よく運営するために、このシステムを用いて、 メディアの裏側で頑張っていただいている方のサポートをしております。
メディアの運営をするサイドのディレクターの作業効率向上のための機能や、 コンテンツを制作するクリエイターの仕事しやすい環境をつくるために日々改善していってます。 また、クリエイター自身が、弊社での仕事を通してスキル的に成長出来るための仕組みも強化中です。
過去記事では、このシステムと別に記事制作補助システムというものも紹介してましたが、現在は裏側の仕組みのリファクタやリプレイスなどにより、記事制作ディレクションシステム内にどんどん統合しております。
裏側はマイクロサービスで機能ごとにサーバーが違ったりするのですが、フロント上では一つのアプリのように振る舞うように作っていってます。
![]()
弊社の技術スタック
少人数チームで今月から4人!ということで、今後入るエンジニアのメンバーのスキルによっても弊社の特徴は変わるものだと思っておりますが、現在はこんな感じです!
Rails (開発割合 35%)
- メインシステムのAPIサーバーやタスクスクリプト
- SwaggerによるAPIドキュメント生成とRSpecのテスト
- システムによって Rails v6と Rails v5 だったりする。
- 開発割合がNuxtと並んで一番多い
Nuxt (開発割合 35%)
- メインシステムのフロントエンド環境
- システムによって Vue 3 ベースと Vue 2 ベースだったりする
- TypeScriptで書いています
- 開発割合がRailsと並んで一番多い
Go (開発割合 20%)
- 自社特製の分散処理システム&APIサーバー
- 記事制作補助ツールの自社ライブラリ
- 最近出来上がったばかり、立ち上げは私がしたので、やや属人化してる。開発・保守してくれる人大募集
WordPress (開発割合 10%)
- メディア運営のための自社テーマ制作
- 一部は外部にお願いしていたりするので、開発の割合としては少なめ。
AWS
- メインシステムは基本terraformで構築している
- 弊社のインフラの大半はAWS。一部Heroku
- ECS(Fargate), Lambda, EC2, Aurora, Redis, CloudFront, S3, Amplify.....
Python
- 機械学習プロジェクトに使われている。これも、一人のメンバーと外部で連携して開発しているので、属人化気味
- Slackボットだったり、Google スライドを動画に変換するようなツール類で使っている
GCP
- BigQueryをデータウェアハウスとして利用。可視化はData Portalで
- 機械学習に一部使っています
- AWSと比べてGCPの設計が上手く行ってないので、詳しい人助けて!><
Docker
- 弊社のシステムは全てDockerで起動が出来るようにしています。
- DockerとCircle CIでCI/CDワークフローを構築しております。
マイクロサービス
- 機能ごとに役割や要件が違うので、サーバーを分けたりしています。
- 新しくシステムを立ち上げる際に、新技術のテストも兼ねて導入したりもしています。上手く行けばメインシステムへの逆輸入もします。
- 少人数で複数システムを見ないといけないのがややネック
最後に
簡単ですが、弊社のシステムの全体感と使用技術をお伝えすることができたと思います。 これからも、どんどん挑戦していきます。 一緒に挑戦して頂ける方を募集しています!
ぜひ、一度お話してみましょう!
ソウルドアウト株式会社では一緒に働く仲間を募集しています