コンテンツエリア1

シャノンのエンジニアリング

メッセージ

画像

シャノンはひとつの大きなサービスによって成長してきた企業ですが、
”変わり続けること” は大事にしています。
15年以上も続いているサービスなので放っておくと硬直し、既存の組織や顧客、コードを変えることが、どんどん大変なことになっていきます。
その中で新しい価値を届け続けるには、柔軟性や顧客志向、新しい技術への興味といったマインドセットを持つことが重要だと考えています。

シャノンのエンジニアには自分が考えたこと、面白いと思うことを大事にし、
自分がやりたいからやっているという気持ちで開発に取り組んでもらえると嬉しいです。

CTO 堀譲治

シャノンの開発について

プロダクトテックスタック

画像
  • プログラミング言語

    Ruby,Perl,Javascript,Swift,Kotlin,Node.js

  • フレームワーク

    Ruby on rails,Catalyst,jQuery

  • インフラストラクチャー

    AWS,docker,PostgreSQL,Linux,Fluentd

  • CI/テスティング

    Selenium, Github, Jenkins

  • モニタリング

    Kibana, Prometheus, Icinga, Elasticsearch

画像
  • プログラミング言語

    Java, Perl, Javascript, Node.js

  • フレームワーク

    Spring, Spring WebFlux

  • インフラストラクチャー

    WildFly, Apache, Aerospike, MySQL, Fluentd, Terraform, Chef, Docker, H2O, Embulk, AWS

  • CI/テスティング

    Maven, Github

  • モニタリング

    Icinga, AWS(CloudWatch)

画像
  • プログラミング言語

    Perl, Ruby, Python, Javascript

  • フレームワーク

    Ruby on Rails, jQuery

  • インフラストラクチャー

    AWS, Docker, PostgreSQL, Linux, Fluentd, Docker

  • CI/テスティング

    Github, Jenkins

  • モニタリング

    Kibana, Prometheus, Icinga

開発について

■要件定義
「開発」といっても、単に指示されたことを実装するのではありません。
クライアントや社内からの要望やサービスの理想形を踏まえて、何をどうやって作るのかを決めるところから始めます。

■開発の進め方
メンバー全員(シャノン上海含む)で技術や開発プロセスを提案しあい、ベストな方法で開発を進めています。
もちろん新しい手法の提案も大歓迎!自分で考え、主体的に開発を進めることで、サービスを作っているというやりがいを感じていただけると思います。

週次で開発サイクルをまわしつつ、月1回のバージョンアップや大規模なリニューアルを行っています。
月1回のリリースに向けては3〜5名のチームで3ヶ月から6ヶ月くらいのプロジェクトをつくって進めています。

バックエンドにもフロントエンドにも携われるため、幅広い知識やスキルを身につけることができます。

■開発プロセス
開発から本番まで全てAWS上で行なっています。
Continuous Integration/Continuous Delivery (CI/CD) による開発を実践しており、毎月定期的にリリースすることで顧客へ最大の価値を届けられるようにしています。
チームは3〜5名の開発者とQA・PdMで構成されています。毎朝のスタンドアップでチームの状況を確認し、毎週のスプリントレビューで成果と方向性を確認します。
1カ月のスプリントではゴールにぶれが生じ、結果生産性が落ち見通しが立たなくなってしまう経験より、1週間スプリントを実践しています。
また、火曜始まりなのは金曜日にスプリントを設定してしまうとお休みが取りにくくなるため、配慮しています。

画像

当社のMAは15年以上にわたりリニューアルや拡張を繰り返し、現在はマーケティングの大規模プラットフォームと呼べるレベルにまで成長しました。そのサービスをさらに変化、進化させ続けるのは簡単なことではありません。

だからこそ挑戦しがいがあるといえますし、クラウドサービスに必要な技術や経験も身につきます。 大規模なサイトやサービスが増えていく中、こうしたSaaSサービスを進化させる経験を持った人材はひっぱりだこ。 エンジニアとしてどんどんレベルアップして、市場価値を高めていっていただければと思います。

業務内容

■入社後の仕事について
自社開発SaaSの機能開発・バグFIX等を担っていただきます。
開発には以下の2系統があります。
・SHANON MARKETING PLATFORM(SMP)
・SHANON Ad Cloud、SHANON CMS Neo/Cloud等のSMPを補完するサービス

スキルやご希望、開発状況などを考慮してどちらを担当いただくか、
決定させていただきます。

画像

■開発に求められること
「何をどう作るか」「パフォーマンス性能」「高いセキュリティレベルの担保」「ユーザビリティ」「インフラの拡張性」「将来に渡ってのメンテナンス性」「テストのしやすさ」など、さまざまな要素を考慮して開発をしています。また、フルリモート・フレックスで開発しているために、個々人の自律が求められます。

■この仕事で得られるもの
・自分の市場価値を高め、新しい環境にチャレンジするための土台づくり
・これからどんどん伸びていくマーケティング業界のエンジニアとしての活躍
・クラウドネイティブかつ、CI/CDによるイテレーティブな開発経験
・AWSを駆使したクラウドアーキテクチャ
・CI/CDによる継続的改善
・マルチテナンシーを前提としたセキュリティ
・高可用性を意識した開発と運用
・大規模データを効率的に処理するためのスキル
・マーケティングの業務知識 などなど

Culture

メンバーの声

前職について教えてください
  • テレビなどデジタル家電のソフトウェアのテストエンジニアとして従事していました。

    SREエンジニア

  • フィーチャーフォン(ガラケー)やスマートフォンなど携帯電話向けのゲームを開発する会社にいました。

    開発エンジニア

  • 前職では1次受けのソフトウエア開発者として、自社開発企業案件の開発をしていました。前前職では2次受けのソフトウエア開発者として、大規模なSI案件の開発が主でした。

    QA & Productivityエンジニア

シャノンに入った理由は?
  • 当時、ソフトウェアテスト関連の重鎮である高橋寿一氏のブログで、「テストエンジニアは、これからはwebアプリのソフトウェアテストのスキルも必要だ」みたいなことを言われていたので、ちょうどよくテストエンジニアを募集していたシャノンに応募しました。(当時リーマンショックで前職の仕事も減ってきていましたし)

    SREエンジニア

  • エンジニアとして経験を積む為に別の業界の開発にも携わってみたいと思い、データ分析にも興味があったのでマーケティングオートメーションを開発しているシャノンに入社しました。

    開発エンジニア

  • 前前職、前職でのプロジェクトを経験して、プロジェクト開発を自社開発でやりかたったこと、プロジェクト開発において仕様や品質の不備でプロジェクトがうまく進まないことが多いのをみて品質の面からプロジェクトに貢献できる業務をやっていきたいと考えたからです。

    QA & Productivityエンジニア

シャノンのエンジニアの特色は?
  • 真面目で慎重な人が多い印象です。大きな変化をもたらすというよりは、小さく積み重ねていくタイプですね。

    SREエンジニア

  • 皆、妥協しない姿勢があり、最後まで顧客が使いやすいよう知恵をしぼって開発しています。また、マーケティングオートメーションやセミナーの管理をはじめ、機能が豊富なので、色々な知識や経験が得られると思います。

    開発エンジニア

  • やさしくて穏やかな人が多いです。相談をするとみんな親身になって相談にのってくれます。

    QA & Productivityエンジニア

こんな人と一緒に働きたい!
  • 自ら提案して実行できる人がいいですね。新しい文化を作る気概のある方が良いです。

    SREエンジニア

  • 最後まで妥協せず、根気のある方、歓迎です!

    開発エンジニア

  • 与えられた業務をこなすだけではなく、どうしたら良い製品になるかを一緒に考えてくれる人、良い製品にするために、自分はどんな力を身に着ければよいか考えて努力できる方と切磋琢磨しながら働けるとよいなと思います。

    QA & Productivityエンジニア

新卒入社者の声
  • Q.仕事のおもしろさ
    開発からトラブルシューティングまで様々な業務の経験を積めます。自分で考え、チームメンバーと協力しながら課題解決をできるのがシャノンのエンジニア職の面白さです。

    開発エンジニア

  • Q.どんな成長ができる?
    製品の大部分を自社開発しているため、製品企画・テスト・実装、インフラ・バックエンド・フロントエンドと、フルスタックにスキルを伸ばせる機会があります。チームで開発する業務や他部署と連携して業務をすることも多く、開発の成果や調査結果を相手にわかりやすく伝える能力が向上したと感じます。

    開発エンジニア

  • Q.仕事のおもしろさ
    内製のサービスをメンテナンスしながら開発するのは難しいですが、チームで協力し、徐々に良くなっているのを実感できたときは嬉しいです。

    開発エンジニア

Recruit