Sansan Tech Blog

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

Eight

Eightのデータ抽出基盤をサーバーレスで作る際に工夫したこと

こんにちは、Eight Engineering Unitの井上です。 Eightのデータ抽出基盤である Data Management Platform(以下、DMP)の開発を担当しています。 はじめに Eightは330万人を超えるユーザーにご利用いただいており、お預かりしているデータ量も日々多くなっ…

30代からプログラミングを本格的に始めたエンジニアが生産性について思うこと

最近キーボードで文字を打つのが面倒になってきている技術本部 Eight Engineering Unitの斉藤です。 キーボードは既に100年以上使われ続けているみたいですね。そろそろ新しい入力の方法ができてもよさそうです。 例えば、頭で考えていることが文字に起こせ…

AndroidでBluetooth Low EnergyのL2CAP通信を行う方法と開発で得た知見

技術本部 Mobile Applicationグループに所属する北村です。SansanとEightの両プロダクトをまたぐプロダクト横断チームの一員として、モバイル領域の中長期的な技術的課題の解決や、PoCの開発を担当しています。今回は昨年9月にリリースした、Eightのタッチ名…

生産性指標をFour Keysから変更した話

技術本部 Mobile Applicationグループの山本です。名刺アプリEightの開発を行っています。今回はMobile ApplicationグループのEight開発チームの生産性指標をFour Keysからベロシティを含む別の値に変更した話をします。一般的にはベロシティは生産性指標に…

Eight iOSアプリにおけるNFCを利用したタッチ入場機能の開発

技術本部Mobile Applicationグループの藤門です。 23卒としてSansan株式会社に入社し、iOS版のEightの開発に従事しています。今回の記事の目次は以下の通りです。 本記事の概要 BIS 2024について タッチ入場受付機能について タッチ入場受付機能でNFCを利用…

バックログへの向き合い方の変遷

こんにちは、Eight事業の開発責任者の大熊です。 Eight事業では、ビジネスパーソン向けの名刺アプリ「Eight」を中心にそのプラットフォーム上でさまざまなサービスを展開しています。最近ではビジネスイベントとITを掛け合わせた新しいイベント体験を創出す…

NFCタグ読み取り機能を使ったイベント受付機能を開発した話

技術本部Mobile Applicationグループの森です。 EightのAndroidアプリを開発しています。Eight主催のイベントでEightアプリを使って簡単に入場できる機能を開発したので、その紹介をしたいと思います。

レガシーに向き合う - Reactのクラスコンポーネントを置き換える前にやるべきこと

こんにちは。Eightでエンジニアをしている藤野です。 Sansan Tech Blogに最後に記事を書いたのが2020年12月なので、約3年ぶりの投稿になります。時の流れって恐ろしい。 今回は、Reactのクラスコンポーネント(Class Component)を関数コンポーネント(Function…

Floating UIのすすめ: 特徴と使い方を紹介

こんにちは。2023年にSansanに新卒として入社し、Eightでエンジニアをしている徳永です。人生初ブログとなるのでドキドキしながら書きました。ユーザーがボタンなど特定の要素をクリックまたはタップしたときに表示される、小さなウィンドウやボックスの UI …

GitHubにプッシュする前にシークレットスキャンを行う機構を自作した

こんにちは、技術本部 Eight Engineering Unit でエンジニアをやっている茂木(@shinnopo_)です。 今回は前回のブログで執筆した、ローカル環境で Lint をかける機構を利用して、pre-commit 時にシークレットスキャンを行うようにした話をしていきます。 前…

Eight Team kintone連携機能の開発

こんにちは。技術本部 Eight Engineering Unit でエンジニアをしている辻です。 少し前にはなりますが、Eight Teamの新しいオプション機能としてkintoneとの連携機能をリリースしました。 規模的にも結構大きめの開発だったので、具体的にどのように作ったか…

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を依存から削除した、という内容を、その経緯を交えながらお伝えします。 レガシーコードをリファクタリングされているエンジニアの方々…

© Sansan, Inc.