サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
デスク環境を整える
engineer.crowdworks.jp
こんにちは、 @t0yohei です。 ruby.wasm は、Ruby のコードを Wasm に変換しブラウザー上で実行できるようにする技術です。 今回は、この ruby.wasm を使用してちょっとした web アプリを作成したので、そのことについて記載してみようと思います。 ※ この記事は、RubyKaigi 2024 のクラウドワークス社ブースにて展示するクイズアプリの解説記事です。 目次 目次 作ったもの クイズアプリの解説 大まかな仕組み 使わせてもらったライブラリ i18n 対応 問題について デプロイ先 難しかったこと タイマーの部分の実装 Ruby のコード規約、JavaScript のコード規約の使い分け サンプルコード探し 感想 作ったもの Ruby に関するクイズを出題して、それに答えてもらうクイズアプリを作成しました。 RubyKaigi でのクラウドワークス社ブ
こんにちは。エンジニアの砂川です。 2023年10月頃にGoogle・Yahoo!から新しいメール送信者ガイドラインが出されました。 該当するメール送信者は、ガイドラインに沿っているか確認をし、沿っていない場合は対応する必要があります。 blog.google support.google.com 対応完了しきった皆様、お疲れ様でした。 絶賛対応中の方々、頑張っていきましょう。 ところで皆さんGmailのPostmaster Toolsの迷惑メール率の監視はいかがでしょうか? クラウドワークスではGmailガイドラインで定めているPostmaster Toolsの迷惑メール率を監視し、閾値を超えるとアラートを通知するような仕組みを作り、運用をしています。 この記事では、その仕組みをご紹介します。 なぜ作ったのか 定期的にPostmaster Toolsにログインして監視するのが面倒 (サブ
1年をふりかえる 年の瀬ご多端の折、皆様におかれましては本年も大変お世話になりました。crowdworks.jpの開発をしているプロダクト開発部部長の@hihatsです。 本記事はクラウドワークスAdvent Calendar 2023 シリーズ2の25日目の記事です。 今回は、プロダクト開発部として今年取り組んできたことと、その中での気づき、「Think Like a CTO」という書籍の話にも触れていきます。 今年やってきたこと 技術的負債解消への取り組み 昨年のアドベントカレンダーでも書きましたが、2023年も技術的負債の解消に取り組んで参りました。 結果としては、フロントエンドでの注力の割合が大きかった一年でした。詳しくは@okuto_oyamaさんの1日目の記事をご覧ください。 記事にもありますが、Vue.js化をフロントエンドを触る全チームが行える体制に整えることで加速させてい
この記事はクラウドワークス Advent Calendar 2023 シリーズ 1の1日目の記事です。 クラウドソーシングサービス「クラウドワークス」(以下 crowdworks.jp )にてエンジニアをしております、フロントエンドの可能性をしつこく信じ続ける@okuto_oyamaです。 一昨年・去年と引き続き、今年もアドベントカレンダー初日の盛り上げ手としてやっていきます。よろしくお願いします。 フロントエンド活動の振り返りをしてみよう 一昨年・去年もフロントエンド活動の振り返りをしてみましたが、今年もやっていきます。 qiita.com engineer.crowdworks.jp 全体総括編 まずは crowdworks.jp の全体のフロントエンド活動を総括していきます。 erbのVue.js化活動が拡大 昨年から続けているフロントエンドとバックエンドの分離作業についてお話ししま
こんにちは。crowdworks.jp SREチームの田中(kangaechu)です。 crowdworks.jpでは、2023年8月にAWS RDS MySQL 5.7から8.0へのアップデートが完了しました(ようやく!)。 今回はMySQL 8.0へのアップデートの手順と対応が必要な変更点について書いていきます。 MySQL 8.0にアップデートした理由 MySQL 8.0にアップデートした理由はAWS RDS MySQLのEOL対応のためです。 AWS RDS MySQL 5.7のEOLは2023年10月(のちに2023年12月に変更されました)であり、8.0へのアップデートが必要でした。 crowdworks.jpで使用している他のMySQLデータベースは8.0へのバージョンアップを完了していました。 しかしcrowdworks.jpのマスタデータベースは30億行を保持し、1日に約
crowdworks.jpでEMをしている久村です。 2023年5月より1つのチームのスクラムマスターをすることになりました。 私は開発者としてスクラムの経験はありましたが、スクラムマスターの経験はなかったです。 この記事では、直近チームで改善したことの内容と、そこからの学びを記事にしようと思います。 チーム説明 私がスクラムマスターとして関わっているチームは以下です。 エンジニアメンバーの異動・退職があり人数が減少し、プロダクトオーナー(PO)もメインとサブ(入社年次が浅い)で2名いましたが、サブの方が独り立ちしてメインで担当されるように変更になりました。 そのタイミングでスクラムマスターとして私がメンバーに加わりました。 メンバー変更した当初の状況としては、1週間のスプリント期間で以下のスクラムイベントは実施しておりました。 デイリースクラム リファインメント レトロスペクティブ プラ
はじめに Terraform職人の@minamijoyoです。先日、tfupdateが.terraform.lock.hclの更新に対応しました。v0.7.0から tfupdate lock というコマンドが追加されています。 github.com 例えば、あるディレクトリ配下のすべてのAWSプロバイダを指定バージョンに更新しつつ、複数プラットフォーム混在で使う.terraform.lock.hclもまとめて一括更新するには、以下のようなコマンドで簡単にできるようになりました。 $ tfupdate provider aws -v 5.7.0 -r ./ $ tfupdate lock --platform=linux_amd64 \ --platform=darwin_amd64 \ --platform=darwin_arm64 \ -r ./ 内部的にterraformコマンドには依
初めまして。crowdworks.jpのSREチームに所属しています @ciloholic です。 入社してかれこれ1年経ちますが、筆を執る機会がなかったため、今回が初エンジニアブログとなります。 この記事では、入社して3か月ほど行なっていた「AWS Lambda周りのメンテナンスコスト削減」の取り組みを紹介していきます。 背景 crowdworks.jpでは、多くのエンジニアがさまざまなGitHubリポジトリに色々な言語でLambdaを活用してきました。GitHubリポジトリは30個以上、使用言語はNode.js / Ruby / Goとさまざま、CI/CDもCircleCI / GitHub Actionsとバラバラです。 SREチームでは、定期的に各種言語のEOL対応やライブラリのアップデート作業を行なっているのですが、GitHubリポジトリもそれぞれ異なる、使用言語もCI/CDもバ
年の瀬ご多端の折、皆様におかれましては本年も大変お世話になりました。crowdworks.jpの開発をしているプロダクト開発部部長兼VPoEの@hihats です。 本記事はクラウドワークスAdvent Calendar 2022 24日目の記事です。 我々の組織ではこれまでも技術的負債解消に取り組んできていましたが、今期(10月)よりさらに人と時間をそこに集中しています。これまでこのブログでも紹介されてきたようにRuby on Railsのモノリスとなっているcrowdworks.jpにおいて、フロントエンドのVue.jsへの移行は今年に入ってから着々と進む中、バックエンドのほうは保守性の低下からどう脱却していくかが手付かずに近い状態でした。 この本丸を攻略するにあたって、闇雲にリファクタリングしていくぞ!では到底うまくいきそうにない。まず「何故やるのか、何をゴールとするのか」の意識あわ
こんにちは。crowdworks.jp における技術的負債の解消をリードするジャンヌチームです。 12 月ということでアドベントカレンダーの時期ですね。今年も弊社で開催しており、合計 25 名が参加して盛り上げております。 qiita.com ジャンヌチームからは @okuto_oyama が今年のフロントエンド活動の振り返りをしていました。 engineer.crowdworks.jp その中の1つに「Webpacker から Simpacker + webpack 構成へ」というものがあり、今回はそれに関する取り組みを紹介していきます。 Webpacker とは Webpacker は Rails アプリケーションにおける webpack でのフロントエンド開発をするときに用いる公式ライブラリです。このライブラリの利点として webpack のビルドシステムに詳しくなくとも汎用的な設定
この記事は クラウドワークス Advent Calendar 2022 の1日目の記事です。 クラウドソーシングサービス「クラウドワークス」(以下 crowdworks.jp)にてエンジニアをしております、フロントエンドの可能性をしつこく信じ続ける @okuto_oyama です。 一昨年・去年と引き続き、今年もアドベントカレンダー初日の盛り上げ手としてやっていきます。よろしくお願いします。 フロントエンド活動の振り返りをしてみよう 一昨年・去年もフロントエンド活動の振り返りをしてみましたが、今年もやっていきます。 qiita.com engineer.crowdworks.jp 去年と変わらず crowdworks.jp にはフロントエンド専属チームというものは存在しておりません。ですが、今年は去年よりも重要なフロントエンドにまつわる活動をしてこれたと思っています。 それでは、ご覧くださ
こんにちは。crowdworks.jp SREチームの@kangaechuです。 先日開催されたイベント HashiTalks: Japanを見ていましたが、Terraformのドリフト検出に関する発表が多く、Terraform運用において重要なポイントなんだなと感じました。 流行りに乗ったわけではないですが、今回はTerraformのドリフト検出をAtlantisで行った方法をご紹介します。 この記事は以下環境で検証しています。 Atlantis: 0.19.8 Terraform: 1.2.8 ドリフト検出 Terraformはインフラストラクチャを安全かつ期待通りに構築するために使用する、Infrastructure as Codeのソフトウェアです。 crowdworks.jpではAWS、GitHub、GCPの管理をTerraformで行っていますが、今回はAWSに絞って話します。
はじめに SREチームの @bayashi_ok です。 今回はクラウドワークスで運営しているWordPressサイトを静的ホスティングサービスであるShifterへ移行した話を書きます。 Shifterについて www.getshifter.io 特徴は公式リンクに詳しく書かれていますが、内部の仕組みとしては DockerでWordPressを更新時に起動 WordPressのコンテンツを静的HTMLに変換しS3に配置 CDN(CloudFront)からコンテンツを配信 となっており、 フロントエンドでは、WordPressを直接公開しなくなるのでWordPress本体やプラグインの脆弱性を気にすることなく運用できる バックエンドでは、必要な時のみDockerでWordPressを起動するため、セキュリティリスクが低減される と運用上かなり助かる仕組みだなと感じました。 speakerd
CoffeeScript 辞めました はじめに こんにちは、CrowdWorks のジャンヌチームのエンジニア bugfire です。 CrowdWorks は歴史のあるサービスで CoffeeScript が利用されている箇所が大量にあります。 具体的には411ファイルありました。1 いまとなっては CoffeeScript を利用したコードを新たに書くことも少なくなり、改善するときに TypeScript で書き直されることも多くなってきました。しかし、個別に変換すると時間が掛かってしまうため、まとめて機械的に変換することにしました! 3行まとめ CoffeeScript より TypeScript の方に記述を移していきたい。 利用している Sprockets の CoffeeScript 変換コードを借用して全ファイルを変換しました。 確認は変換前後の出力 JavaScript コ
「HTMLの前提についてはざっと知った、ステップアップできるHTMLの勉強がしたい」「人に勧められるHTMLにまつわる書籍はあるだろうか」「令和でHTMLを学ぶならこの1冊、というものがほしい」―――そうした人々のニーズを叶えてくれる書籍が販売された。 その名も「HTML解体新書」だ。 本ブログ記事は、レビュアーとして関わり本書を読んだ@okuto_oyamaによる感想と、HTMLのこれからについて考えていることをまとめたものである。 本の内容については、著者によるブログ記事にまとまってあるのでそちらを参考にしてもらいたい。 creators.bengo4.com まだまだHTMLについて知らないことがあった 私がHTMLについて始めて触れたのは、とあるブログサービスのHTML編集機能からだ。その頃は HTMLの仕様というものを知る由もなく、どういったタグを使うと画面上にどのように表示され
こんにちは。SREチームの田中 (@kangaechu)です。リモートワークで座ってばかりの生活に危機感を感じ、昨年11月頃からランニングを始めました。最初は1キロ走っただけでヒイヒイ言っていたのですが、最近は10キロくらい走れるようになりました。運動は嫌いな方だったのですが、走るのが楽しいと思えるようになったのが一番の収穫かなと思っています。 今回はALB(Application Load Balancer)のログ検索について紹介します。 3行で説明するよ AWSの公式ドキュメントの通りAthenaの設定をするとALBの過去ログが検索できない 正規表現をいい感じにすることで過去ログも検索できるようになった Athenaのテーブル作成、Terraformでできるよ crowdworks.jpのシステムログ検索: Athena システムのイベントを適宜記録し、利用状況の把握や障害時の調査、シ
はじめに こんにちは、ジャンヌチームです。 前回のVue3 移行記事に引き続き、フロントエンド周辺の改善をおこなっています。 今回は開発体験の向上を目的とした、 VRT の導入の記録となる記事になります。 VRT について VRT とは Visual Regression Testing のことで、画像による回帰テスト、つまり画像の変更をテストするものです。 クラウドワークスでは Vue3 移行に伴い、ほぼ全ての Vue.js コンポーネントで Storybook を定義しています。 この Storybook 定義を用いて、Storyshot による DOM レベルの自動回帰テストを行っています。 しかし CSS の変更におけるビジュアルテストは担保できていなかったため、VRT を導入することにしました。 VRT 調査対象 VRT を導入するにあたり、どのツールを用いるとよいか調査をしてみ
Vue.js ロゴ画像提供 : https://github.com/vuejs/art はじめに こんにちは、クラウドワークス ジャンヌチームの@bugfire、@okuto_oyama、@yizknnです。 ジャンヌチームはクラウドワークスの負債を管理下に置くことがミッションのチームです。 問題の大きさに合わせて、直接解決する場合や、他チームと連動したりこちらから依頼することもあります。 弊社のアドベントカレンダー「crowdworks.jp のフロントエンド活動を振り返る 2021」の記事で触れていた Vue 3 移行が完了したので、その報告になります。 Save the date: Vue 3 is becoming the new default version on Monday Feb 7, 2022.https://t.co/ub8L4KhPsJ— Vue.js (@vue
次のページ
このページを最初にブックマークしてみませんか?
『クラウドワークス エンジニアブログ』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く