Scala

ScalaMatsuri 2023 に登壇しました!

はじめましての方ははじめまして。 Scala エンジニアの Javakky です! 今回は、 ScalaMatsuri 2023 侍スポンサー & メインセッション登壇を行いましたのでそのレポートになります。 昨年は Open Mic Conference のみの参加だったので、メインセッションは非…

当たり前で不可欠な存在、ピクシブの決済サービスチームに業務インタビューしてみました!

皆様こんにちは、技術広報室のkamikoです。ピクシブにはpixivプレミアム、pixivリクエスト、BOOTH、pixivコミック等の決済処理や送金処理を支えるシステムを開発している決済サービスチームが存在しています。 各サービスの成長に伴い決済金額・決済件数・決…

Scala Linter (Scalafix) 入門

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

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

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

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

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

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

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

pixiv と OSS と わたし

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

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

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

Play プロジェクトに Swagger UI を導入した話

はじめましての方ははじめまして。Scala エンジニアの Javakky です。 なぜ Swagger を導入するのか? 弊チームの提供している API のドキュメントはこれまで Notion で管理していました。Notionはチームのナレッジ共有として大変便利なのですが、この用途で…

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

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

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 に移行しましたので、そのレポートをお送りしていきたいと思います。 弊社の…

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

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

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

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

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

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

Scala を利用した社内向けサービスの管理画面に Casbin を導入しました!

はじめましての方ははじめまして。21新卒エンジニアの Javakky です。 この度、社内向けサービスの管理画面に権限管理機能を実装するにあたり、 Casbin というアクセス制御ライブラリを利用しましたので導入までの流れをレポートしていきます。 Casbin とは …