VISASQ Dev Blog

ビザスク開発ブログ

技術記事

ビザスクで利用している技術に関する記事。

朝会にSlack Canvasを使ったら捗った話

毎日の朝会のテンプレートにSlack Canvasを使ったら捗った話を紹介します。

Elasticsearch と On Your Data を使った RAG の実現

「GPT-4o」が5月にリリースされて、この記事を書く準備をしていたら、数日前に「GPT-4o mini」がリリースされて、「マジ!?」 となっている今日この頃 リモート勤務と電気代の天秤に絶賛悩んでいる 検索チームの tanker です。 (一応補足すると、会社から一…

Dependabotを導入してライブラリの脆弱性対策を自動化する

こんにちは!クライアント開発チームの安野です。 クライアント開発チームでは、クライアントポータルという to B 向けのサービス開発を担当しており、私はそこでフロントエンド・バックエンドの開発に携わっています。 クライアントポータルの内容はこちら…

Cloud SQL for MySQL 5.7 のデータを Cloud SQL for MySQL 8.x へ DMS を利用して移行してみた

はじめに こんにちは!DPE(Developer Productivity Engineering)チームの高畑です。 最近カーオーディオにハマっていて、スピーカーを変えたり DSP アンプを導入したりとオーディオの沼に腰あたりまで浸かってしまいました。 スピーカーケーブルをちょっと…

Google Cloud コスト適正化への道〜Cloud Run編〜

暑くなってくるとだんだん食欲がなくなってきませんか?今年もそんな季節となりました。 今年の夏は北海道に行く予定です、私は本当にやるぞ。DPEチームの嶺岸です。 ところで、パブリッククラウド高くないですか? 使った分だけお支払いいただきます、この…

gunicornのパフォーマンスチューニング

はじめに 前提 公式ドキュメントに書いてあること 検証 リバースエンジニアリング 検証 2 まとめ はじめに gunicorn の設定難しくないですか? 弊社のアプリケーションサーバーの一部は Django + gunicorn で構成されています。 このサーバーでレイテンシが…

拡散モデルのサンプリング性能の良さを体感してみる

はじめに 検索チームの tumuzu です。 画像生成などの技術的進歩は凄まじいですね。簡単なプロンプトから綺麗で多様なデータが生成されていて驚きっぱなしです。そこで拡散モデルの理論的なところが気になったので勉強して記事にしてみました。 この記事では…

JiraServiceManagementを利用したヘルプデスクチケット管理

こんにちは、プラットフォーム開発グループ ITチームのナカジマです。 先日ITチームのつみちゃん氏からJiraServiceManagementというITヘルプデスク管理ツールの導入経緯や効果について発信がありましたが、今回はチームがこのツールを適切に運用できるように…

SQLAlchemy 2.0 の Eager load 入門

ビザスク開発1グループ エキスパート/lite 開発チームのよしけーです! もうすぐ風来のシレン6が発売されますね。自分は初代とアスカ見参!しか経験がないのですが、14年ぶりの新作ということで久しぶりに手を出してみようかと思ってワクワクしている今日こ…

GitHub ActionsにTFLintを導入しました

こんにちは、今年の10月に入社したプラットフォーム開発グループ DPEチームの酒井です。 先日 GitHub Actions に TFLint と Trivy を導入しました。 まとめて書くと長くなってしまうので、今回は TFLint 導入編です。 今回説明する部分は以下になります。 TF…

エンジニア全員が Terraform を安心・安全に触れるような仕組みを整えています

はじめに こんにちは!DPE(Developer Productivity Engineering)チームの高畑です。 ちょっと前に iPhone 15 Pro に変えてようやく USB-C ケーブルに統一できる!と思っていたら、手元にある Magic Trackpad が Lightning ケーブルでしょんぼりしました。 …

Auth0 と Mixpanel を連携して簡易エラー通知を実現する

こんにちは、ビザスク開発グループ クライアント開発チームの松下です。 直近で大きめのリニューアルプロジェクトを完遂し、その中で Auth0 と Mixpanel の連携について知見を得たのでブログ記事にしてみます。 Auth0 とは 認証プラットフォームの IDaaS で…

tmuxの知られざるパワフルな機能を紹介してみる

はじめまして。エキスパート/lite 開発 の倉光と申します。 今回初の記事投稿として、私が日々愛用している tmux の紹介ができればと思います。 自己紹介 本編に入る前に、簡単に自己紹介をさせてください。 私は 2022 年 8 月にビザスクに入社し、気がつい…

21世紀のターミナルアプリ使ってみた

title はじめに こんにちは、expert/lite開発チームの下山です。 macユーザのみなさん、ターミナルアプリ何を使っていますか?やっぱりiTerm2ですか? そろそろ鞍替えしたいな〜と密かに思っているみなさんのために、21世紀のターミナルアプリを謳うWarpをご…

iPaaSを活用したコーポレートエンジニアリング

iPaasの強化 これまで ITチームのコーポレートエンジニアは社員のコミュニケーションツールの利便性向上やバックオフィス業務の効率化を支援しています。具体的にはSlackやTrello、SmartHRなどのサービス利用支援や、サービス間をZapierやGoogle App Script…

InnovatorLiveJapan 【現場の本音】でお話ししてきました

2022/02に入社してから1年半くらいインフラっぽいことを網羅的にやってます。坂本です。 Developer Productivity Engineering (DPE)チームに所属しています。 インフラのお仕事をしてる関係でGoogleさんにお声かけていただき、 Googleさんのオンラインイベ…

不死鳥MySQLを倒す

こんにちは、expert/lite開発チームの下山です。 今回はMySQLを止めたくても1人で止められなかったため、その備忘録として残します。 助けてくださった皆さん、ありがとうございます泣 環境 MacOS Monterey 12.6.2 MySQL 5.7.41 不死鳥MySQLを見てほしい な…

メンテナンスの仕組みを刷新してみた件

こんにちは!DPE(Developer Productivity Engineering)チームの高畑(Sorarinu (@int_sorarinu) / Twitter)です。 最近は月一のキャンプを楽しみに日々を生きていて、栃木県のとあるキャンプ場が最高すぎてリピートしまくっています。 今回は、ビザスクの…

ProfilerとRallyで挑む、Elasticsearchを使った検索機能のレスポンス速度改善

こんにちは、検索チームのよこやまです。最近はもっぱらハイラルにいます。世界を救うことを放棄して行う探索と工作はとても楽しいですね。 検索チームでは複数のプロダクトにわたり検索機能を管理しています。その中で、ある検索エンドポイントのみレスポン…

ChatGPT判別器の論文読んでみた

今年のGW は久しぶりに遠出をしてはしゃいできた 検索チームの tanker です。 (福利厚生の整体費用補助制度を使って疲れた体のリセットもできますよ!) AI は敵か味方か!ChatGPT との付き合い方を絶賛試行錯誤中しています。 ITチームのナカジマの記事のよ…

Flake8をRuffで置き換えると爆速で感動した

Rust製のPythonリンターであるRuffがあまりに爆速で感動したのでご紹介します。 Ruffとは https://github.com/charliermarsh/ruff RuffはRust製のPythonリンターでFlake8、isort、pydocstyle等のリンターを代替する互換性を持ちます。 Flake8等の既存のリン…

ChatGPTをZapierで使う

こんにちは、ITチームのナカジマです。 コーポレートITエンジニアとして社内ITシステムの改善をローコード・ノーコード開発で行なっています。 2023/4現在ChatGPTという対話型AIサービスが世間を賑わせておりますが、普段ノーコード開発サービスとして使用し…

A Philosophy of Software DesignとClean Codeを対比する

こんにちは、検索チームのよこやまです。 近所にとても良いカフェを見つけたのですが、あまりにもお客さんがいないので潰れないかハラハラしております。 先日 A Philosophy of Software Design (以下 APoSD と記載) を読みました。 日本語訳がまだ出版され…

Auth0 Actions の Pre User Registration トリガーで勘違いしていたこと

こんにちは、ビザスク開発グループ クライアント開発チームの松下です。 ビザスクでは認証基盤として Auth0 を導入・検証しています。 調査する中で個人的にハマったポイントについて紹介します。 Auth0 Actions とは Auth0 には Auth0 Actions という機能が…

Terraformのリファクタリング始めました

こんにちは、プラットフォーム開発グループ SREチームの西川 (@taxin_tt) です。 皆さんTerraform使ってますか? 弊社では既存サービスのマイクロサービス化を進めており、GCPベースのインフラはTerraformを利用して整備するようにしています。 一方で、サー…

TerraformでElastic Cloud上のElasticsearchの立ち上げとElasticsearch自体の設定を自動化する

こんにちは、検索チームのよこやまです。 以前趣味である文書を書いたところはてブホットエントリ入りして喜んでおりました。技術記事もそれぐらい見られたらなあと夢見ております。 ビザスクでは 1 年に 1 回 Elasticsearch のバージョンアップを行っており…

ElasticsearchのSigmoidを使って正規化した数値をスコアに反映させる

ElasticsearchのSigmoidを使って正規化した数値をスコアに反映させる 内部向けに企業名サジェスト機能を提供しているのですが、”いい感じ”の企業が上位に来るために試行錯誤しており、今回「マッチスコア」と「登録アドバイザー数」という値のスケールが異な…

GitHub Actions で特定ファイルの変更を含むプルリクにコメントする

GitHub Actionsを使って特定ファイルの変更を含むプルリクに自動でコメントを投稿する方法を紹介します。 弊社では特定ファイルを修正したときに必要な作業のリマインドに利用しています。 実装 以下のyamlファイルを .github/workflows に配置することで、h…

Pylance (type hints) の裏側を調べてみた

こんにちは、Core SRE の西川(@taxin_tt)です。普段はSREチームの一員として、インフラ周りの整備やたまにコードを書いたりしています。 ビザスクのアプリケーションのバックエンドはPythonで書かれています。普段の開発ではVS Codeを利用しているのですが…

今一度改めて Terraform ディレクトリ構造のベストプラクティスを考えてみた件

こんにちは!フルサポート開発チーム兼 Embedded SRE の高畑(Sorarinu (@int_sorarinu) / Twitter)です。 最近、スノーボードだけでなくキャンプにも手を出してしまった結果、どんどん沼にハマっていっている私ですが皆さまいかがお過ごしでしょうか。 先…