Sansan Tech Blog

Sansanのものづくりを支えるメンバーの技術やデザイン、プロダクトマネジメントの情報を発信

Eight

Elasticsearch(OpenSearch)を活用した採用候補者検索の同義語辞書整備の取り組み

技術本部 Eight Engineering Unit でエンジニアをしている平石です。今回は、Eight で提供している採用サービス Eight Career Design (ECD)の候補者検索機能における、検索ヒット件数改善の取り組みについて紹介していきます。materials.8card.net

Reviewdog x RuboCop を使って、ローカル環境で Lint をかける機構を自作した

こんにちは、技術本部 Eight Engineering Unit でエンジニアをやっている茂木です。 普段はSansan株式会社で正社員としてフルコミットしつつ、情報系の大学に通っています。 今回は Reviewdog x RuboCop を使って、ローカル環境で Lint をかける機構を Eight…

Core BluetoothにおけるL2CAP実装 - 基礎編

研究開発部の堤と申します。先日Eightのモバイルアプリで「タッチ名刺交換」という機能をリリースしました。 この機能では BLE (Bluetooth Low Energy) を利用するのですが、コアライブラリも含めて開発メンバーの誰でもメンテできるよう、6月頃にEight iOS…

Elasticsearch (OpenSearch) を活用した採用候補者検索機能の精度チューニングの取り組み

こんにちは!技術本部 Eight Engineering Unit でサーバーサイドエンジニアをしている常盤です。 今回は、Eight が提供している採用プラットフォームである Eight Career Design (ECD) の候補者検索機能の検索精度を改善した取り組みを紹介したいと思います。…

Eight の Node.js を 16 から 20 にアップデートしました

こんにちは。 Eight でエンジニアをしている鳥山(@pvcresin)です。 今回は、Eight で使用している Node.js をアップデートした際の手順や、ハマったところについてお話ししたいと思います。

Core Bluetoothで距離推定

研究開発部の堤と申します。6月からマネージャーからエンジニアに戻り、今は毎日コードを書いております。 現在弊社では「タッチ名刺交換」の開発を行っています。この機能では BLE (Bluetooth Low Energy) を利用するのですが、コアライブラリも含めて開発…

Google Playで定期購入を値上げする

技術本部 Mobile Application Groupの山本です。名刺アプリEightの開発を行っています。今回はGoogle Playでの定期購入の値上げについてお話しします。値上げはただ価格を上げればいいのではと思うかもしれません。しかしGoogle Playでは定期購入の既存ユー…

フロントエンドの本番ビルドに SWC を導入して、ビルド時間とメモリ使用量を同時に削減する

こんにちは。 Eight でエンジニアをしている鳥山(@pvcresin)です。 今年はいくつも BBQ の予定がたっていて、コロナ禍前の日常に戻りつつあることを実感しています。 BBQ ならラムチョップが好きです。 今回は、Web フロントエンドの本番ビルドに SWC を導…

Eight Androidアプリにおける状態管理の見直し

こんにちは。技術本部 Mobile Application Groupの山本です。EightのAndroid版の開発を行なっています。Eightのアーキテクチャは何度か部分的な見直しを行なっているのですが、現在の主流からは古くなってしまった部分も存在します。そのため全面的に見直し…

複数のサービスを横断して Web フロントエンド開発の支援を行う、Frontend Enabling 業務の紹介

こんにちは。 Eight でエンジニアをしている鳥山(@pvcresin)です。 最近は芸人のラランドのラジオにハマっています。「お母さんヒス構文」が好きです。 さて今回は、私が普段行っている Frontend Enabling 業務の紹介をしたいと思います。

名古屋初のEightの内定者インターンをしてきた話

はじめに Sansan中部支店 初のエンジニア内定者インターンの23卒のウチウゾウです.約半年間,Eightのイベント事業に関するプロダクト開発に携わり,チーム開発における「いろは」を学びました.今回は,私が中部支店での内定者インターンを通して,何に向き…

Eight Androidチームで取り組む「常に改善をまわす」取り組み

こんにちは!Sansan 技術本部 Mobile Applicationグループのふるしんです。 furusin (@furusin_oriver) / Twitter 本記事は Sansan Advent Calendar 2022 - Adventar 16日目の記事です。普段は大阪のオフィスでAndroidアプリの開発に従事しています。play.go…

Eight で Internet Explorer のサポートを終了するために行ったこと

こんにちは。Eight でエンジニアをしている鳥山(@pvcresin)です。 2022 年 6 月 15 日、Internet Explorer(IE)のデスクトップアプリの提供が終了しました。 それに伴い、PC 版 Eight では IE のサポートを完全に終了し、閲覧することができなくなりまし…

esbuild-loader 試してみたら開発ビルドが 2〜3 倍速くなった話

こんにちは。Eight でエンジニアをしている鳥山(@pvcresin)です。 散歩が趣味なので、暖かくなってきて嬉しい今日このごろです。 さて今回は Web フロントエンドのビルド時間短縮のため、esbuild-loader を導入した話をしたいと思います。

textlintによる表記ゆれ撲滅

Eightでフロントエンドエンジニアをしている青山です。 今回はEightのCI環境にtextlintという文書校正ツールを導入してみたので、その経緯や実施した内容をお伝えします。 サービスを複数抱えているなど、文書管理が煩雑になってチェックが大変、といった場…

旧システムという名の技術的負債を返済(削除)した話

こんにちは。技術本部 データ戦略部 Newsグループの古本です。今回は負債と化していた旧システムを、約半年の時間をかけて返済(削除)したことをお話したいと思います。 企業向けプレミアム、あらためEight Teamについて 僭越ながら今年の始めに新システムに…

Sansan Builders Stage 2021 セッションレポート 第3弾 ~Bill One & Eight編~

こんにちは、技術本部Sansan Engineering Unitの岩佐です。 2021年の4月に新卒入社し、Webエンジニアとして、クラウド名刺管理サービスのSansanの開発を行っています。 今回は11月5日に開催された弊社の技術カンファレンス『Sansan Builders Stage 2021』か…

GIF しか残ってなかったオリジナルのローディングを CSS アニメーションで再現した話

こんにちは。 Eightでフロントエンドエンジニアをしている鳥山(@pvcresin)です。 気づいたら開発者体験(DX)向上の取り組みばかり記事にしていたので、たまには実装の記事も書いていこうと思います。 今回は、ローディングを CSS アニメーションで実装し…

EightからjQueryが消えた日

Eight Engineering Unitで主にEightのWebフロントエンドを担当している青山です。 今回はEightが長年利用していたjQueryを依存から削除した、という内容を、その経緯を交えながらお伝えします。 レガシーコードをリファクタリングされているエンジニアの方々…

TypeScript を導入して 1 年が経って感じた良かったこと・困ったこと

こんにちは。Eight でエンジニアをしている鳥山(@pvcresin)です。 最近は、デザインとエンジニアリングの距離をもっと近くにできないかということばかり考えています。 なかなか難しい課題で、すぐには答えが出そうにありません。 さて今回は、以前書いた…

Sansan Technical View に参加してきました

こんにちは。 Sansan 事業部プロダクト開発部で iOS アプリエンジニアをしている中川です。 今回は 5/25 に開催された Sansan Technical View に参加してきたので、それぞれの発表についてまとめてみました。参加されていない方へとっかかりになればと思いま…

バーチャル背景プロジェクトを通して、オンラインでいかに「楽しい」体験を作るか考えてみた

はじめまして。 昼はデザイナー、夜は2歳半の子供の母をしてるEight事業部の河西です。なかなかデザイナーの頭の中をお伝えする機会はないのですが、せっかくですので最近私の中でテーマとなっている、オンラインでいかに「楽しい」体験を作るか?についてお…

TypeScript / JavaScript の import を自動でソートする

こんにちは。Eight でエンジニアをしている鳥山(@pvcresin)です。 マイブームはコンビニで買える GODIVA のベルギーダークチョコレート(アイス)を食べることです。 濃厚で甘すぎず、量も多すぎないところが気に入っています。 今回は TypeScript や Java…

Visual Regression Testingで安心できるフロントエンド環境を作る

こんにちは。Eight事業部で主にフロントエンドを担当している青山です。 今回はEightのWebフロントエンドコンポーネント集にVisual Regression Testingを導入した事例を紹介します。 他社さんの事例や勉強会を見るに敷居も下がってきているようで、遅ればせ…

まだ間に合う!node-sass(LibSass)から sass(Dart Sass)への移行

こんにちは。 Eight で エンジニアをしている鳥山(@pvcresin)です。 違う違うと自分に言い聞かせていますが、おそらく花粉症になってしまいました 在宅勤務で良かったです。 今回は Sass のコンパイルに使用しているライブラリを node-sass(LibSass)か…

compass-mixins から PostCSS の Autoprefixer に移行する

こんにちは。 Eight でフロントエンドエンジニアをしている鳥山(@pvcresin)です。 最近、事業部長に Slack の絵文字をプレゼントするという実績を解除しました。 早く使われないかなとそわそわしています。 さて今回は、Sass の mixin を集めたライブラリ…

AWS GlueでのETL処理チューニング

はじめに こんにちは!名古屋支店でEight事業部プロダクト部に所属する齊藤です。 Sansanに中途入社して2年目を迎えました。 普段はMeetsというサービスの開発・運用に携わっています。 meets.8card.net 今回人生で初めてビックデータを使った本格的なETL処…

サービスを止めずに旧システムから新システムへデータ移行した話

こんにちは。Eight事業部の古本です。業務ではEight企業向けプレミアムサービスのサーバー側の開発・運用を担当しています。ひそかに次世代機はXBoxが気になっています。 Eight企業向けプレミアムサービスについて 今回のデータ移行の対象となった企業向けプ…

2020 2週間サマーインターン Eightで見つけたエンジニアとしての自分

はじめに こんにちは!Sansan SUMMER INTERN 2020に参加した大久保です。私は、Eightが提供しているダイレクト採用プラットフォームであるEight Career Design (ECD)チームのサーバーサイドエンジニアとしてジョインして「候補者検索機能の刷新」を担当しま…

eslint-loader の使用をやめることで、ビルド時間を短縮した話

こんにちは。 Eight 事業部でエンジニアをしている鳥山(@pvcresin)です。 最近は、持ち手部分に適度な厚みと重さがあるいい感じのカトラリー(食卓用のナイフ・フォーク等)を探すのにハマっています。 おすすめのものがある方はご一報いただければ幸いで…

© Sansan, Inc.