タグ

ブックマーク / blog.recruit.co.jp (16)

  • Goのpackage構成と開発のベタープラクティス

    (images: github.com/egonelbre/gophers) こんにちは。 データエンジニアリンググループ(CETチーム)の寺下です。 自分の所属するCETチームでは今まで主にScalaPythonなどを使ってAPIや基盤を実装してきましたが、最近では徐々にGoによる実装も増えてきており、GAE/GKE上で番運用を行っています。 記事ではGoのプロダクトにおいてDDDライクなpackage構成で実装する際の注意点や、汎用的に通用するであろう実装のTipsについて書いていきます。 記事で紹介する例がベストプラクティスだというわけではありませんので、あくまで実装の一例程度に捉えて頂けると幸いです。 Goのアーキテクチャ Goは言語仕様がシンプルかつフォーマッタが強力なため、syntaxレベルでは開発者によってコードの品質がブレにくいというメリットがあります。 しかしなが

    Goのpackage構成と開発のベタープラクティス
    mactkg
    mactkg 2020/02/01
  • React製のSPAのパフォーマンスチューニング実例

    カギは社内事例にあり!?システム効率化を超えて運用ミスを激減させた件 2024.09.02 コーポレート 業務改善 業務設計 社内ICT

    React製のSPAのパフォーマンスチューニング実例
    mactkg
    mactkg 2018/09/19
    React Dev Toolsで再レンダリングの頻度が多いDOMに色つけられるの、便利そう
  • ホットペッパービューティーのAndroidアプリをリプレイスしました

    ビューティ事業ユニットでエンジニアをしている索手です。 1月まではAndroidを担当していましたが、今ではバックエンドを担当しAPI開発を行っています。 今回は昨年行ったホットペッパービューティーのアプリリプレイスについて、Androidチームで採用した技術や実装方針についてお話ししたいと思います。 プロジェクトの背景 ホットペッパービューティーのネイティブアプリは、約6年間、様々な機能追加・変更を経る中で多くの技術的負債が溜まっていました。一方で、事業におけるアプリの重要度は高まっており、今後の更なる成長を見据えると、当時の状態で開発を続けることは困難でした。 そのような背景があり、アプリリプレイスがスタートしました。 プロジェクトの概要 プロジェクトは、「安定かつ高速な開発」を目指し、仕様はそのままにネイティブアプリのコードを全て書き換えるというものでした。ドキュメントや既存のコー

    ホットペッパービューティーのAndroidアプリをリプレイスしました
    mactkg
    mactkg 2018/03/22
  • 社内ISUCONを開催しました! ( 解答例あり ) | PSYENCE:MEDIA

    はじめに こんにちは!リクルートマーケティングパートナーズ リファラルGの浅井です。リファラルGでは組織活性を目的として社内イベントの運営や勉強会のサポートを行っています。その取組の一環としてリクルートマーケティングパートナーズとQuipperのエンジニアを対象にISUCONを開催しました! ISUCONとは? Iikanjini Speed Up Contest(いい感じにスピードアップコンテスト)の略です。チーム対抗でお題となるWebサービスを決められたレギュレーションの中で限界まで高速化を図るチューニングバトルです。 開催のきっかけ リファラルGでは組織活性のアイデアを常に探しています。そんなある日、とあるメンバーが定例ミーティングにて「社内ISUCONやりたいっす」と呟いたのがきっかけです。その場で開催が決定し、プロダクトディベロップメント部1)リファラルGが所属する部署であり、リ

    社内ISUCONを開催しました! ( 解答例あり ) | PSYENCE:MEDIA
    mactkg
    mactkg 2018/01/23
    開催しました。ただの思いつきで発言したけど色々な人が参加してくれてうれしい。今回はTerraformでAWSの環境構築とかしたんだけど、とてもいい勉強になりました。本家もやっていくぞ!
  • エンジニアから事業責任者へのキャリアチェンジを語らせてくれ | PSYENCE:MEDIA

    この記事は RECRUIT MARKETING PARTNERS Advent Calendar 2017 の投稿記事です。 どうも、エンジニアマネージャーをやっているモノです。 色々あってエンジニアからマネージャーになり、そして現在マネージャーもやりつつ事業責任者も兼務する事になったので、キャリアチェンジに関して思う所を吐き出しておきます。 この記事の目的 特に最近、エンジニアからマネージャーへのキャリアチェンジに関しては世間の関心も高く事例も多くなってきた気がするのですが、エンジニアから事業責任者へのキャリアチェンジというのはまだ少なかろうと考え、知見や感想を纏めておきます。 尚、対象読者はエンジニアを想定した視点で書かれた文章になっています。 注意 事業責任者といっても事業のフェーズによって必要とされるスキルや業務内容は様々ですが、当エントリーは、 0 > 1の立ち上げ時にフォーカス

    エンジニアから事業責任者へのキャリアチェンジを語らせてくれ | PSYENCE:MEDIA
    mactkg
    mactkg 2017/12/12
  • チームの課題から考える、Adobe XDとSketchの導入メリット | PSYENCE:MEDIA

    この記事は RECRUIT MARKETING PARTNERS Advent Calendar 2017 の投稿記事です。 こんにちは!現在キッズリーのデザインを担当しているデザイナーの町田(@macheri_me)です。 今年で中途入社3年目となりました。日は弊社の制作事例をもとに、AdobeXD・Sketchの活用法についてご紹介します。 【この記事を読んでもらいたい人】 これからAdobe XD、Sketchどちらを導入しようか悩んでいる人 デザイン制作フローの中で課題を抱えており、解決したい人 Adobe XDとSketch。自分のチームにはどちらが最適か サービスのデザインを制作する際、何のツールを使っていますか?少し前だと Adobe Illustrator、Photoshop、Fireworksといったグラフィックツールが多かったかと思います。しかしながら、これらはUI

    チームの課題から考える、Adobe XDとSketchの導入メリット | PSYENCE:MEDIA
    mactkg
    mactkg 2017/12/07
    SketchとXDの使い分け: "Sketchは大規模サービスの大人数制作、XDは新規サービスのディレクションに最適"
  • Sympyを使ってセンター試験の問題を解く&類似問題を生成する | PSYENCE:MEDIA

    この記事は RECRUIT MARKETING PARTNERS Advent Calendar 2017 の投稿記事です。 こんにちは。データエンジニアの大西です。 最近SymPyというPythonのライブラリにハマっています。この記事では、それを使ってセンター試験の問題を解いたり類似問題を生成させる小ネタをご紹介します。 Sympyの紹介 SympyPython上で数学の代数計算を実施できるライブラリです。方程式を解いたり、微分を計算したりといった数学的な操作がPythonで計算できます。 SymPy インストール Python3系がインストールした環境であれば、$ pip install sympy でOKです。その他の環境の場合は公式のドキュメントを参照ください。 シンボル操作と代数計算 Sympyを使うとxやyを数学で計算する時の変数として定義して操作できます。 In [1]:

    Sympyを使ってセンター試験の問題を解く&類似問題を生成する | PSYENCE:MEDIA
    mactkg
    mactkg 2017/12/05
    おもしろい
  • 【Swift】少しの手間で出来る!iOS アプリの UX改善 Tips 教えます | PSYENCE:MEDIA

    Swift】少しの手間で出来る!iOS アプリの UX改善 Tips 教えます ya_s_u 2017.12.05 104 11101964 この記事は RECRUIT MARKETING PARTNERS Advent Calendar 2017 の投稿記事です。 はじめまして、『妊婦さんのためのアプリ 妊娠・出産なら Baby+』1)今年の9/7にリリースしました🎉のiOS開発を担当している2017新卒2)2015春インターンから気づいたら入社していましたエンジニアの後藤(@ya-s-u)です。 モバイルアプリの成功要因は様々な要素に依存していますが、使いやすくて愛されるアプリを作るには細かいユーザー体験にまで気を配る必要があります。今回は有名アプリなどでよく見る、工数はそこまでかからないけどアプリが少しだけ使いやすくなるUX改善Tipsを4つご紹介3)タップ領域を可視化するためc

    【Swift】少しの手間で出来る!iOS アプリの UX改善 Tips 教えます | PSYENCE:MEDIA
    mactkg
    mactkg 2017/12/05
    ちょっとした工夫でユーザーに操作のてがかりを与えることができる。こういうちょっとした工夫ありがたい
  • 【羽田・成田空港からわずか5時間】Android / iOS エンジニアのワイが深圳の魅力を語り尽くす | PSYENCE:MEDIA

    【羽田・成田空港からわずか5時間】Android / iOS エンジニアのワイが深圳の魅力を語り尽くす 平野 雄一 2017.12.02 180 311022324 この記事は RECRUIT MARKETING PARTNERS Advent Calendar 2017 の投稿記事です。 この記事は2017年11月に書かれたものです。深圳の行き方についてはこちらの最新の記事を参照ください。 リクルートマーケティングパートナーズで、Android/iOSアプリの開発を担当している平野です。 2017/11/10-12に開催されたMaker Faire Shenzhen 2017に併せて中国の深シン圳センに行ってきました。 この記事の目的 今年の5月〜6月頃に入ってから中国の電子マネーやシェアリング自転車に関する日語の記事がグッと増えた印象があり、中国や深圳の現状が日でも以前より知られる

    【羽田・成田空港からわずか5時間】Android / iOS エンジニアのワイが深圳の魅力を語り尽くす | PSYENCE:MEDIA
    mactkg
    mactkg 2017/12/02
    大作すぎる。バイブルだ
  • 【Otemachi.swift x Kyobashi.swift】日経新聞社さんと合同でSwift勉強会を開催しました! | PSYENCE:MEDIA

    【Otemachi.swift x Kyobashi.swift】日経新聞社さんと合同でSwift勉強会を開催しました! 保坂智之 2017.08.15 55 44263 皆さんこんにちは。新卒2年目になり、優秀な後輩にビビりまくっているエンジニアの保坂です。 2017年8月8日 (火) に日経済新聞社さんによる勉強会 Otemachi.swift と合同で Swift 勉強会を開催しましたので、その様子を早速レポートします! https://nikkei.connpass.com/event/62123/ RMPの紹介をする弊社GMの金谷さん Otemachi.swift x Kyobashi.swift とは? そもそも、日経さんと弊社リクルートマーケティングパートナーズで共同勉強会を開催することが決まったのは、 WWDC 2017 に参加した際に、日経さんのiOSエンジニアと弊社の

    【Otemachi.swift x Kyobashi.swift】日経新聞社さんと合同でSwift勉強会を開催しました! | PSYENCE:MEDIA
    mactkg
    mactkg 2017/08/16
  • 2017-08-01-lignum

    こんにちは。Lignumの開発を担当している明智と浅井です。 Lignumは今回紹介する配信基盤の名前です。 先日開催されたGoogle I/Oでも多くの新機能が発表されたFirebaseですが、弊社では昨年度からFirebaseを活用した機能開発に取り組んでいます。 今回は、その中でも『Firebaseを活用したアプリプッシュ通知の配信基盤の構築』について紹介したいと思います。 「アプリプッシュ通知の配信基盤」構築の背景 見えてきていた課題 弊社ではこれまで、リクルートグループ横断で利用できる独自開発された配信基盤を利用していました。 しかし、施策が高度化するにつれて 実施できる施策の制限 配信の見立て/結果の振り返りに利用したいデータが不足 といった「弊社独自の業務要件に追いつかなくなってきている」という課題が見えてきていました。 そこで、PDCAサイクルの回せる新たな配信基盤が必要だ

    2017-08-01-lignum
    mactkg
    mactkg 2017/08/07
  • FuseBox × Babel ~ Sparky で Gulp のようにタスクを定義する | PSYENCE:MEDIA

    FuseBox は単なるモジュールバンドラーの枠に留まらず、 Sparky というタスクランナーを搭載しています1)名称が似てますが、 node-sparky とは別モノです。。これにより、複雑なバンドルタスクでも可読性を損なうことなく、まるで Gulp のように記述することが出来ます。 今回は Sparky の基的な使い方と、これを活用して FuseBox と Babel を組合せたモジュールバンドル & ECMAScript5 トランスパイル環境を構築する方法をご紹介します。 Sparky - FuseBox Sparky の特徴 はじめから FuseBox に搭載されているので、別途インストールする必要なし シンプルで直感的な API Gulp と非常によく似た記法 Gulp を触ったことがあれば学習コストはほぼゼロ 並列実行 ( Parallel モード ) だけでなく直列・順次

    FuseBox × Babel ~ Sparky で Gulp のようにタスクを定義する | PSYENCE:MEDIA
    mactkg
    mactkg 2017/07/31
    FuseBox全部盛りで良い
  • 【書評】サーバーレスシングルページアプリケーション | PSYENCE:MEDIA

    それぞれ読者の立場になってこのをどう読み解いていくかが紹介されているので、流し読みするよりもより理解度が深まると思います。 読み終えた感想 書を読むことで、AWSを使ったサーバーレスのSPAを作るうえでどのようなマネージドサービス使って実現できるかが理解出来ます。私自身サーバーレスでSPAを作ったことはないので、Cognitoなどが特に参考になりました。 題名に『シングルページアプリケーション』とありますが、フロントエンドとしてiOSやAndroidなどのネイティブアプリを作る場合でもCognito、DynamoDBLambdaAPI Gatewayを使ったサーバーレスの構成は参考になることでしょう。 書でサーバーレスの基を学び、より複雑なアプリケーションが必要になったらAWSの他のマネージドサービスと組み合わせることで、より高度なサーバーレスアプリケーションを作れると思いまし

    【書評】サーバーレスシングルページアプリケーション | PSYENCE:MEDIA
    mactkg
    mactkg 2017/06/26
  • プロダクトチーム ( エンジニア、デザイナー含む ) で保育士体験をしてきた話 | PSYENCE:MEDIA

    プロダクトチーム ( エンジニア、デザイナー含む ) で保育士体験をしてきた話 ku-suke 2017.06.21 259 30199300 こんにちは、プロダクトマネジメントチームの川畑( @ku_suke )です。 担当プロダクトのkidsly(キッズリー)に何人か新しいメンバーが入ってきたということもあり、顧客理解の一環としてチームメンバーで保育士体験をしてきました。今回はキッズリーを初期よりご利用いただいている園に協力いただき、0~5歳の元気いっぱいの子どもたちと1日を過ごしました。 キッズリーとは? kidsly(キッズリー)|保育園と保護者のコミュニケーションサービス 保育士と家族のコミュニケーションが深まれば、子育てはもっと豊かになる。そんな想いから、キッズリーは生まれました。 キッズリーは、保育にかかわる様々な業務を支援しながら、保育園と保護者のコミュニケーションを深める

    プロダクトチーム ( エンジニア、デザイナー含む ) で保育士体験をしてきた話 | PSYENCE:MEDIA
    mactkg
    mactkg 2017/06/22
    保育園向けアプリ開発者がユーザーの元に出向いて実際に保育士体験をするの良い、なかなかドッグフーディングとか難しいもんな
  • 【WWDC2017】iOS開発におけるEmbedded Framework活用法 + ラボノススメ | PSYENCE:MEDIA

    【WWDC2017】iOS開発におけるEmbedded Framework活用法 + ラボノススメ 井原岳志 2017.06.14 84 15292020 こんにちは。井原 (@nonchalant0303) です。スタディサプリENGLISHのiOSエンジニアをやっています。 今回はEmbedded Frameworkを活用したiOSアプリの設計についてご紹介します。 ちなみにですが、2017年6月5日 ~ 9日、アメリカのサンノゼで開催されたWWDC2017に参加してきました。WWDCではKeynoteをはじめとしたセッションの他に、Appleで働く様々な分野のエンジニアとディスカッションをできる『ラボ』というブースがあります。Embedded Frameworkでの設計についていろいろと質問することが出来たので、そこで得た知見も併せてご紹介します。 はじめに 現在、開発しているiOS

    【WWDC2017】iOS開発におけるEmbedded Framework活用法 + ラボノススメ | PSYENCE:MEDIA
    mactkg
    mactkg 2017/06/14
    「この開発手法どう思う?」ってラボに行ってきた記事良い
  • [Android Architecture Components] - Room 詳解 | PSYENCE:MEDIA

    こんにちは。Quipper で Android Developer をしている daruma です。 今回は Android Architecture Components の Room について深掘っていきたいと思います。 引用: Android Architecture Components 前回 : [Android Architecture Components] Lifecycle, LiveData and ViewModel 詳解 Room とは Google I/O 2017 Architecture Components - Persistence and Offline で発表のあった SQLite の Object Mapper です。ORMではありません。Annotation Processing Tool を用いており、以下の特徴を持ちます。 一般名詞なので検索が

    [Android Architecture Components] - Room 詳解 | PSYENCE:MEDIA
  • 1