タグ

ブックマーク / developers.cyberagent.co.jp (9)

  • 100万行の大規模なJavaScript製システムをTypeScriptに移行するためにやったこと | CyberAgent Developers Blog

    現在ピグ事業部の主力サービスである「ピグパーティ」でサーバーサイドエンジニアをしております新卒2年目の川口です。普段はSRE関連の業務を主とし、サーバーサイドの業務効率改善や、システムの運用保守、時には機能の開発や修正なども担当しております。 ピグパーティは、2015年にiOS/Androidでリリースされたアバターコミュニティアプリで、サーバーサイドはNode.js(JavaScript)+MongoDBを採用しています。 ピグパーティではこれまでにプライベートクラウドからGCPへの移設、Kubernetes(GKE)の採用など、技術的負債の排除や新技術の採用などを積極的に行ってまいりました。今回は、サーバーサイド開発時の大きなボトルネックになっていた、型がわからないことに起因する複数の問題を解決するために、TypeScriptを導入することにしました。その結果、システム規模に対して少な

    100万行の大規模なJavaScript製システムをTypeScriptに移行するためにやったこと | CyberAgent Developers Blog
  • 重いサイトを軽くしろ!年末年始は #WebSpeedHackathon 2021 に挑戦しよう | CyberAgent Developers Blog

    ABEMA で Web フロントデベロッパーとして活動している 宮代 @3846masa です。CyberAgent Advent Calendar 2021 4 日目は、Web パフォーマンス改善のコンテストについてお話します。 TL;DR Web パフォーマンス改善コンテスト “Web Speed Hackathon 2021 mini” を開催します! 改善する対象は https://web-speed-hackathon-2021.herokuapp.com/ です オンライン開催で、12 月 4 日から 1 月 3 日までの 1 ヶ月間、好きなときに誰でも参加できます 記事の後半は、課題となる「重たい短文投稿サイト」を作るまでの開催記です はじめに CyberAgent では、Web パフォーマンス改善を競うコンテスト “Web Speed Hackathon 2020” を昨年

    重いサイトを軽くしろ!年末年始は #WebSpeedHackathon 2021 に挑戦しよう | CyberAgent Developers Blog
  • Amebaのデザインシステム「Spindle」の全貌公開

    メディア統括部・技術横断室の谷です。組織横断の活動しながら、AmebaやAmebaマンガという事業に関わっています。実務としては、コード実装をメインに、UI設計やUX設計、最近ではユーザーインタビュー等のリサーチ業務をおこなっています。 この記事では私が立ち上げから2年くらいかけて関わってきたAmebaのデザインシステムについて、その全貌を解説します。 そして日からデザインシステム「Spindle」のサイトを試験的に一般公開します。詳しくは記事後半にて。 まず前段のお話として、Amebaという事業について説明させてください。 Ameba事業の概要 Amebaはブログサービスであるアメーバブログを主としたサイバーエージェントのメディア事業の1つです。 多くの人はおそらく「アメブロ」や「ピグ」の印象が強いですが、関連事業やサービスとしてはマンガや占い、ニュースなど色々と展開をしています。

    Amebaのデザインシステム「Spindle」の全貌公開
  • Rust で Web バックエンド開発をはじめる | CyberAgent Developers Blog

    こんにちは。サイバーエージェント AI 事業部 Dynalyst にて、ソフトウェアエンジニアをしている豊田(@helloyuki_)です。また、Rust 領域における Next Experts も務めています。 先日、CA BASE NEXT という CyberAgent が開催する20代が中心のカンファレンス[^1]に、私も一応20代ということで登壇させていただきました。 内容は Web アプリケーション開発を Rust で行った体験談を語るというものでした。実際に2018年〜2020年頃に Rust をとあるチームのアプリケーションに導入し、引き継ぎのために何をしたかという内容をお話させていただきました。 セッション自体は25分しかなく、またコード例をスライドからかなり削るなど、CG スタジオ仕様への対応が必要でした。というわけで、十分に伝えたいことを盛り込めたわけではありませんで

    Rust で Web バックエンド開発をはじめる | CyberAgent Developers Blog
  • 「Ameba」アイコン刷新 一貫性と再現性追求のための設計術 | CyberAgent Developers Blog

    GUIにおけるアイコンとは、プロダクトを触れるユーザーに対して、機能や動作を抽象化してシンプルかつ直感的に伝達させる、文字情報に頼らない記号です。 基的に、記号が内包する意味には受け手によって解釈の余地があるような状態であってはなりません。しかし、ユーザーに対して、シンプルに正しい意味を伝えることが出来るという前提さえ踏まえれば、それを成すスタイリングは作り手やプロダクトによって様々な表現が可能な余地が残されています。 つまり、アイコンは、記号としての機能性に加えて、装飾としての役割も抱く、プロダクトGUIにおけるスタイリング定義の標となり得るということです。 前段 「Ameba」について 「Amebaらしい」アイコンとは何か 塗りと線のルール 「Amebaらしい」形状 「Ameba Sans」の形状分析と曲率定義 線の太さのルール 命名規則を決める Library化 リプレイス まと

    「Ameba」アイコン刷新 一貫性と再現性追求のための設計術 | CyberAgent Developers Blog
  • 「Ameba」15年の負債を払拭するカラーパレットのメソッド | CyberAgent Developers Blog

    「Ameba」は2020年に16周年を迎える長寿サービスです。 プロダクトチームはPC / SP / iOS / Androidと4種類のデバイスに対応しており、15年という歳月を経た結果、管理の追いつかない画面、レガシーなコード等に苛まれるようになってきました。 「Ameba」開発チームではそのような、過去の遺物に開発リソースを割かれる状態を「負債」と呼び、その解消のために日々戦っています。 さらに、「Ameba」には現在10名ほどのデザイナーが携わっており、それぞれが異なる施策や領域を対応していることも相まって、施策を経る毎に、「Ameba」内でGUIに関する、共通の意識や見解を持つことができなくなっていました。 この状態を打開し、「Ameba」プロダクト再興の礎を構築しようと、今年度からデザインシステムの開発をスタートしました。 今回はそのデザインシステムの中でも真っ先に取り組んだ要

    「Ameba」15年の負債を払拭するカラーパレットのメソッド | CyberAgent Developers Blog
    o_hiroyuki
    o_hiroyuki 2020/09/14
    すごく丁寧に細かく設計されてた。次のプロジェクトで参考にさせてもらう
  • 1体12分!?3日間でモンスターを100体描くためのイラスト時短術 | CyberAgent Developers Blog

    こんにちは。サイバーエージェント デザイナーの渡辺です。 今回はスピード&クオリティをモットーに制作した脳トレパズル『monster block』のキャラクターデザインについてご紹介したいと思います。 『monster block』とは? 新感覚の脳トレパズル。宇宙に散らばっている全てのブロックを、1球のボールで消すことが出来たらステージクリアです。クリアする毎に1体のモンスターに出会え、様々な難易度のステージを全てクリアすると100体以上のモンスターに出会えます。 [App Store] [Google Play] 『monster block』の開発チームはデザイナー1人、エンジニア1人、プロデューサー1人の3名体制。スピード&クオリティ重視の開発ということで、アプリ1を1.5か月くらいでリリースできるのが理想だと話し合っていました。 1.5か月で全て完成させてリリースをするためには

    1体12分!?3日間でモンスターを100体描くためのイラスト時短術 | CyberAgent Developers Blog
  • デザイナーが伸び悩まないためのスキル27分類 | CA BASE CAMP | CyberAgent Developers Blog

    前回の記事で18分類までを紹介 前編 → https://developers.cyberagent.co.jp/blog/archives/4875/ 後編 → https://developers.cyberagent.co.jp/blog/archives/5038/ ケーススタディ CASE 01:可視化してフィードバック 以前の記事でも書かせていただいていますが、そもそも27分類のスキルの使い道はここにあります。日々の面談や評価のフィードバックなど、デザイナーメンバーとの対話の際に以下の様なシートを使っています。 シートには、各フェーズごとの9項目と “ よかった ” と “ 期待 ” の欄があります。 よかった → 成長した、達成できた 期待 → いま足りていない 「よかった」と「期待」は2〜3項目でづつピックアップして書くのがルールです。全て書いてしまうと結局どこが良くて、ど

    デザイナーが伸び悩まないためのスキル27分類 | CA BASE CAMP | CyberAgent Developers Blog
  • デザイナーが伸び悩まないためのスキル18分類【基礎スキル編】 | CyberAgent Developers Blog

    これらのスキルが全てパーフェクトに備わっていなければならない訳ではありません。人それぞれバラつきがあって当然です。 あくまでもデザイナーとしての成長過程で、自己理解をしながら取り組むべき課題を可視化して成長してもらうことが目的となります。 フィードバックの方法 個別のスキルの説明に入る前に、フィードバックの方法がかなり重要なので、触れたいと思います。 9分類の中から “ 良いところ ” と “ 期待したいところ ” (指摘や注意など)を必ずセットで2〜3つづつをフィードバックします。どちらか一方のフィードバックでは、最悪なコミュニケーションになってしまうことは、想像できると思います。ここでは、個人のスキルをポジショニングして、可視化することが重要です。 例えば… 絵作りや装飾を作り込むことが得意なデザイナーが、バナーのような限られた空間でのデザインがうまく行かず苦戦するケースがあります。

    デザイナーが伸び悩まないためのスキル18分類【基礎スキル編】 | CyberAgent Developers Blog
  • 1