読者です 読者をやめる 読者になる 読者になる

Docker / Apache Mesos / Marathon による3倍速いIQONクローラーの構築

Docker インフラ クローラー

わーい!コンテナたのしー!🐾

こんにちは。流行りには積極的に乗っていきたい。インフラエンジニアの光野です。

弊社が運営するファッションサイトIQONでは、日々200以上の提携ECサイトから100万のオーダーで商品をクロールしています。 新商品の追加・商品の在庫状況・セールの開催など情報は日々変化するため、弊社において「正しくクロールすること」と「速くクロールすること」は肝心カナメの要素です。

本記事では、特に「速くクロールする」という目的で構築したコンテナベースの新クローラーシステムを紹介いたします。 このクローラーシステムは、最終的にクロール時間67%減維持コスト70%減という成果が得られました。

キーワード:
コンテナ, Docker, Apache Mesos, Marathon, AWS Lambda, Amazon EC2 SpotFleet

続きを読む

新しいアプリを作るときによく使うSwift Extension集

iOS Swift

iOSエンジニアの庄司 (@WorldDownTown) です。

最近、業務で新しいiOSアプリを立て続けにいくつか開発する機会に恵まれました。 そんな中、いくつもアプリを使っていると、どのアプリでもよく使う処理があぶり出されてきます。 そういう処理はSwiftのExtensionとして別ファイルに書き出し、他のアプリへも切り出しやすいように個別のFrameworkにして管理しています。 Frameworkの管理については過去のこちらの記事を参考にしてみてください。

今記事では、最近の開発でよく使ったExtension集をご紹介します。

続きを読む

UIStackViewを使った詳細ページ実装のすすめ

iOS Swift UI

こんにちは。 iOSエンジニアの遠藤です。 最近ユーザー詳細ページのリニューアルをすることになり、UIStackViewで実装しました。 UIStackViewを使ってとてもシンプルに実装できたので、UIStackViewで詳細ページを実装するメリットと実装について紹介します。

続きを読む

Androidアプリを長く開発し続けるために気をつけている9個のルール

Android

Androidエンジニアの @nissiy です。Androidが発表されてからもうすぐ10年になろうとしています。長いですね。
実はAndroid版IQON、今年の4月でリリースしてから丸5年を迎えます。ここまで長くサービスを続けられて、かつ3年連続でベストアプリをいただけたのは、使ってくれているユーザーの方々のおかげであると日々感謝しています。
この5年で様々な追加機能の開発を行ってきました。新機能を1つ追加する度に、古い機能を1つ削除することを徹底して開発を進めてきたものの、長く開発を続けているのでそれなりに巨大なアプリになっています。

今回はAndroid版IQONを長く開発し続けるためにチーム内で徹底しているルールをいくつか紹介したいと思います。
当たり前な話ばかりですが、大きくOSのアップデートを繰り返すAndroidのアプリ開発に取っては大事な話ばかりですので、少しでも参考にしていただけると嬉しいです。

f:id:vasilyjp:20170227234424p:plain

続きを読む

形態素解析とNgramを併用したハイブリッド検索をSolrで実現する方法

こんにちは、バックエンドエンジニアの塩崎です。 今まではiQONの全文検索用のインデックスには形態素解析だけを用いていましたが、先日Ngramも併用することで検索を改善しました。 その結果、検索結果のヒット数が向上し、なおかつ検索ノイズの増加を軽微なものに抑えることができました。

この記事では、Ngramを併用することのメリット、およびそれをApache Solrで利用する方法について紹介します。

続きを読む

就活生よ、偉そうになれ! Ruby開発者まつもとゆきひろ氏がエンジニア志望学生に贈る言葉

こんにちは、VASILYバックエンドエンジニアの塩崎です。 今年の就職活動のスタートは3月になるそうなので、学生の皆さんは自分の進路について色々と悩んでいる時期かと思います。 今回のTECH BLOGは、Rubyの開発者であり、VASILYの技術顧問でもある、まつもとゆきひろ氏(以下、Matzさん)にエンジニアの就職活動について色々と質問した内容をお届けします。 将来エンジニアとして活躍したい学生さんの助けになればと思います。

続きを読む

デザインデータに忠実にCSSコーディングするためのテクニック

Web

こんにちは、Webフロントエンドエンジニアの権守です。 フロントエンドエンジニアの皆さんは、リリース前の社内QAにてデザイナーにピクセルのずれを指摘されて修正したという経験があるのではないでしょうか。今回はiQONのPC・スマホサイトを構築する上で、デザインデータに忠実なCSSコーディングをどのように実現しているかを紹介します。

f:id:vasilyjp:20170202154557j:plain

続きを読む