コーポレートエンジニア


応募要項

コーポレートエンジニア

 

コーポレートエンジニアマネジャー

 

カジュアル面談

Sansan技術本部では中途採用向けにカジュアル面談を実施しています。各プロダクトの開発チームの業務内容ややりがいを現役エンジニアの視点からお話します。「実際に働く人の話を直接聞きたい」「どんな人が働いているのかを事前に知っておきたい」とお考えの方は、ぜひエントリーをご検討ください。
 

Pick Up コンテンツ

時代のニーズと大きな可能性、 社内業務デザインが今面白い

CIO/コーポレートシステム部 部長 三浦 俊介

今回は、Sansan株式会社のCIO(Chief Information Officerの略。最高情報責任者)兼コーポレートシステム部部長の三浦俊介にインタビューを行いました。入社前はEC事業会社や制作会社などのプロデューサーやPdM/PM、UXディレクターなど、さまざまな業界で多様な職種を経験してきた三浦が、「社内業務改善が時代の焦点」だと語る理由とは。エンジニアとしてのやりがいや身につくスキルやメリットなどを聞きました。
 
自分のスキルとは畑違いのように見える領域で、活躍の幅が広がる。Sansan株式会社では、こうした転職の形が多々見られます。今回はその一つの例として、コーポレートシステム部(以下、CorpS)の青松聖弥にスポットを当てました。最初はコーポレートエンジニアには興味がなかった青松ですが、意外にも前職で積み上げたスキルが全て活かされる環境だったと言います。
聞き手は、自身も青松と似た経緯で入社したコーポレートシステム部部長、三浦俊介です。CorpSならではの役割や現在取り組んでいる課題についても詳しく聞きました。
 

コーポレートシステム部のミッション

「EX(Employee Experience)をシンプルにする」

当社のミッションである「出会いからイノベーションを生み出す」に、全社員が多くの時間を使えるような、優れた従業員体験/業務体験を提供することを目指しています

業務内容

社内の情報システム部門のコーポレートシステム部にて、データアナリストの役割を通じ、EXをシンプルにすることを実現します。
コーポレートシステム部は約40名のメンバー(契約社員・派遣社員を含む)が所属し、複数のグループで構成されています。
本ポジションは社内のITに関するデータやヒアリング情報から、活用KPIなどのダッシュボード作成や、問題の要因分析を行いデータドリブンな課題改善のアクションにつなげていきます。
※具体的な事例
  • 全社コミュニケーションのNPS調査・活用分析(Slack、Teams)
  • パスワードマネージャーのアクティビティレポート(1Password)
  • ヘルプデスクのパフォーマンスレポート(ServiceNow ITSM)
  • 社内ペルソナ別のIT利用基準指標の定義
 

 
 

「コーポレートシステム部」エンジニアに関する記事

人事評価のためのWebアプリケーションを内製化しました - Sansan Builders Blog
人事部 高橋 です。 本記事は Sansan Advent Calendar 2021 - Adventar の10日目の記事です。 このたび、社内で人事評価に使うシステムを内製しました。 このたびと言いつつ1年ほど前から運用が始まっていたのですが、やり残し等も落ち着いたこのタイミングで記事にしてみます。 従来は Kintone に人事評価のためのシステムがあり、4年ほど運用していました。Kintone の設計、カスタマイズは外注でした。 以下の要因から、システムを内製する判断が下りました。 評価設計の定期的な見直しやデータの増加に Kintone のカスタマイズ性と性能が耐えきれなくなった。 今後も人事評価の仕組みは柔軟に(同時に、効率的に入力できるように)見直していきたいという経営陣の意志があった。そのためパッケージを導入するリスクが強かった。 人事部に所属しながらWeb開発ができる人(私)がいた。*1 Sansan では人事評価は360度評価をベースにしたもので、年に2回実施しています。 ざっくりとした流れを紹介します。 管理者:社員マスタに基づき、被評価者と評価者の関連を設定する メンバー:自己評価を入力する その期間で達成したこと(Achievement)を複数入力する。各Achievementで同僚は誰か、兼務や期中の異動があった場合はどの上長に評価してもらうか、を選択する。また、Sansanのカタチをどのように体現したか、なども入力する。 一次評価者:自己評価の入力内容が適切(指名している同僚など)かをレビューする。場合に応じてコメントとともに差し戻しをする。 全社員:指名を受けた同僚のAchievementについて評価を入力する。 一次評価者:同僚評価や日々の1on1などを参考に評価を入力する。 最終評価者:同僚評価や一次評価の内容を参考に評価を入力する。 評価委員会:最終評価をベースに報酬を決定する。 Sansanの人事評価の特徴のひとつ。それは、Achievementごとの同僚評価者を本人が選ぶということです。 努力と成果を最もよく知るメンバーから声をもらうということですね。 一方で、複数プロジェクトに関与している人はそれだけ多くのメンバーから指名を受けます。全てのAchievementについて細かく評価を入力するとなると膨大な時間がかかり、本業に影響を与えかねません。それでは本末転倒です。人事評価は適正さとコストの最適化問題をどう解くか、という勝負です。このポイントは評価のたびに手法のマイナーチェンジを繰り返しています。 なお目標管理の手法としては会社としては OKR を用いています。これは評価には必ずしも連動させません。「当初予定していたプロジェクトの優先度が下がり、別のプロジェクトが立ち上がった」なんてことはよくある話(というかあるべき姿)。OKRに関わらず「達成したこと」は Achievement になります。 また、この Sansan Builders Blog への寄稿や技術イベントの登壇、あるいはちょっとした業務改善など、「プロジェクトってほどのものじゃないんだけど、会社に貢献すること」も評価の対象です。上記の Achievement とは別の立て付けですが、「本来業務以外の貢献」ということでアピールが可能です。もちろん、これが無いからと言ってもマイナス評価になることはありません。 手を動かすメンバーは私+業務委託の方の2名体制。今後の運用も軽くしたかったので、できるだけシンプルな構成にしました。 インフラ Amazon Lightsail (Instance / DB (PostgreSQL) / Load Balancer) Amazon S3 Amazon CloudWatch AWS CodeBuild / CodeDeploy バックエンド Node.js / TypeScript / NestJS フロントエンド ほか関連サービス ポイント Lightsail を採用してみました。いずれSansanでも軽めのWebアプリケーションのニーズが出た際の知見も得られたと思います。 Lightsail とは、 Web サーバーや DB がパッケージ化された VPS です。スペックも料金体系もシンプルなので、インフラに詳しくない人でも気軽に使えます。 CodeDeploy と Lightsail Instance や Cloudwatch ...
Jamf Connect の導入について(前編) - Sansan Builders Blog
こんにちは。コーポレートシステム部の寺園です。 モットーは「楽するための努力は惜しまない」です。 さて、だいぶ期間が空いてしまいましたが 以前書いたブログ で少し触れていた Jamf Connect について正式導入する運びとなったので、使ってみないと分からない Jamf Connect のあれこれをご紹介させていただこうと思います。*1 Macのローカルアカウントとアイデンティティプロバイダ (IdP) のアカウントを連携させるためのツールです。 しかしざっくりと経緯を飛ばして言ってしまうと、私は Macのゼロタッチキッティングを完成させるための最後のピース であると考えています。 と言葉で説明するだけでは何が出来るようになるのか分かりづらいと思うので、まずはこちらの動画をご覧ください。 ご覧いただいたように起動してから必要になる操作は、設定アシスタントを進めることとIdPへのログインだけです。 あとは全て自動でセットアップが進行して完了していることが分かると思います。 元々Sansanで行っていたMacのキッティングについては、Macの ADE(Automated Device Enrollment、旧DEP)と Jamf Pro との組み合わせである程度の自動化は実現出来ていました。しかしユーザ貸与するためにはアカウント作成とFileVault(ディスク暗号化)のためどうしても管理者側とユーザ側での作業が必要となっていました。 これが Jamf Connect の導入により初回ログイン時にアカウント作成とFileVaultの有効化が出来るようになるためユーザ側だけでキッティング操作が完結、つまりゼロタッチキッティングが実現出来るようになります。 以下が新旧のキッティングフローを表した図です。 ゼロタッチキッティングでは貸与後にユーザ側だけでキッティングが完結することが分かります。 まず大前提として理解しておくべきポイントがあります。 それは Jamf Connect はIdPとの同期ツールではない という点です。 冒頭で述べたように Jamf Connect はMacとIdPのアカウントを連携はしてくれますが、同期してアカウント(パスワード)を自動修正してくれるわけではありません。Jamf Connect を導入したとしてもMacの内部では何も変わらず引き続きローカルアカウントが利用されます。 Jamf Connect で出来そうで出来ないこと IdPアカウントでパスワードが変更されるとMacのアカウントのパスワードも同期して変更される → されません IdPアカウントが無効化されるとMacのアカウントも同期して無効化される → されません ここがよくある誤解だと思われます。この点を正しく理解していないと求める期待値とのギャップが生じてしまうので注意が必要です。それでは何が出来るのかと言うと主に以下の機能があります。 Jamf Connect で出来ること Macへのログイン時にIdPによる認証でログインできる IdPとのパスワード同期状態を監視してくれる IdPアカウントの情報でMacのローカルアカウントを作成できる Jamf Connect Login と呼ばれている機能です。デフォルトのログインウィンドウの代わりにIdPによる認証画面を表示させます。IdPの設定により認証のコントロールが出来るようになるためMacログイン時のセキュリティ向上にも繋がります。 実はこの機能はログインウィンドウをインターセプトしているだけで、裏側ではIdPによる認証が成功するとそのIdPアカウントのパスワードでMacのローカルアカウント認証を代行しています。よってこの認証を行うためには IdPアカウントのパスワード=Macローカルアカウントのパスワード という状態が常に保たれている必要があります。そこで必要となるのが次の機能です。 Jamf Connect メニューバーアプリと呼ばれてる機能です。Macにログインした後の稼働中にIdPアカウントとMacローカルアカウントのパスワード同期状態(一致しているか)を監視するためのアプリです。どちらか一方でパスワード変更が行われると通知を表示してパスワード変更して同期するよう警告してくれます。 ここで前提でお話していた同期ツールではないという点が理解出来たと思いますが、あくまでIdPアカウントとMacローカルアカウントの 同期状態を保つためにパスワード変更するのは自分自身 です。 Jamf Connect は正しく同期されているのかを確認してくれるだけです。同期のための補助ツールと考えるとしっくり来ると思います。 こちらも Jamf ...
Salesforce DXを導入した話 Part 2 - Sansan Builders Blog
こんにちは。Sansan CIO室の李です。 さて、 前回 に続いてSalesforce DX(以下、SFDX)の話です。今回はSFDXの導入手順 と導入プロセスにおけるTipや注意事項について話していきたいと思います。 Reminder : この記事は Salesforce CLI v46を基準に作成しています。今後Salesforce CLIバージョンアップによって構築手順が変わる可能性があります。その時は 公式ドキュメント の手順をご参照ください。 前回の記事でも話しましたが、SFDXの導入・運用方法はひとつに決まっていません。事前に利用環境や要件を把握し、利用状況に適する導入モデルを決めてからアクションを取ることが大事です。 導入における色々な具体的なアクションについてSansanが強く意識したポイントは2つありました。1つ目は"なるはや"でソース管理を導入する、2つ目は チームメンバーに速く使ってもらう為、導入に伴うラーニングコストを最低限にする でした。そのポイントを踏まえて決めた導入モデルが以下です: 各意思決定ポイントと選択結果についてもう少々細かく説明しますと、 モジュール化は相当なリソースを要すると判断し、モジュール化しない方向 に決定 ソース管理システムはまだ慣れていないメンバーもいた為、一番学習リソースが豊富なGithubを選定 上と同じ理由でGithub運用ポリシーも手順が簡単なGithub Flowを選定 テスト環境の立ち上げはラーニングコストの削減を意識してスクリプトを実装 テストデータの移行作業はサードパーティーツールを利用 一部のチームメンバーにprodへのアクセス権限がない為、staging → prod だけは変更とセットでデプロイ のように、理想的な導入モデルではなくても、実際に使う側により早く、そして分かりやすく価値を与えるような導入モデルを立てました。 SFDXの導入は大きく4つのステップに分かれます: SFDXの基本セットアップ スクラッチ組織の立ち上げ スクラッチ組織に各種メタデータをデプロイ バージョン管理システムにメタデータを登録 まずは前半の「基本セットアップ」から「スクラッチ組織の立ち上げ」までの詳細手順について説明します。 Salesforce CLIは2つのバージョンが提供されます。公式ホームページからダウンロードできるインストーラーバージョンと node.jsのパッケージ管理ツールである npmで提供されるバージョンです。機能面では違いはないのですが、CLIのインストールやアップデートもスクリプトで行うように決めたので、non-promptが可能な npm バージョンを利用しています。従って、ここの説明も npm バージョンを基準として説明します: node.jsをインストールし、npmからsfdx-cliをインストールしてください。 > npm install -g sfdx-cli インストールが完了したらコマンドプロンプトを開き、以下コマンドでインストール有無を確認してください。 > sfdx --version 注意💣インストーラーバージョンと npm バージョンを一緒にインストールすると一部処理でコンフリクトが発生する場合があります。片方はアンインストールすることをお勧めします。 スクラッチ組織を作成する為には 「Dev Hub組織」の指定が必要です。Dev Hub組織とは、 スクラッチ組織を管理する組織 のことです。Dev Hub組織は永久組織しか有効化できないため、普通は本番環境で設定します。 情報 📝 よく"サンドボックスはDev Hubに指定できないからSFDXからはアクセスできないのでは?" などと質問を受けますが、Dev Hubは"スクラッチ組織の管理"だけ関係するもので、SFDXの実行に関しては関連はありません。 Dev Hub組織は次のステップで有効化できます: 本番環境にログインします メイン画面から「設定」画面に移動します 左側のサイドバーにあるクイック検索バーに "dev hub"と入力し、「Dev Hub」をクリックします 「Dev Hubを有効化」と「ロック解除済みパッケージ (正式リリース) と第二世代管理パッケージ (ベータ) を有効化」を有効化します Dev Hubが有効化されたら、Dev Hubの認証を行います: コマンドプロンプトを開き、次のコマンドを実行します > sfdx force:auth:web:login -d -a ...

当社エンジニアに関する記事

 

Sansan株式会社について

 
 

Sansan Tech Podcast

当社のエンジニアがお届けするPodcastです。Sansanエンジニアの技術のこと、カルチャーのこと、日々のSansanライフについて自由に語っています。