React + TypeScriptのtoCサービスでのIE対応の際にハマったことまとめ

はじめに OHEYAGOの開発をしている田渕です。去年の話になるのですが、OHEYAGOでInternet Explorer(以下IE)対応を行いました。 いろいろ詰まる部分があったので、知見として共有します。 経緯 リリース時には、IEの対応を完全に切って、IEでアクセスした場合…

typescript-eslintの最新オプションno-unsafe-*を使って、TypeScriptの型リファクタリングを簡単に行った話

はじめに OHEYAGOの開発の田渕です。 先日eslintを最大限活用してTypeScriptの型安全を少しずつ高める方法という記事を書きました。 さらに加えて、つい最近(約2週間前)、3/8にリリースされたtypescript-eslintの新機能を活用して更にリファクタリングするこ…

CloudFront+Lambda@Edgeでエッジコンピューティングする

GA technologies / イタンジの中村です。 技術者寄りのプロダクトマネージャーとして、プロダクト企画・開発からリサーチ・営業まで浅く広く何でも屋をしています。 CloudFrontでエッジコンピューティング? 今日は小ネタとして、n番煎じですがLambda@Edgeを…

デプロイ後のAWS ALBエラー数高騰に対処した話

はじめに こんにちは、はじめまして。イタンジ株式会社のtakumi1129と申します。 私事ではありますが、最近体重計に乗ったら体重が3桁になっておりました。流石に冗談かと思って乗り直してみたものの冗談ではありませんでした。正月太りって恐ろしいですね!…

PageSpeed Insightsの結果を30点台から70点台まで上げるまでにやったこと

はじめに OHEYAGOの開発をしている田渕です。 OHEYAGOではページの大部分をReactでレンダリングしているので、スマホなどで見た際のパフォーマンスが問題になりやすいです。SEOにも悪影響がありますし、ユーザーからも「OHEYAGOが重い」という声をしばしば頂…

OHEYAGOでファーストビューでのJavaScript容量を28%削減した話

はじめに OHEYAGOの開発をしている田渕です。特にフロントエンド専門というわけではないのですが、最近はフロントエンドのチューニングをたくさんやっていたので、フロントエンド関連の記事が多くなりそうです。 サイトの速度はSEOなどの面からも重要で、そ…

eslintを最大限活用してTypeScriptの型安全を少しずつ高める方法

はじめに あけましておめでとうございます! OHEYAGOの開発の田渕です。 OHEYAGOではTypeScriptを導入し、少しでもバグが発生しにくい状態を心がけています。しかし、リリース直後(昨年9月末)にはTypeScriptの良さを活かしきれていない状態でした。具体的に…

正月にfullstackopenをやってみた

はじめに イタンジの福崎です。 社内のslackで煽られてblog記事2本書くって言ったことを思い出し、2本目の記事を書いています。 正月休みに入ってから速攻インフルエンザになって、インフルエンザ治ってからはやろうと思ってた fullstackopen をちょいちょい…

メール送受信系サービスを構築する際に気をつける事

AWS

はじめに イタンジの福崎です。 弊社で運用しているサービスで現在年間約1000万通ほどのメッセージを送受信しています。 チャットなども含みますがメールが大半を占めており、メール送受信周りでは障害含め色々ありました。 今回はメール送受信系に限って運…

VPoEに就任しました

※こちらの記事は2023年4月に更新しております。※ はじめに イタンジの福崎です、postするのが遅くなりましたが、11/1にイタンジ株式会社のVPoEに就任しました。 イタンジは前CTOの後ポストが空いたままでしたが、エンジニア組織が徐々に大きくなってきて、採…

stylelintを使うためにSassからScssに乗り換えた話

TL;DR auto-fix機能付きでSassに対応しているlinterが見つからなかったので、stylelintを使うために、SassからScssに乗り換えた。変換については、sassc-rubyを使った簡単なスクリプトと、エディタの置換機能を用いて行った。 はじめに OHEYAGOを開発してい…

簡単な表記揺れチェッカーをCIに組み込んで、レビュー効率を改善した話

はじめに OHEYAGOの開発を行っている田渕です。 早速ですが本題に入ると、Webサービスを開発する上で、表記揺れが問題になることはよくありますね。レビューで毎回チェックするのも面倒くさい大変なので、機械的にチェックしてしまいたいと思いました。 最低…

Docker for Mac遅すぎる問題の解決

こんにちは、イタンジの福崎です。 Docker for Macですがプロジェクトが大きくなるのに比例して重くなっていき、我慢できなくなりました。 docker syncを試したりもしたんですが安定しないので、もうMacからLinuxに変更しようかと思ったりもしましたがVagran…

ISUCON9に出場して、予選敗退しました。

はじめに イタンジ株式会社に出向中の田渕です。9/7(土)に、ISUCON9に出場して、598組中50番目の最終スコアでした! 再起動試験の結果は不明ですが、通っていても点数が足りず、予選敗退となってしまいました。 予選通過まではあと1000点強でしたので、結構…

CloudFront + ALB + S3でリダイレクトを設定しつつ、静的サイトをホスティングする方法

AWS

はじめに グループ会社のイタンジ株式会社に出向している、新卒1年目の田渕です。AWSを用いて静的サイトをホスティングするという業務を担当し、構成を考えるところから始めて実際にホスティングすることに成功しました。静的サイトなのにリダイレクトを設定…

第3回社内LT会を開催しました

インターンの田渕です。 1/31にGA technologiesのグループ会社であるイタンジのオフィスで、第3回LT会を開催させていただきました。かなり遅出しにはなってしまい、誠に申し訳ございませんでした。ちゃんと社内LT会は続いておりますので、ご安心ください。(…

AWS CLIを使ってS3オブジェクトを抽出する色んな方法

AWS

こんにちは福崎です! S3にバックアップ的にロストしたくない情報を保存しており、障害発生時とかたまに検索するんですが、aws console上ではprefixでしか絞れないので、最終更新日で絞ったりソートするのどうやるんだってメモ。 日付で絞る LastModifiedの…

第2回社内LT会を開催しました

インターンの田渕です。前回のLT会で「LT会文化を作っていきたい」といった感じの発表をしたところ、LT会の運営を任せていただくことになりました! 早速開催した第2回LT会では、5名の発表者を含む50名弱の方に参加していただきました。主催する際にいくつか…

Engineer Next Lab#2でLTしてきました

前2つの記事がアクセスをいっぱい稼いだせいでハードルが上がり、震えながら執筆している名ばかり編集長の永嶋です、どうもこんにちは。 今回は、先日こちらのイベントでLT登壇してきたので、そのレポートを書こうと思います。 findy.connpass.com Engineer …

GA technologies Tech Blog 、はじめました。スタート記念LT大会もやったよ

はじめまして、1発目の記事を書くことになりました永嶋です。 11月1日の入社早々、テックブログやりましょう!と言ったら、じゃあ編集長よろしくという流れで編集長をやることになりました。 そんな流れで開設したテックブログですが、GA technologiesのプロ…

既存Railsプロダクトのdocker化

どうも、プログラマとして入社したのになぜか最近コードあまり書いてないぽんこつです。ここ数ヶ月で既存プロジェクトを頑張ってdocker化してECSにデプロイしたのでまとめます。 ただ社内でもあまりノウハウが蓄積されているわけではなく、試行錯誤の連続で…

ArchLinuxでMySQLビルド

どうも、仕事でArchLinuxを使っているぽんこつです。公式パッケージがMySQLからMariaDBに変わってしまったのでAUR管理下の自前ビルドMySQLに移行して開発していましたが、MySQLが8.0に上がったタイミングで色々困ったことがあったのでまとめておきます。 No …

ScalaでDNS lookupする

イタンジのなんでも屋エンジニアぽんこつです。最近業務の基幹機能がScalaで置き換えられることによってようやく沢山Scalaが書けるよやったね! メールアドレスのホストの妥当性をチェックしたいときなど、DNSのlookupをする機会はまあまあありますが、それを…

Rubyでちゃんと文字列からURIを抽出する

イタンジでエンジニアをしているぽんこつです。フロントからインフラまでなんでもやってます。 なにか文字列の塊からURI/URLを抽出しなければいけない、という案件はRubyに限らずよくでてくると思いますが、実際に真面目にやらないといけないとなるとかなり…

digdag+embulkを使ってテーブル毎にカラムを設定してBigQueryに流し込んでみた

横澤です、平素より格別のご高配を賜り、厚く御礼申し上げます。 先日DWH系のネタについてAthenaとfluentdの二つを書いたのですが、結論としてdigdag+embulkという構成に落ち着いてしまったのでここにご報告させて頂きます。 ここに至った細かい経緯は本記事…

AWS Data PipelineとAthenaを使ってお手軽DWHを3分クッキング

横澤です、いつもお世話になっております。 本当は5月に書こうと思っていたネタなのですが、最近は時空の歪みの影響を強く受ける事があり気づいたら6月になってしまいました。 本題です、本エントリではData Pipelineを使ってRDSデータをS3にエクスポートし…

railsのactive jobでGoole Cloudのpub/subを使う

こんばんは、エンジニアの福崎です。 最近仕事でGCPを使ってます、AWSに比べて情報は少ないけど意外にドキュメント揃っているので ドキュメント読めば簡単なチュートリアルは動かせちゃいます。 まだネットに情報少ないので個人的には公式ドキュメントを読み…

WebpackをRailsに導入する方法を比較する: 後編

こんにちは、エンジニアのケントです。 前編の解説により、webpackerが提供する方法論は js環境構築がとても楽である webpackerが提供する環境に開発がロックインされる ということがわかりました。 後半ではWebpackとRailsを独立して使う方法を解説し、ruby…

WebpackをRailsに導入する方法を比較する: 前編

こんにちは、エンジニアのケントです。 2017年のフロントエンドの開発において、Webpackが大人気です。 イタンジのプロダクトはRailsで開発することが多いのですが、WebpackをRailsに導入することを考える場合、大きく分けて二つの選択肢が考えられます。 ru…

「AIは不動産業界の敵か味方か?」不動産テック最新事例セミナーVol.1を開催しました!

現在、「フィンテック」(金融×IT)の次は「不動産テック」と言われるなど、ビッグデータ解析、AI(人工知能)などを活用し不動産業界にイノベーションを起こそうとする「不動産テック」に対して、注目が集まっています。当社は、今後ますます不動産業界のIT…