2020-01-01から1年間の記事一覧

Akka(Scala)で書かれたレガシーシステムをRailsでリプレイスした話

前置き この記事では、AkkaとRails,もしくはScalaとRubyのどちらが優れている、などという話は出てきません。結論を先にも書いておくと、 フレームワークや言語に関わらず、テストや仕様書、CIなどがいかに整っているかが保守性に関わる 技術選定には、会社…

ドメインの管理をVALUE DOMAINからRoute 53に安全に移行した話

はじめに イタンジのSREチームの田渕です! イタンジでは、基本的にはRoute 53でドメインを管理していますが、古くから使っているものに関しては、VALUE DOMAINでも管理をしていました。しかしVALUE DOMAINではIaCツールによる管理ができないため、先日、ド…

terraformとクラウドの状態の差分を定期的に監視する仕組みを作った話

はじめに イタンジSREチームの田渕です! イタンジではクラウド管理のIaCツールとしてterraformを使っています。terraformとクラウドの状態の差分を定期的に監視する仕組みを作ったところ、うまくワークし、かなり運用負荷が下がったため、皆様にも紹介しま…

業務中にrubocop-railsのCustomCopを作成して、そのままOSSにcontributeした話

はじめに OHEYAGOの開発の田渕です! 先日、OHEYAGOで書いたコードを流用して、rubocop-railsというOSSに新機能を追加して、contributeしました! マージされたPRはこちらです。 github.com 経緯 OHEYAGOのレビュー中に、content_tagをtagにしたほうが良いと…

Railsのテンプレートエンジンを、slimやhamlから、erbに戻して乗り換えた話

はじめに OHEYAGOの開発をしている田渕です! Railsのテンプレートエンジンには、デフォルトのerbや、代替のslimやhamlなどがあります。 OHEYAGOではslimを採用していましたが、先日、テンプレートエンジンをslimからデフォルトのerbに変更しました。細かい…

Reactを使ったコンポーネント指向設計で、Atomic Designをやめようとしている話

はじめに OHEYAGOの開発をしている田渕です! OHEYAGOはtoCサイトなので、UI・UXを重要視しており、チームとしてデザイナーを2人抱えております。デザイナーは他業務との兼任ですが、それに対してエンジニアは3人なので、デザイナーの割合がとても多いチーム…

【Rails + AWS Fargate】簡単なシェルスクリプトでデプロイ前後の外形監視を行い、デプロイの安定性を高めた話

はじめに OHEYAGOの開発をしている田渕です!OHEYAGOのwebサーバーはFargate上で動いていますが、AWS Fargateでのデプロイを行う際に、マイグレーションやデプロイが本当に完了したタイミングがわかりにくいという問題がありました! 例えば、マイグレーショ…

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万通ほどのメッセージを送受信しています。 チャットなども含みますがメールが大半を占めており、メール送受信周りでは障害含め色々ありました。 今回はメール送受信系に限って運…