タグ

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

  • Swiftはじめました - ゼクシィiOSアプリの場合 | Recruit Tech Blog

    はじめに Swift はじめました。と聞くと、読者の方は「いまさら?遅すぎじゃない?」とか、「大切なのは何の言語で書くかよりも設計じゃないの?」などと思われるかもしれません。気持ちはわかります。 しかし実際、ゼクシィアプリのコードベースは今まで Objective-C 100% でした。そして、つい最近、はじめてプロダクションコードとして Swift のコードをリリースすることができました。稿では、そこに至るまでに考えたことや、具体的なやり方を紹介できればと思います。 申し遅れましたが、この記事はゼクシィ iOS アプリの開発を担当している @tondol がお送りします。好きな結婚式ソングは lily white で「ふたりハピネス」です。1)ラブライブ!のキャラクターソングです。わざわざ脚注までお読みいただき、ありがとうございます。 背景 前述の通り、ゼクシィアプリはこれまで Obj

    Swiftはじめました - ゼクシィiOSアプリの場合 | Recruit Tech Blog
  • CircleCI 2.1 の新機能を使って冗長な config.yml をすっきりさせよう! – PSYENCE:MEDIA

    CircleCI 2.1 の新機能を使って冗長な config.yml をすっきりさせよう! 福井祐人 2018.10.11 280 585115102 こんにちは。スタディサプリ English の開発を担当しているwebフロントエンドエンジニアの福井です。 CircleCI で 2.1 configuration がプレビューとして使えるようになりました。試しに使ってみたところ冗長なconfig.ymlが ものすごくすっきりした ので簡単な例を交えて紹介します。 参考 CircleCI-Public/config-preview-sdk CircleCI new configuration documentation 2.0 の冗長な config.yml 今回用意したconfig.ymlはwebフロントエンドの典型的な例で、下記のような流れで順次ジョブを実行します。 setup -

    CircleCI 2.1 の新機能を使って冗長な config.yml をすっきりさせよう! – PSYENCE:MEDIA
  • React製のSPAのパフォーマンスチューニング実例

    オンプレミスvSphere環境をOracle Cloud VMware Solutionへ移行した際にハマったところ 2023.12.24 コーポレート

    React製のSPAのパフォーマンスチューニング実例
  • ULTRABeerBashで『大規模サービスのリプレイスへの道』と題して登壇してきました

    はじめに こんにちは。ビューティー事業ユニットプロダクト開発グループでマネジャーをしている小川です。 先月のことではありますが、ホットペッパービューティーというサービスで取り組んでいるシステムのリプレイスについて ULTRABeerBash でお話してきました。 ULTRABeerBashとは ビズリーチ社が主催する、ビールをのみながら、技術、知識、経験、哲学を共有するイベントです。 詳細については、ULTRABeerBash公式サイトをご覧ください。 ホットペッパービューティーについて 国内最大級のヘアサロン・リラク&ビューティーサロン検索予約サイトです。 予約などがおこなえるカスタマー向けのサイトと予約管理や集計分析などがおこなえるクライアント向けサイト、他にも内部向けにいくつかのサイトを連結してできているというようなサービスです。 資料の中にも記載していますが、2017年9月更新の数

    ULTRABeerBashで『大規模サービスのリプレイスへの道』と題して登壇してきました
  • iOS Size Classesを利用してユニバーサル対応を行った話

    こんにちは。AirレジのiOSアプリ開発を担当している山口です。 Airレジは昨年5月に行ったリニューアルに伴い、ユニバーサル対応を行いました。それまではiPhone/iPadで別アプリとして管理していましたが、ユニバーサル対応によりメンテナンスコストを下げることができました。 しかし、開発当初はSize Classesについての理解が浅いままユニバーサル対応を進めてしまい、レイアウト作成中に手戻りが発生したり、UIの共通化が上手くいかず分岐が複雑になってしまうなどの問題が発生していました。そこで、今回はSize Classesの概要とポイントについて書いてみました。 これからユニバーサル対応を始める方の参考になれば幸いです。 iOS8以降、多様化する画面サイズを抽象化して扱うための概念としてSize Classesが登場しました。様々なデバイスや向きに対応したAdaptive UIを実現

    iOS Size Classesを利用してユニバーサル対応を行った話
  • 「AWSからGCPに切り替えたらコストが1/10になった」CETエンジニア 吉田啓二氏インタビュー - Tech Blog - Recruit Lifestyle Engineer

    前編(「ビッグデータは“リアルタイム”でこそ価値がある」)では、リアルタイムなビッグデータ解析プロジェクト「CET(Capture EveryThing)」が始まったきっかけから、いまのチームまで組織に焦点を当てました。 後編では、いよいよビッグデータ解析のシステムについて深掘りしていきます。 Amazonのクラウドサービスを活用して作り上げた現状のシステムを捨て、Googleで作る構成に変えようとしているそう。その意図とは。 クラウドサービスのコストパフォーマンスなど、エンジニアやアーキテクトには気になる情報が満載です。 「CET」で基盤構築や分析・集計アプリケーションの開発を行っている、吉田啓二さんに聞きました。 聞き手/構成/編集/写真:小川楓太(NEWPEACE Inc.) AWS格的に運用するのは厳しいかなという印象です —— 今回構築された基盤の具体的なシステム構成はどのよ

    「AWSからGCPに切り替えたらコストが1/10になった」CETエンジニア 吉田啓二氏インタビュー - Tech Blog - Recruit Lifestyle Engineer
  • iOS大規模リファクタリング

    こんにちは。Airシリーズ開発チームでiOSの開発リードを担当している永井です。 この度、Airレジから予約台帳機能を切り出して、Airレジとレストランボードの2つのアプリとして新たに5/10にリリースしました。 iPad版・iPhone版合わせて181,175行あったAirレジですが、今回内部的にもObjective-CからSwiftに全面的に書き換えています。 まだまだリファクタリングしていきたい課題はありますが、コード行数は70%も減り(つまり元々の行数から30%になりました)、SonarQubeで示される技術的負債も500dから21dに減り、かなり成功したと言って良いのではないかと思っています。 今回の取り組みの中で、良かったこと・再検討したいことがいろいろ発見できました。それらについてまとめてみるので、これからSwift採用を検討している方々の参考になれば幸いです。 取り組みのポ

    iOS大規模リファクタリング
  • 新卒 / 新人のメンターにアサインされたんだけど、何すれば良いの? | PSYENCE:MEDIA

    今回は新卒の方が入社されて、会社からメンターにアサインされたが何すれば良いのか?どうしたらより良いメンターになれるのか?と考えられている方と一緒にメンタリングについて探求していきたいと思います。この記事を書くきっかけになったのは、現在私がサポートさせていただいているとあるお客様からのご相談でした。 お客様:新卒のメンターにアサインされたんですが、どうして行けば良いですかね・・・? 私:そうですね・・・私がメンターから教わったヒントになるかもしれないお話をさせて頂きます。 (以下、お話させていただいた内容・・・) メンターと聞くと何か偉そうだし、いかにも凄い人っぽい響きがしてしまいますよね。私もメンターをやってほしいと言われたりしますが、「自分そんなに凄くないですし・・・」ってなってしまいそうな気がします。ただ、メンタリングを受ける方(以下、メンティー)の成長を促進できるのが良いメンターと捉

    新卒 / 新人のメンターにアサインされたんだけど、何すれば良いの? | PSYENCE:MEDIA
  • Terraform + fluentd + Docker + Puree で小さく始めるモバイル行動ログ収集基盤構築 | PSYENCE:MEDIA

    Terraform + fluentd + Docker + Puree で小さく始めるモバイル行動ログ収集基盤構築 河合 航平 2015.07.07 1273 194192628259 こんにちは。 4月から新卒駆け出しインフラエンジニアとして日々奮闘しております河合です。 "モバイル行動ログ収集基盤" を "小さく" 始めたので、以下にインフラ構築からモバイルまでの設計までをまとめたいと思います。今回このログ収集基盤を作るにあたって私自身がこれまで経験したことのない技術・ツールを利用しましたので、それらの導入についてもご紹介いたします。 導入の背景 私は英単語サプリを中心にインフラを担当しています。 英単語サプリとは、聞ける・話せる・覚えてるをコンセプトとした高校受験からTOEICまで対策できる英単語学習のサービスです。 ユーザの分析によく使われるツールの1つにGoogle Analy

    Terraform + fluentd + Docker + Puree で小さく始めるモバイル行動ログ収集基盤構築 | PSYENCE:MEDIA
  • 【悲報】オフィスが無くなりました | PSYENCE:MEDIA

    ※ この記事は 2015年4月1日 にエイプリルフールとして公開されたものです。 俺の名は吉田レオ 今日から新卒2年目となる iOS エンジニアだ 突然だが、俺の働いているリクルートマーケティングパートナーズではリモートワークを推進している しかし社内でリモートワークの気運が高まる中、俺は『リアルコミュニケーションこそ至高』という言葉を信念に仕事をしていた ・ ・ ・ 一方でリモートワークは着実に社内に浸透していた 日に日にリモートで働く社員は増え、皆それぞれの生活に合わせたワークスタイルを実現した そんな中でも俺が所属するチームは『リアルコミュニケーションこそ至高』という信念を共有し、 断固としてリモートワークの波には飲まれない盤石なチーム体制だった・・・ はずだった・・・。 ・ ・ ・ リモートワークが浸透するにつれて 一人・・・ また一人・・・ 気がついたら一人になっていた・・・ と

    【悲報】オフィスが無くなりました | PSYENCE:MEDIA
  • 【エンジニア】社内 LT 大会をしました | PSYENCE:MEDIA

    エンジニア間の知見の共有について プロジェクトごとに散らばっている知見を、エンジニア間で共有しよう! ということで、リクルートマーケティングパートナーズでは隔週でエンジニアが集まってエンジニア定例会を行っています。それ以外にもConfluenceなどを使ってランチ情報から技術に関するポエムまで、エンジニア同士で盛んに共有を行っています。 今回は年度末ということで、エンジニア定例でLT大会をしようということになったのでその模様をお伝えします。(誰得) これを見て入社したいと思ってくれる方がいれば最高という感じです!採用ページだけでは伝わらない中の人の雰囲気が伝わればいいなと思っています! #1. アドテクの話 sparkgeneさん 普段は社内のインフラ周りを担当しているsparkgeneさんです。今回はアドテクの仕組みについての発表でした。リアルタイムビッディングとかの話ですね。DSPとS

    【エンジニア】社内 LT 大会をしました | PSYENCE:MEDIA
  • 【フロントエンド】新規 Web アプリケーション開発案件をふりかえってみた | PSYENCE:MEDIA

    4 ヶ月あまり続いた新規開発案件がようやく落ち着きを見せたので、ここらで振り返りをしてみたいとします1)リリースまでに巻き取れなかった不具合や未実装箇所が幾つか残っているので、まだ気持ち的には終われていないのですが…。 サービスのおおまかなアウトライン コンシューマ ( 一般ユーザー ) 向けサービス ブラウザで動く Web アプリケーション ワンソースによるレスポンシブレイアウト サポートするブラウザは IE9 以降や Android4.x 以降のモダンブラウザのみ Ruby on Rails 多言語対応あり SEO 対策はそれなりに必要 わりとフワッとしか要件が決まっていないままスタートしたので、TRY & ERROR を繰り返しながらの開発 すごく大雑把ですが、だいたいこんな感じの Web アプリケーションです。これを踏まえてフロントエンドをどのように開発していくかを設計していきまし

    【フロントエンド】新規 Web アプリケーション開発案件をふりかえってみた | PSYENCE:MEDIA
  • 1