技術

Scala Linter (Scalafix) 入門

はじめましての方ははじめまして! Scala エンジニアの Javakky です。 本日は Scala Advent Calendar 2022 5日目ということで、僕が普段利用している Linter である、 Scalafix についてお話ししていこうと思います。 qiita.com Linter とは? Linter とは…

【2022.10.23】モバイルアプリ開発の知見を共有!pixiv App Nightを開催しました

ピクシブ株式会社は、モバイルアプリエンジニア向けのイベント「pixiv App Night」を定期的に開催していく予定です。 このイベントではiOS / Androidのエンジニアが一堂に会して、クリエイターの創作活動を支えるアプリのウラ側を質疑応答も交えながら、ざっ…

GitLab GCPに 移行した(前編)

こんにちは、インフラ部の id:sue445 です。 先日ピクシブ社内で利用しているGitLabをオンプレミス環境からGCPに移行しました。 とても長いので全3回にわけて紹介したいと思います。 全体の構成 前編:前置きとアーキテクチャ検討 中編:環境構築 後編:実際…

Scala プロジェクトでの Mockito 活用事例

はじめましての方ははじめまして。 Scala エンジニアの Javakky です。 今回は、弊チームで行われた Mockito の導入レポートについて代筆していこうと思います! Mockito とは? Mockito は Java 向けのモックフレームワークです。 site.mockito.org テスト…

pixivFACTORYでは事業開発に携わるバックエンドエンジニアのメンバーを募集しています

こんにちは。ピクシブで採用担当をしているokayuです。 ピクシブでは現在、pixivFACTORYというプロダクトを支えるバックエンドエンジニアを大募集しています。そこで今回は、FACTORY部のエンジニアhayaよりピクシブのバックエンドエンジニア業務についてご紹…

秒間10万リクエストを支える!ピクシブではインフラエンジニアを募集しています

こんにちは。ピクシブで採用担当をしているokayuです。 突然ですが皆様、ピクシブのインフラ規模をご存知ですか?ピクシブでは20以上の自社サービスを開発運用していますが、約300台規模のサーバなどからなるインフラ基盤も自社で構築・運用を行っており、秒…

1000人規模を支えるシステム環境作りを目指す、コーポレートエンジニアチームにインタビューしました!

みなさん、こんにちは。技術広報室におりますkamikoです。 2022年10月現在、ピクシブ株式会社の社員数は281名、アルバイトを含めると300名を超える規模にまで成長しました。また今後も積極的に採用を続けていく予定です。 社員規模が大きくなれば、社内制度…

GitLab の Merge Request でテストカバレッジを可視化した

はじめましての方ははじめまして。 Scala エンジニア Javakky です。 今回は、 Scala のテストカバレッジツールである scoverage の導入方法と、 GitLab を使った可視化について見ていきます。 scoverage とは scoverage は Scala 向けのテストカバレッジ計…

複雑なものをより簡単に解決したい!BOOTHのバックエンドエンジニアが大切にするコードを書くまでのプロセス

皆さん、こんにちは。技術広報室のkamikoです。本日はBOOTHチームで活躍するバックエンドエンジニア3名のインタビュー記事を皆さんにお届けいたします。 BOOTHとは、クリエイターが作品やグッズを販売し、それをファンが購入できる、創作のためのマーケット…

会津大公認サークルZli 大LT大会に参加しました!

こんにちは、技術広報室のkamikoです。 先月10月15日、会津大学公認サークルZli主催のLT大会が開催されました。LT大会では学生だけでなく協賛企業の社員も登壇し、ピクシブ株式会社からは、エンジニア2名が発表を行いました。 LT大会は会津大学生のみ参加可…

Notionでスクラム開発のバックログ管理をする話

こんにちは、ピクシブで新規事業部に所属しています、ああうえ(@_kwzr_)と申します。所属している部署では2019年ごろからスクラム開発を導入しており、スクラムマスターをやっていた時期もあります。 今回は、バックログをClickUpからNotionに移行した理由や…

ピクシブに山形からフルリモートでアルバイト勤務してみて良かったこと

みなさんこんにちは! 新規事業部 VRoid部アルバイトのGaoです。 普段は VRoid Hub の新機能のデバッグを行ったり、ヘルプ記事の執筆をしたり、新しいプロジェクトの立ち上げのお手伝いをしています。 山形大学の学生でもあるので、勤務形態はフルリモートな…

Slack Platform(Deno)でチーム開発に便利なbotを作った話

こんにちは。ピクシブで新規事業部に所属しています、ああうえ(@_kwzr_)と申します。 最近、自分の所属する部署で飼っている便利botをSlack Platformで作り直したので、その紹介をしようと思います。 Slack Platformとは、Slack上にアプリケーションをホステ…

【Scala】任意の値からメソッドチェーンを生やすメソッドを車輪の再発明した話

はじめに はじめましての方ははじめまして。 Scala エンジニアの Javakky です! 今回は、 Scala の標準ライブラリにある pipe / tap というメソッドを求めて旅した過程を書いていこうと思います。 pipe / tap とは? Scala Standard Library 2.13.6 - scala…

アプリのテストにMagicPodを導入している話

こんにちは、ピクシブで新規事業部に所属しています、ああうえ(@_kwzr_)と申します。普段のプロダクト開発に加えて、全社的なモバイルアプリ領域の開発体験の向上に取り組んでいます。 今年の3月くらいから、AIテスト自動化プラットフォームのMagicPodをアプ…

ピクシブ百科事典のフロントエンドをリファクタリングした話

こんにちは。福岡オフィスで課題解決部に所属しているエンジニアの petamoriken です。趣味で ECMAScript の動向を追ってたりします。よろしくお願いします。 この記事では私がレガシーだったピクシブ百科事典のフロントエンドを如何にしてリファクタリング…

コミュニケーションデザイナーとインターンノベルティをアップデートした話

みなさん、こんにちは。ピクシブの人事部におりますkamikoです。 ピクシブでは学生が「圧倒的猛者になる」ことを目的に、エンジニア職向けインターンを年二回開催しています。インターン成功のために様々な準備をしていますが、今年からコミュニケーションデ…

ピクシブ株式会社はDroidKaigi 2022に協賛します

ピクシブ株式会社は2022年10月5日から7日にかけて開催される、DroidKaigi 2022にサポータースポンサーとして協賛します。 droidkaigi.jp ピクシブ株式会社はDroidKaigi 2017より毎年協賛させていただいております。今年は特に東京ドームでの大規模な開催とい…

レイテンシ異常を解決するためにIngressを導入した話

こんにちは!アドプラットフォーム事業部アド・プロダクト部でアルバイトとして働いているHonahukuです。今回は、アド・プロダクト部が運用しているGKEのクラスタに対して HTTP負荷分散用 GKE Ingress(以下Ingress)を導入した話をしたいと思います。 Ingress…

RubyKaigi 2022 レポート たのしい型情報編

アドプラットフォーム事業部テックリードのsakiです。 先日のRubyKaigi 2022にピクシブのエンジニアは9名が参加し、私も多くのセッションを聞きました。 どれも興味深かったのですが、今回は特に型情報の話に注目しました。業務ではRubyと並んでGoを使うこと…

津の片隅からファイバーなしでライブ配信する技術 #rubykaigi #ruby_music_mixin

こんにちは、CTOのharukasanです。CTO以外にImageFluxのプロダクトオーナーもやっています。 ピクシブは三重県津市で開催されたRubyKaigi 2022にMusic Lounge Sponsorとして参加しました。 Ruby Music Mixin ピクシブでは最終日2022/09/10 (土)にRuby Music …

【機械学習インターン】タグ推薦モデルとWeb APIの構築

はじめまして!機械学習エンジニアリングチームで長期インターンをしているhikaru.tです。 この記事では、長期インターンにて取り組んだタスクについて、紹介させていただきたいと思います! 取り組んだタスク pixivには、アップロードした画像を見て、おす…

機械学習バッチ実行環境を整備した話

はじめまして。 機械学習チームにてレコメンドの改善を行っているgumigumi4fです。 本記事では、機械学習チームの取り組みの一環として機械学習等のバッチを含むバッチ実行環境を整備した話について話したいと思います。 今までのバッチ実行環境 機械学習チ…

大規模ふりかえりを支える設計技術

おはようございます、bashです。2022年9月7日の朝です。 先日、企業課題別のIT戦略事例を知るオンラインセミナー「IT surf seminar 22」に登壇させていただき、「業務という創作活動がもっと楽しくなる場所をつくる」というワードを公には初めて語りました。…

エンジニア方針討論会の取り組み

はじめましての方ははじめまして。ピクシブで Scala エンジニアをしている Javakky です。 今回は、弊チームで行なっているエンジニアの意思決定・相談会の取り組みについて紹介していこうと思います。 実装・設計・方針討論会 今年の2月からチーム内ではじ…

pixivをNext.jsでリプレイスする取り組みをご紹介します。

pixivではNext.jsを用いたフロントエンドのリプレイスプロジェクトを2022年3月末より行っており、現時点(2022年8月)でリクエスト機能をNext.jsにてリプレイスしました。 今回のpixiv insideではピクシブ株式会社で働くエンジニアの取り組みとして、pixivのフ…

pixiv と OSS と わたし

はじめましての方ははじめまして。ピクシブで Scala エンジニアをしている Javakky です。 今回は、僕がピクシブ株式会社で働く中で、 OSS と関わるようになったきっかけについて話したいと思います。 入社 と OSS 私は、2020年の 5月に内定者アルバイトとし…

全社横断のレコメンドAPIを開発した話

はじめまして 機械学習エンジニアリングチームのsugasugaと申します。 今回は、自分が直近で行っていた全社横断のレコメンドAPIの開発について紹介します。 既存の仕組み ピクシブ株式会社は、イラストコミュニケーションサービス「pixiv」を中心にクリエイ…

Scala でテストを分類して外部の API を叩く

はじめましての方ははじめまして。ピクシブで Scala エンジニアとして働いている Javakky です。この記事では、当プロジェクトを担当してくれた piyo さんに代わってお送りさせていただきます。 今回は、「外部の API を実際に叩いて確認するテストも欲しい…

データエンジニアリング互助会の取り組みについてご紹介します

初めましての方は初めまして、そうでない方はこんにちは、@fono です。 平常の業務では、pixivision のバックエンド各種実装、GoogleAnalytics4移行やデータ整備などをやっています。 特に、pixivisionは2014年から提供している弊社オウンドメディアで、諸々…

2年目エンジニアが行った技術選定のプロセスを公開します!

はじめましての方ははじめまして。ピクシブで Scala エンジニアとして働いている Javakky です。 突然ですが、ピクシブのエンジニア職組織で行っている「プロセス評価」とはご存知でしょうか? 現在では少し異なりますが、過去の活動についての記事はこちら …

Rails系サービス互助会の取り組みについてご紹介します

こんにちは、sakiです。普段は広告事業のプロダクト開発やテックリードをしている人ですが、今回はRubyとRuby on Railsのお話です。 ピクシブでは多くのサービスでRuby on Railsを使っており、例えばBOOTH、pixivFACTORY、pixiv Sketch、VRoid Hub、pixivコ…

pixiv SketchのSSRをFluxibleからNext.jsにリプレースしました!

pixiv SketchのWeb版はReact + FluxibleでSSRを実現していました。 今回、FluxibleというライブラリをRedux Toolkit + Next.jsでリプレースした話をさせていただこうと思います。 このリプレースで狙った効果は、クライアントサイドのパフォーマンス向上と、…

vite で最高の開発体験を手に入れる

どうも、ピクシブでフロントエンドエンジニアをやっている @uzimaru0000 です。 今回は、vite を使ったプロダクト開発をしたのでそれの知見を共有したいと思います。 なぜ vite なのか 弊社のプロダクトのフロントエンドではモジュールバンドラーに webpack …

Androidアプリ会の取り組みについてご紹介します

@verno3632です。 普段はpixiv Androidアプリの開発を担当したり、Androidアプリ分野テックリードとして、弊社の提供するAndroidアプリの品質や開発速度の向上を目指しています。 また、新卒エンジニアのメンターの統括も行っており、新卒エンジニアが成長を…

iOSアプリケーションエンジニアたちが集う、りんごの会についてご紹介します

みなさんこんにちは @FromAtom です。普段はpixiv SketchのiOSアプリを開発をしたり、iOSアプリ分野テックリードとして、弊社の提供するiOSアプリの品質向上や開発速度向上を目指しています。少し前までは、モバイルアプリ分野全般のテックリードをしていた…

良薬口に苦し!?カルテ携えた "主治医" に診てもらうRailsプロダクト健康診断のご紹介

ピクシブには数多くのRails製プロダクトがあり、それらを各チームで開発しています。 各チームでの知見や悩み事を共有するRails系サービス互助会というものもありますが、今回はRailsアプリケーションを健康に保つための取り組みであるRailsプロダクト健康診…

新卒研修で「ソフトウェアテスト研修」を実施しました!

こんにちは。クリエイター事業部 FANBOX部でエンジニアをやっているkumaです。今回は新卒研修で行った「ソフトウェアテスト研修」についてのレポートをお伝えします! ピクシブにおける新卒研修 2022年4月1日、ピクシブ株式会社にも10名の方が新卒として入社…

ScalaMatsuri 2022 に参加してきました!

はじめましてのかたははじめまして。 Scala エンジニアの Javakky です。 今回は去る 3/19 (土)、 3/20 (日) に行われた ScalaMatsuri 2022 の参加レポートをお送りしていきたいと思います! ScalaMatsuri とは? ScalaMatsuri はアジア最大級の Scala カン…

Scalafix (Linter) のルール開発をした話

はじめましての方ははじめまして。新卒期間も終了し、晴れて一般エンジニアになりました Javakky です。 今回は、 Scala の Linter であり自動リファクタリングツールでもある Scalafix について、ルール開発の流れについて話していこうと思います。 github.…

環境を GitLab CI に移行してビルドを高速化した話

はじめましての方ははじめまして。ピクシブで Scala エンジニアとして働いている Javakky です。 今回はビルド高速化 / デプロイの利便化のためビルド環境を Jenkins から GitLab に移行しましたので、そのレポートをお送りしていきたいと思います。 弊社の…

ピクシブは Ruby アソシエーションへのスポンサーシップを通じて Ruby コア開発の支援を開始します

pixiv事業本部の丸山(@alitaso)です。 2022年4月よりピクシブは Ruby アソシエーションの Platinum スポンサーとして協賛を開始しました。 ピクシブ株式会社 - Ruby Association www.ruby.or.jp Ruby アソシエーションとは Ruby Associationは、プログラミン…

pixiv のデザインシステム実装『charcoal』を OSS 化します

こんにちは、@f_subal です。普段はおもに pixivFACTORY のフロントエンドを見たり、社内のデザインシステム整備の仕事をやったりしています。 さて、2021年に開催した弊社カンファレンス #pixivdevmeetup にて発表しましたデザインシステムの Web 版実装が…

ParamHelperにPSR-7とValueObject の力を授けた話

こんにちは、VTuberとPHP をこよなく愛しているふじしゃんです。 去年の7月からpixiv運営本部 Webエンジニアリングチームでアルバイトをしています。 今回は、pixivのParamHelperにPSR-7とValueObjectの力を授けたRequestParamFilterをピクシブ百科事典に実…

Google Cloud Secret Manager を使って機密情報の保存をセキュアにした話

はじめましての方ははじめまして。21新卒エンジニアの Javakky です。 突然ですが質問です!みなさんは本番環境で利用するDBのアクセス情報などの機密情報はどこに保存していますか?弊チームでは、社内でホスティングしているGitLabを利用しており、リポジ…

みんなでプロダクトをつくる「おもちゃ箱」の取り組み

こんにちは、pixivのリクエスト機能を開発するチーム(以下、リクエストチーム)で22新卒として内定者アルバイトをしているsaitoです。 リクエストチームでは、コミッションという新しい領域に挑戦しています。リクエスト機能をリリースして1年が過ぎた今で…

Scala で Writer モナドを利用して警告処理を実装した話

はじめましての方ははじめまして。21新卒エンジニアの Javakky です。 今回は、「ログに出力はしたいけど、ロジックからは分離したい」そんなモチベーションを叶えるモナド、 Writer モナドを利用した話について書いていきます。 前回のお話 社内の管理画面…

GitLab を利用したプロジェクトに Scala Steward を導入して依存関係を継続的に更新する仕組みを作った話

はじめましての方ははじめまして。21新卒エンジニアの Javakky です。 今回は、リポジトリの依存関係を最新に保つための取り組みを始めたので、そのレポートになります。 背景 私の部署では Scala というプログラミング言語と sbt というビルドツールを利用…

高アジリティなチーム活動知見を交換する社内コミュニティ t-agileのご紹介

高信頼性ソフトウェア研究会 bashです。 ピクシブでは、プロダクト開発に必要な多様な職能のメンバーからなるチームを組んで、何を実現すべきかの探索から、設計・実装・テスト・リリース、そしてフィードバックを得て再考するというすべてのアクションをチ…

WACATE2021 冬に参加してきました #WACATE

こんにちは!クリエイター事業部 FANBOX部でエンジニアをやっているkumaです。pixivFANBOX開発とソフトウェア品質・テストに関する技術互助会「t-software-quality」活動に携わっています。 inside.pixiv.blog 2021年12月12日、 12月19日の2日間で行われたWA…