RAKSUL TechBlog

ラクスルグループのエンジニアが技術トピックを発信するブログです

Technology

Hack Week/ID基盤開発インターンチームレポート

こんにちは、エンジニアの泉田です。ラクスルでは先日8/30から9/3にかけてHack Weekを実施しました。Hack Weekはラクスルで開催している年1回、約1週間のハッカソンです。今年は4回目となり、日本、ベトナム、インドのオフィスのエンジニアから、サマーイン…

Macなら ビルド終了 声で知る

こんにちは。文字化けおじさんです。暑くなって参りましたが、皆さんお元気でしょうか? 最近は、私は社内業務で使うMacアプリ(時々Windowsアプリ)の開発を担当しており、Swiftを書いたり、TypeScript + React でElectronアプリとして作ったりしています。…

新卒メンバーでAWS研修に参加しました!

こんにちは。21卒新卒エンジニアの山中です。今回は、6月1日〜3日に、新卒メンバー5人で、アマゾンウェブサービスジャパン株式会社様(以下 AWS Japan 様)主催の「AWS Jumpstart for NewGrads」という新卒向け研修に参加してきたので、そのレポートをしたい…

Apply code-splitting in Novelty front-end side

Hi, I am Nuong, working as a Front-End (FE) developer for the Novelty team. Novelty is an e-commerce website that allows small and medium businesses to do on-demand printing for novelty items. At Novelty, we care a lot about delivering the…

新春!文字化けクイズ

初めまして、「文字化けおじさん」です。社内で文字化け事案が発生するといつの間にかその場に居る(リモートワーク環境下では、Slackのチャンネルに現れる)ことから、このような名前になりました。好きな食べ物は豆腐です。本業は印刷事業のサーバサイドエ…

過去の負債に立ち向かったDBパフォーマンス改善の話

はじめに こんにちは。ラクスルのECチームでサーバサイドエンジニアをしている市島です。 ECチームではトップページや商品の料金表、購入導線、弊社のCS(カスタマーサポート)の方々が使う管理画面の開発等を担っています。 EC部分はラクスルの玄関口で、会社…

Protocol Buffers で快適な API 開発環境を構築した話

はじめに こんにちは。Raksul でサーバーサイドエンジニアを担当している山本といいます。 2020 年度の新卒として入社し、現在はDTPスクラムに所属しています。 DTPスクラムでは、主に、ラクスルで入稿された印刷データのチェックに関する機能を提供するサー…

ハコベルカーゴ iOSアプリ WKWebViewへ移行した話

こんにちは。ハコベルカーゴの開発を担当している貞元です。 ハコベルカーゴでは、ドライバー向けのiOS・Androidアプリがあり、どちらも主にWebViewを使用しています。 iOSアプリではUIWebViewを使用していたのですが、こちらは非推奨となり更新できなくなる…

「既存プロダクトに最小構成で TypeScript を導入」してみた感想

こんにちは。印刷のラクスルでフロントエンドを担当している菅野です。 以前本ブログで「既存プロダクトに最小構成でTypeScriptを導入する」という記事を投稿した者です。 上記記事はそれなりの数の方々に読んでいただけたようで嬉しく思います。 今回は、上…

長期間コミットのない社内向けRailsアプリのローカル開発環境をDockerで構築した話

こんにちは。ハコベルカーゴのサーバサイドの開発を担当している貞元です。 ハコベルカーゴの運用のためのWebアプリケーションが、サービス本体とは別に存在します。 こちらは改善や変更の必要なく、長期間コミットがない状況となっていました。 ただ、時間…

フロントエンドでもForceUpdateがしたい

こんにちは。 物流サービスのハコベルで一般貨物 (普通トラックを使用して荷主の荷物を運送する業界)向けのサービス「ハコベルコネクト」のフロントエンドを担当している丸山です。 サービスの開発・運用している中で、フロントエンドのコードが古いまま使…

CSSスタイルガイドをStorybook for HTMLに移行した話

こんにちは。印刷のラクスルでフロントエンドを担当している菅野です。 2週連続の投稿となります。(前回の記事: Jestを実行した時に、同時にESlintを走らせてみる) 現在、印刷サービスのフロントエンドエンジニアとデザイナーでデザインシステムの構築・整備…

Jestを実行した時に、同時にESlintを走らせてみる

こんにちは。印刷のラクスルでフロントエンドを担当している菅野です。 今回はJestで単体テストを実行した際、同時にESlintも走らせるための設定をご紹介します。 TL; DR jest-runner-eslintというパッケージを導入した Jestでの単体テスト実行と同時に、テ…

サービスを止めずにNFSからS3へ移行した話

こんにちは。ハコベルカーゴのサーバサイドの開発を担当している貞元です。 ハコベルカーゴのインフラはAWSで構築されています。 初期のファイル保存先はNFSが採用されていましたが、負荷が高い時に応答が不安定になることがあり、新しくファイルを保存する…

Firebase+React Nativeでつくったハコベルドライバーアプリの話

こんにちは。ハコベルの吉岡です。 ハコベルでは2019年2月に ハコベルコネクト をリリースしました。ハコベルコネクトは一般貨物 (大型トラックでの輸送をする業界) 向けのサービスで、運送業界をデジタル化していくためのプラットフォームとして、どんどん…

既存プロダクトに最小構成でTypeScriptを導入する

こんにちは。 印刷のラクスルでフロントエンドを担当している菅野です。 現在、稼動中のとあるプロダクトへのTypeScript導入を進めています。今回は、既存プロダクトへの影響を最小限に留めつつTypeScriptを導入する手順をご紹介します。 TypeScriptとは Typ…

gRPC Client Interceptor入門 with Ruby

こんにちは。サーバサイドエンジニアの三瓶です。印刷ECサイトの ラクスル の開発保守を担当するチームに所属しています。 ラクスルでは Raksul Platform Project (RPP) と称して技術負債の返済活動を継続的に行っているのですが、その流れの一環として印刷E…

WebpackerをやめるならWebpackManifestというgemが便利、という話

先日、社内のSlackでpixivさんのブログ記事 今日から簡単!Webpacker 完全脱出ガイド がシェアされてて、『あっ、これは...弊社でもやったやつではないか。』とおもいました。Webpackerは便利なんですけどね。 本記事はこのpixivさんのポストを受けて Webpac…

mini specが流行っている??うちもいつかやろう

こんにちは。 Raksul Platform Projectの水島です。 先日ふとProduct Manager(以下、PM)の平光さんから、「これって水島さんの昔の記事のことですよね?」と声をかけられました。 なになに??おお〜、私が前職のtechブログに書いたmini specに関する記事…

【Ruby】Array から Hash を作る方法7選(a.k.a. やっぱり Array#zip はかわいいよ)

ラクスルでサーバサイドエンジニアをやっている小林です。 最近の業務では、主に Ruby を書いています。 さて、Ruby の組み込みライブラリにはいろいろな便利メソッドがありますが、 みなさん推しメソッドはありますか? 個人的推しメソッドは Array#zip と …

iframe で複数の管理画面を1つの統一されたサイトに見せるパターンのまとめ

こんにちは。エンジニアの二串です。普段はサーバサイドの開発をしていますが、今日は最近仕事で取り組んだフロントよりの話になっています。 iframe を使って複数の管理画面サイトをあたかも1つの統一されたサイトとして見せるパターンをまとめます。 ifram…

TDDがうまくいかないときは、BDD形式でバックログを書いてみる

ラクスルに入ってはや2年を迎えたおっさんCTOの泉です。ラクスルに入ってから 6kg 体重が増え、ますますおっさんとしての安定感が増してきました。次の2年で 6kg 減らす予定です。 さて、今回のお題はエンジニアなら誰しも知っている有名な開発プラクティス…

脆弱性スキャナ「vuls」を導入しました

こんにちは。もうすっかり老害になったインフラエンジニアの渡邉です。 ようやく朝方涼しくなってきましたね。犬の散歩が捗ります。 突然ですが、みなさん脆弱性対応ってしてますか? 今に始まったことではないですが、特にインフラエンジニアにとっては脆弱…

今更だけどPHP7使ってみた

待望のPHP 7.0.0がついに2015/12/03にリリースされました。 っというわけでサクッと検証してみました。 スペック 使ったサーバー: IDCF 500円サーバー x2台 OS: CentOS 7.1 PHP 7.0 インストール rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-relea…

AWSのt2.nanoを使ってみた

AWSがt2.microよりさらに小さいt2.nanoをリリースしました。 サービスの詳細に関しては EC2アップデートー T2.Nanoインスタンスが利用可能に を 参照してください。スペック的には下記の通りです。 Instance Type CPU Memory 価格($/時) 価格($/月) 価格(¥/…

ブラウザとバーコードのいい関係

初めまして。入社して3ヶ月ちょっと、エンジニアの天野です。 さて、 はじめに 先日、運用中のWebシステムの一部に関して、ここはバーコードで楽にしたいねーという話が上がりました。 紙でやりとりが必要な作業があり、それに印刷されたバーコードをスキャ…

Yahoo!ジオコーダAPI を使ったアプリケーションの作り方

エンジニアの大嶋です。 先日、吉岡がブログでGoogle Mapsを使ったアプリケーションの作り方を紹介しましたが、 今回は同じAPI でも Yhaoo GeoCoding API についてご紹介したいと思います。 ラクスルのポスティングのシステムの裏側ではGoogle Maps APIだけ…

Google Maps を使ったアプリケーションの作り方

お久しぶりです。吉岡です。 ラクスルでは、折り込みやポスティングのサービスを提供していますが、 これらのサービスで使われているのがGoogle Maps APIです。 入力された住所から地図を表示して、配布エリアのポリゴンを表示する、 などのことができるとっ…

sublime text3でphpの開発環境を整える

11月入社のAです。 前職はソシャゲの会社でPerlを中心に開発しており、php歴は約2ヶ月ほどです。 sublime text3で開発する場合は、デフォルトで十分開発できるのですが、 いくつか小技的なものの紹介させて頂きます。 sshfsでサーバーをマウントしてsublコマ…

Google Docs SpreadSheetにAPIを利用してデータを追加してみよう(without zend gdata)

こんにちは。ラクスルエンジニアインターンのカンです。 食欲の秋になり、ランチがどんどんボリューム系に傾いている傾向を見せる中、 今回はGoogle Docs SpreadSheet APIを利用して新しいデータを追加する方法について書きたいと思います。 PHPでGoogle Doc…