廣渡裕介/ DAOX @hirowatari_y 友達のアパレル会社はWantedly解約して採用はTikTokに振り切ったのこと。 1募集に340件くるらしい笑 廣渡裕介/ DAOX @hirowatari_y 学生起業→ 3年で上場企業に売却→ GaiaxでDAO事業副責任者。2023年は 約30社のDAO組成支援実績。DAOのプラットフォーム開発中。 https://t.co/D1q0pX3vRu
このドキュメントはインシデント発生前に予防として読んでおくことを想定しています。 緊急時は Incident Response (internal) 及び #war_room (internal) を確認してください。 インシデント対応について Incident Response (internal) がより網羅的かつ真とするドキュメントです。 このドキュメントでは上記のドキュメントの内容を補足する内容として特に new joiner が認識しておくべき情報を抽出/加筆したものです。 もし上のドキュメントとこの章に食い違いが生じる場合は上のドキュメントを真としてこの章を編集してください。 各チームで new joiner を受け入れるときにこのドキュメントを一律に共有することで共通認識を得ることを目的にします。 このため主に障害対応経験が少ない人に向けた最低限の心構えを共有するものであり障
Babelの新しいpolyfill用プラグインであるbabel-polyfillsが2022年4月に脱experimentalを果たしていました。そこで本稿では、Babelにおいてpolyfillがどのように扱われていたかを振り返りながら新しいpolyfill pluginを紹介します。 注意: Babel 7.4で非推奨化された@babel/polyfillとは別物です。 何が問題だったのか?babel-polyfillsのREADMEと元issueにも説明がありますが、本記事ではあらためて日本語で説明したいと思います。端的に言うと今までは以下の要件を両立できませんでした。 ソースコード中で使われている機能のpolyfillだけを注入する。ターゲットブラウザを指定して、必要なpolyfillだけを注入する。副作用のない形でpolyfillを注入する。babel-polyfillsはこれら
BabelプラグインをRust (SWC) に移植して、JavaScriptのコンパイルを爆速にする 〜プラグイン作成編〜 はじめにこんにちは、WantedlyのDX (Developer Experience) チームでインターンをしていた田村です。今回のインターンではWantedlyのフロントエンドのトランスパイラをBabelからSWCに移行することを目標に調査を行いました。BabelからSWCの移行方法については前の記事(基本編)をご覧ください。本記事では簡単なSWCカスタムプラグインを作成することを通して、プラグインの書き方、使い方、テストを紹介します。本記事は、BabelプラグインをSWCに移植する際に必要な知識は一通り網羅しています。 環境cargo 1.59.0 (49d8809dc 2022-02-10)npm 8.1.2また、この後インストールするツールのバージョンは以下
Wantedly でバックエンドエンジニアをしている @izumin5210 です。 この記事は GraphQL Advent Calendar 2020 の11日目の記事として書かれました。が、7割くらいは SSR についての議論のこり3割くらいが Apollo Client の話です。 最近、Apollo Client と SSR(Server Side Rendering) を利用した Web アプリケーションのパフォーマンス改善に取り組みました。この記事では「パフォーマンスの問題にどう立ち向かったか」および「そもそも問題を起こさない構造にするために何ができるか・何をすべきでないか」の考察をしていきます。 TL;DRパフォーマンス改善は計測・可視化からライブラリが用意してくれているフック機構を上手に使って計測していこうrenderToStringWithData では、renderT
Wantedly は2011年から開発をしており、今年で10年目を迎えます。長年の成長に伴って、新しいページでは新しいUIが使われると共に、サービス開始当初から残り続けているページでは古いUIが使われているというチグハグな状態になっていました。 プロダクト上、重要ないくつかのページはアーキテクチャとUI/UXを一緒に刷新するリニューアルを行っていました。例えば、ユーザのプロフィールページは2019年9月から4人で約1年かけてリニューアルしました。その結果、使いやすいUIを提供することができました。 しかし Wantedly は数多くの機能を持っているため、全てのページで同じ工数をかけようとするとそれだけで数年という長い時間がかかってしまいます。 そこで、2020年9月からは Wantedly のUIに的を絞って網羅的に刷新する『リノベーション』に取り組んでいます。このリノベーションではバッ
弊社では現在UIコンポーネントのスタイルを当てるために、CSS-in-JSライブラリのひとつであるstyled-componentsを使っています。 styled-componentsで高度な使い方をしたときにスタイルが意図した優先度で当たらない現象の調査のためにstyled-componentsの仕組みを調べたので、覚え書きとして残しておきます。 前提知識styled-componentsについて: CSS-in-JS はスタイル定義をJavaScript内に書く手法の総称です。スタイルのコンポーネント間の結合を下げ、単一コンポーネント内の振舞いとスタイルの凝集を上げる狙いがあり、特に振舞いに依存して動的にスタイルが変わるようなケースでJSとスタイル定義をシームレスに結合させることができます。実際の実現方法はライブラリによってまちまちです。styled-componentsは比較的オーソ
BitStarでは、クリエイター支援事業、コンテンツ制作事業を展開し、複数事業のシナジー発揮による価値最大化を目指しています。 <クリエイター支援事業> ◆クリエイターエージェント「BitStar Agent」 YouTube・TikTokなどのメディアを活用したソーシャル動画マーケティングを企業様向けに提供。 ソーシャル動画マーケティング領域において国内最大級のプロモーション実績を誇っております。 ◆クリエイタープロダクション「BitStar Production」 350名以上が所属するYouTubeやTikTokで活躍するクリエイターを中心としたクリエイタープロダクション。 次世代スター創出を目指してクリエイターの成長や収益化を支援し、成長率は業界トップクラスとなっております。 <コンテンツ制作事業> ◆コンテンツスタジオ「BitStar Studio」 企業のYouTubeチャンネ
突然ですが、以下のJavaScriptプログラムに型をつけるとしたらどうするでしょうか。 function all(...callbacks) { return (x) => { for (const callback of callbacks) { callback(x); } } }最も自然な方法のひとつは、次のような型づけでしょう。 type Callback<T> = (value: T) => void; function all<T>(...callbacks: Callback<T>[]): Callback<T>;これ自体は最小限で最も正しい型をつけていて良いのですが、ユースケースによっては不便な場合があります。具体的には、以下のような「異なる型の汎用的なコールバックを組み合わせて特殊なコールバックを作る」という使い方です。 function cb1(value: { fo
main branch を default の branch として運用することが多くなって来ていますが、 Wantedly このでは数多くの repository の CI 設定や自動化フローにおいて master をハードコードして利用してきました。 短期間での移行が難しいため、 2022 年 1 月現在では master branch を default で利用している repository が多数派です。 Pull Request が持っていると嬉しい性質よい Pull Request の分け方を考えるために、まずは Pull Request が持っていると嬉しい要素を列挙します。どれもそれだけを重視すると他のことが犠牲になる事があるという点に注意が必要です。あくまで「他にデメリットがないのであれば」という前提だということです。 diff の行数は少ないほうがいいこれは当たり前に実
こんにちは、ウォンテッドリーでデータサイエンティスト及びデータを活用したプロダクトのマネージャーを務めている松村です。2020年9月22日から9月26日にかけてオンラインで開催された RecSys 2020 に参加してきました。 こんにちは、ウォンテッドリーでデータサイエンティスト及びデータを活用したプロダクトのマネージャーを務めている松村です。2020年9月22日から9月26日にかけてオンラインで開催された RecSys 2020 に当社のデータサイエンティスト及び機械学習エンジニア5名で聴講参加及び、そのうちの3名が併設の RecSys Challenge の Workshop において口頭発表を行いました。その参加報告を行いたいと思います。 本記事では概要報告に留まりますが、明日からは参加メンバーが実際に発表を聴講して気にな せっかくなので参加メンバーで面白かったセッションを紹介する
はじめに こういう時代ですのでamazonは好業績で、超巨大企業となってしまいました。 ショッピングはamazon一強で、各社amazon潰しに勤しんでいます。 amazonや楽天などのプラットフォームビジネスはamazon、楽天頼みのトコロが強いので加盟店はamazon様々としもべのようになっています。 そんな状況を一変させようとする企業の動きが気になります。 見ていきましょう。 「Shopify」(ショッピファイ)がグイグイ来てる 「ショッピファイ」は、企業のECサイト開発・運営を手がけています。 ウェブサイトの制作、カード決済の仕組み、売上分析などネットショップに関わること全てをサポートしてくれます。 企業がインターネットで商売をするために必要な、専門知識がなければ難しいことを、すべてまとめて代行してくれるという中小企業の味方です。 事業者が用意するのは、パソコンと画像くらいのもので
こんにちは!ウォンテッドリー株式会社の市古 (@igsr5_) と申します。 私は2023年4月にウォンテッドリーに新卒エンジニアとして入社し、もうすぐ1年が経ちます。 ウォンテッドリーは究極の適材適所により、シゴトでココロオドルひとをふやしたい会社です。 そして世界で最も「シゴトでココロオドル」を体現している会社でもあります。 本記事では新卒1年目のエンジニアが「どんな仕事に没頭したのか」を振り返ります。 現在転職を考えているエンジニアや学生エンジニアの方の参考になれば幸いです。 目次自己紹介ウォンテッドリーに入社を決めた理由どんな仕事に没頭したのか新卒2年目に没頭したいことタイトルにある DevOps チームの話は『どんな仕事に没頭したのか』の最後の章で言及しています。気になる方はスクロールしてください。 自己紹介市古 空 (いちご そら) と言います。 Web 開発を始めたのは高校
gRPC をテーマとした国際カンファレンス gRPC Conf で Wantedly の gRPC 活用事例について話しました! こんにちは、Wantedly の Infrastructure Team で Engineer をしている南(@south37)です。 先日、gRPC Conf という国際カンファレンスで Wantedly の gRPC の活用事例について話しました!今日は登壇に至った背景や、gRPC Conf そのもの、および登壇内容について紹介したいと思います。 背景: Wantedly と国際カンファレンス Wantedly では、国際カンファレンス登壇など、メンバーがグローバルに活躍する機会を積極的に支援しています。 例えば、Wantedly Internationalization Program(通称 WIP)という「メンバーがグローバルに活躍する機会をサポートする
Record & Tuple とはRecord & Tuple は ECMAScript (JavaScript) に対する提案段階の機能で、構造化データのためのプリミティブ型を提供するというものです。RecordはObjectのプリミティブ版、TupleはArrayのプリミティブ版にあたります。 プリミティブとオブジェクトJavaScriptにおける値はプリミティブとオブジェクトの2種類に分けられます。 プリミティブはイミュータブルで、値の同等性にもとづいて比較されます。既存のプリミティブとして、null, undefined, number, string, boolean, bigint, symbol が存在しています。オブジェクトはデフォルトでは書き換え可能で、参照の同一性にもとづいて比較されます。これまで、複数のスカラー値をまとめて構造化データとして扱うには、オブジェクト (主
ウォンテッドリーでエンジニアをしている @gedorinku です。5/15から5/17に沖縄で開催された RubyKaigi 2024 に参加して登壇してきました。 当日の発表スライドは以下で公開しています。 内容は、mruby/c という組み込み向けの Ruby ランタイムをスーパーファミコンに移植して動かしたというものでした。不安定な C コンパイラのデバッグやカセット内の特殊チップ(SA-1)を使った mruby/c VM の高速化といった mruby/c をスーファミで動作させるために必要なハックについて話しました。発表の中でも触れましたが、この取り組みは RubyKaigi 2022 で Yuji Yokoo さんの発表を聴いたことがきっかけとなっており、まさに KaigiEffect と言えると思います。 当日は発表会場が満席になってしまうほどの盛況ぶりで、僕の想定より多くの
UI components and style guides for company-wide product design on Wantedly, inc.
こんにちは、Wantedly の 2023 年サマーインターンに参加した Ran350 です。今回のインターンでは 3 週間 DX (Developer Experience) squadに所属し、「Wantedly における Ruby コードベースへの型システムの導入」をテーマに取り組んでいました。本記事では、その仮説検証の過程や調査記録を紹介します。 目次背景目的まとめ論点型システム導入による恩恵型システム導入による弊害型システム導入による恩恵-弊害を評価するために知りたいこと検討方針案【事前調査】過去の型起因のバグ【選択肢の整理と検証】型検査手法【選択肢の整理と検証】RBS 作成手法RBSの追加順序の検討【見積もり】RBS作成コスト【見積もり】型検査による恩恵型システム導入による恩恵-弊害が最適となる運用方針の提案まとめ感想注意本議論はまだ検討段階です。Rubyの型システム導入という
この記事はWantedly Advent Calendar 2023 兼 情報検索・検索技術 Advent Calendar 2023の3日目の記事です。 ウォンテッドリーでデータサイエンティストをしている角川(@nogawanogawa)です。ウォンテッドリーのデータサイエンスチームは、9/18〜9/23にシンガポールにて開催されたRecSys2023に聴講参加しました。 RecSys 2023, the seventeenth conference in this series, will be held in Singapore. It will bring together researchers and practitioners from academia and industry to present their latest results and identify new
Wantedly の Matching Squad でデータサイエンティストをしている関根( twitter: @ndnto, github: @hiroto0227 )です。Matching Squadでは主に企業とユーザーの理想的なマッチングを実現することを目的として、検索システム・推薦システムの改善を行っています。 モチベーション去年の秋ごろに RecSys2020 に参加して最新の推薦システムの技術についてキャッチアップをしました。最近の傾向の一つとして、推薦システムはユーザーの関心の高い(適合度の高い)アイテムを推薦するだけではなく、 Diversity (多様性)や Novelty (新規性)を追求することで、ユーザーにより良いアイテムを推薦することがあるように感じました。 Wantedly RecSys 2020 参加レポート① - Wantedly Data チームで Re
Argo Workflows: 推薦基盤向けワークフローエンジンを Kubernetes で運用して1年経ったので振り返る こんにちは。Matching チームの笠井(@unblee)です。 この記事では、おおよそ1年以上前に私が新卒入社して Infrastructure チームで一番最初に取り組んだ Workflow Engine の導入プロジェクトについての振り返り・供養をしようと思います。 記事内で触れている情報・判断は全て1年以上前の時点の社内外の状況に基づいていることを前提としているため現在の最新の情報とは異なることがあります。この前提を承知した上でお読みいただければ幸いです。 Agenda問題意識技術選定PoC本番環境への導入とその障壁の解決振り返りまとめ問題意識Wantedly では以前から推薦基盤へ力を注いでおり、Wantedly Visit におけるユーザと企業の理想のマ
「どの業界を攻めれば良いのか」僕が「共感の採用媒体」であるWantedlyの運用コンサルを事業にしようと考えてから、まず初めにぶつかった問題です。 言うまでもなく、ターゲットとする業界の選定は大切でしょう。弊社はSES事業をやっていますし、同業の企業様に対して、Wantedlyでの成果(月250応募)を数字で出せば、かなりのインパクトがあります。他社で成功例のあるITや飲食であれば、成果を引っ張ってきて、具体的な数値を提示できます。不動産や保険代理店であっても、セールス採用の成功例を提示できれば十分な説得材料となるでしょう。 不動産・保険代理店・飲食・IT・SES——— 架電のターゲットとする業種を二転三転しましたが、現在は介護に落ち着きました。 「なぜ、介護業界なのか?」端的には、Wantedlyと介護業界における採用課題との親和性が高く、採用課題の解決につながると考えたからです。あくま
エンジニアリング界をリードする著名人が「いま話を聞きたい」開発者を直接指名し、日頃なかなか聞けない開発トピックについて語り尽くすオンライントークセッション「DevLounge.jp」。 Session A-2では、グローバルなクラウドプラットフォームのデベロッパーアドボケイトとして活躍する山口 能迪氏が、日頃から飲みながら雑多な話をする相手だというヘイ株式会社CTO、藤村大介氏を招いて、「技術に寄りすぎない話」を展開。山口氏が最近気になっているというOKR(目標管理手法)の話から始まり、やがて藤村氏のフリーランスから社員となってCTOという立場に就いた話、哲学とソフトウェア開発の関連性の話まで、話題は尽きず。ここではそんなトークセッションの一部をダイジェストでお届けします。 山口 能迪グローバルなクラウドプラットフォームのデベロッパーアドボケイトとして、ウェブからネイティブ、フロントエンド
こんにちは!Wantedly のエンジニアの縣です。 先日 Rails アプリケーションで ActiveRecord::StatementInvalid: PG::DuplicatePstatement というエラーが確率的に発生するという事象に遭遇し、その原因が Timeout.timeout と関係していてなかなか面白かったので記事に書き起こすことにしました。 (この記事を書くために今改めて調べてみたところ、 https://github.com/rails/rails/pull/41356 で ActiveRecord に関しては問題が解決していることがわかりました。が、記録として投稿しておきます。) TL;DRRuby の Timeout.timeout は非同期例外を発生させる非同期例外発生時に ActiveRecord の Connection の内部状態が壊れたことでエラーが
はじめにこんにちは、Wantedly の Infrastructure Team でエンジニアをしている南(@south37)です。 先日、Wantedly では「システム全体の信頼性向上」と「開発生産性の向上」を両立するために Event-Driven Architecture を採用しているというブログを書かせて頂きました。 開発生産性と信頼性の両立を目指すための Event-Driven Architecture - より良いマイクロサービスアーキテクチャを求めて | Wantedly Engineer Blog こんにちは、Wantedly の Infrastructure Team でエンジニアをしている南( south37 )です。 Wantedly では、マイクロサービスアーキテクチャを採用しています。 マイクロサービスで開発を進める上で、重要な関心ごとの1つが「多数のマイク
こんにちは、Wantedly の Developer Experience Squad で生産性に関わるあらゆることに手を出している大坪です。今回は巨大化した Rails の CI 高速化手法について解説します。 CI は早ければ早いほどいい 上にリンクした DX Squad のミッションでも書いていますが、CIは早ければ早いほどよいと考えています。遅い CI は Pull Request の merge までのリードタイムを長くするという短期的なデメリットだけでなく、開発者の test を書くモチベーションを削いでしまい長期的にもプロダクトの安定性を悪化させます。 テストが早いと書きたくなる「他の人がテストを書いてくれない」「なんでこのコードはテストされていないのか」と思ったことは誰しもあるでしょう。そんな状況において自分が大事だと考えているのは「テストを書くことがお得である」と感じるこ
Storybook はWebフロントエンド向けのUIモックアップのフレームワークです。 あらかじめUIコンポーネントをデータストア非依存で作っておけば、そのモックアップを作ることができます。(モックアップといっても、バックエンドに繋がっていないだけで、ユーザーの操作には反応するというものを考えています。) Storybookでは、このようなモックアップのことをStoryと呼んでいます。Storyがあらわすコンポーネントの粒度もまちまちで、汎用のボタン1つに対するStoryもあれば、ページ全体に対するStoryも考えられます。 モックアップを動かしながら作業することで、余計な手間をかけずにUIの動作確認をできるというのがStorybookの基本的な使い方です。 StoryshotsとはStoryshots はStorybookをユニットテストで利用する方法のひとつです。 Storyshots
16年3月にみんなご存じ「タイ全裸」事件を果たし、その後ネットでの悪評を消すためにDMCA申請を行うという禁じ手を披露した結果、辻正浩さんに正面から殴られていたDYM社でしたが、その後、新卒採用ビジネスや研修事業その他で失地挽回で頑張っていたようでした。 まあ心を入れ替えて前を向いて進んでいるならいいかとしばらく忘れていたのですが、先日、関係している医療法人の事務局長宛に不思議なメールが送られてきたというので回してもらったら、なんとDYM社さんからのマスク営業メールじゃないですか。すごいなあ。 新型コロナ危機を皆さまと乗り切るために、今回DYMのグループ会社で新型コロナ対策事業を立ち上げることにいたしました。 グループ代表の水谷が医師でもあることから連携する医療ネットワークを活用し、効果が期待されるサービスを厳選し、様々な優良なサービスをご提供させていただきます。 言われてみればDYM社代
本記事はWantedly 21新卒 Advent Calendar 2021の12日目の記事です! なんとか半分まで来ました。後半戦もよろしくお願いします🙏 本記事では、入社してからデータ分析する中で先輩からいただいたフィードバックをまとめてみました。当たり前のことも多いですが、時間に追われ、焦ってしまうと意外とできないので、自戒の意味も込めてここに残しておきます。 集計前(目的理解・課題設計)編集計の目的を理解する「〇〇を集計して」と依頼された時は、なぜその集計が必要なのか理解してから、手を動かすようにしています。目的に応じてアウトプットが変わりうるからです。 例えば「プラットフォーム内のユーザ数を集計して」と言われた時に、「特定経路のユーザ流入が減っている懸念」が背景にあれば、アウトプットには「流入経路ごとのユーザ数」が必要です。 一方、「グロース施策の打ち手を決めたい」という背景が
企業理念「ジダイ」をつくる。 どんな時代、どの業界でもサービスを生み出すのは紛れもなく「人」です。 VIXAGEの社員は次の5つのバリューを大切にしております。 SMILE:笑顔でいよう、笑顔をつくろう VISION:大きなビジョンを持ち、広げよう RESPONSIBILITY:責任を持とう、責任を与えよう BEST:常にベストを尽くそう DOCILE:いつまでも素直でいよう 現在はITエンジニアのアウトソーシングがメイン事業です。 「今にイノベーションを。人生にアクセントを。」をミッションとして掲げ、ヴィジョンの実現のため日々の課題に取り組んでいます。 最高のサービスをご提供できるよう、従業員一人一人が夢を抱ける環境を維持し、 皆様から支持していただけるような企業を目指してまいります。
企業理念「ジダイ」をつくる。 どんな時代、どの業界でもサービスを生み出すのは紛れもなく「人」です。 VIXAGEの社員は次の5つのバリューを大切にしております。 SMILE:笑顔でいよう、笑顔をつくろう VISION:大きなビジョンを持ち、広げよう RESPONSIBILITY:責任を持とう、責任を与えよう BEST:常にベストを尽くそう DOCILE:いつまでも素直でいよう 現在はITエンジニアのアウトソーシングがメイン事業です。 「今にイノベーションを。人生にアクセントを。」をミッションとして掲げ、ヴィジョンの実現のため日々の課題に取り組んでいます。 最高のサービスをご提供できるよう、従業員一人一人が夢を抱ける環境を維持し、 皆様から支持していただけるような企業を目指してまいります。
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く