ブックマーク / zenn.dev/coconala (61)

  • ライブラリのバージョン管理ツールDependabotを導入しました

    はじめに こんにちは。株式会社ココナラアプリ開発グループ、iOSチームのじょにーです! 今回はiOSチームで最近導入したDependabotについて概要から設定方法、どのように運用しているかまでお話ししていきます。 Dependabotとは? Dependabotはリポジトリ内の依存関係をチェックし、必要に応じてパッケージバージョンの脆弱性をメールなどで通知したり、バージョン更新用のPull Requestを任意のタイミングで自動的に発行してくれるなどの役割を担っています。 元々は独立したサービスでしたが、2019年にGitHubが買収し、現在はGitHubホストしているbotサービスのひとつとなっています。 Dependabotは大きく分けて以下3つの機能が存在します。 Dependabotの機能 説明

    ライブラリのバージョン管理ツールDependabotを導入しました
    yug1224
    yug1224 2024/10/11
  • フロントエンドのテスト戦略ってどうすればいいの?

    こんにちは! 株式会社ココナラの法律相談事業部でWebエンジニアをしている 原井夏樹 です。 ココナラ法律相談というプロダクトのフロントエンド・バックエンド開発を担当しています。 よければXのフォローをお願いします!喜びます! @superhahnah この記事ではフロントエンドテストの導入にあたり、私たちのプロダクトではどんなテスト戦略をとるべきかを調査・検討して得られた知見を共有します。 読んでくださる皆さんの参考になれば幸いです。 そもそもフロントエンドのテストって色々ありすぎてよくわからん 「〇〇テスト」っていう用語、当にたくさんありますよね。 例えば… ユニットテスト(単体テスト) インテグレーションテスト(結合テスト) E2Eテスト(End to End テスト) 手動テスト ロジックテスト インタラクションテスト スナップショットテスト ビジュアルリグレッションテスト アク

    フロントエンドのテスト戦略ってどうすればいいの?
    yug1224
    yug1224 2024/10/09
  • 「UV Study : Vue.js LT会」へ登壇しました!

    こんにちは! 株式会社ココナラ フロントエンド開発グループのよしみんです。 今回は、8/20(火)にオフラインで開催された「UV Study : Vue.js LT会」へ登壇しましたので、そのレポートです。 イベント概要 イベント概要は以下の通りです。 Vue.jsをテーマにしたLT会です。 Vue.jsについて、各自興味のあるテーマを持ち寄ることで知識を深めていくことを目的としています。 発表内容は Vue.jsにまつわる技術情報であればなんでも構いません。 ユニークビジョン株式会社様が毎月主催されている「UV Study」という技術勉強会で、今回はVue.jsをテーマとしたLT会でした。 勉強会への登壇は私自身初めてでしたが、技術を発信する第一歩として良い機会になると思い、登壇者として参加させていただきました。 今回はオフライン参加のみで、ユニークビジョン社様のオフィスで開催されました

    「UV Study : Vue.js LT会」へ登壇しました!
    yug1224
    yug1224 2024/09/03
  • ココナラiOSアプリのマルチモジュール化とビルド時間改善について

    こんにちは。株式会社ココナラアプリ開発グループ、iOSチームの上沼です。 以前、SPMによるマルチモジュール化を検討していましたが、マルチモジュール化が一区切りついたので、今回はどのように導入したか、どのくらい効果があったかなどをご紹介していけたらと思います。 移行に至った背景 規模の大きいアプリになってきた影響でビルド時間が増加し、開発効率が低下してしまっていることが大きな課題としてありました。また、ココナラiOSアプリはFrameworkによるモジュール分割がされているものの、正しく分割されておらず、依存関係が曖昧になっているという現状がありました。 これらを改善するため、SPMによるマルチモジュール化を実施しました。 モジュール構成 基的には機能単位でモジュールを分割しつつ、複数の機能で利用するものについては共通モジュールとして切り出しています。 詳細はこちらの記事で紹介しているの

    ココナラiOSアプリのマルチモジュール化とビルド時間改善について
    yug1224
    yug1224 2024/08/29
  • ココナラでの共通UIについての取り組み

    こんにんちは。 フロントエンド開発グループのいっちーです。 ココナラでは新規サービスの立ち上がりに伴い、ヘッダやフッタといったすべてのサービスで利用される共通UIの需要が高まってきております。 今回はその課題解決に向けて現在進行している取り組みについてのお話になります。 課題感 すべてのサービスで共通のUIとして実装されているヘッダ、フッタに変更が生じた場合、すべてのサービス(リポジトリ)で修正する必要がありその都度対応していくのがものすごく大変なのは想像に難くないかと思います。 そこで共通UIを外部に切り出し、各サービスがそれを参照するような構成にすることでこれを解消しようと考えます。 マイクロフロントエンドにおける水平分割を部分的に行うようなイメージです。 技術選定 技術選定に際し下記の3点について考慮しました。 サービスごとのフレームワークとの競合 パフォーマンス劣化 SEOへの影響

    ココナラでの共通UIについての取り組み
    yug1224
    yug1224 2024/08/26
  • GitHub ActionsとDanger JSを組み合わせて自動PRチェックを使い続けて気がついた事

    こんにちは。 株式会社ココナラ フロントエンド開発グループの三浦です。 皆さんはこんな経験はないでしょうか? 「マージ先がdevelopになっててうっかりマージしてしまった!」 「毎回同じチェックをしてるはずなのになぜかチェックがすりぬけてしまった!」 どうです?ありますよね? 私はあります。 といった始まりのDangerを使ってみた記事を書いて早いもので11ヶ月、約1年という月日が流れてしまいました。 ちなみに上記の記事はこちらのリンクからも読むことが可能です。 「まだ読んだことないよー」という方や 「改めて読み直してみようかな」といった方は是非ご覧になってください。 Dangerとは 初めてDanger JSを知る人にむけて、一応のおさらいとしてDanger JSについて軽く説明します。 一言で言うと、チーム内で慣習的に行われているコードレビューを自動化してくれるツールです。 Dang

    GitHub ActionsとDanger JSを組み合わせて自動PRチェックを使い続けて気がついた事
    yug1224
    yug1224 2024/08/14
  • バージョンアップ対応に苦労した過去の自分に送りたい7つの心得

    こんにちは。 株式会社ココナラでバックエンド開発に従事するRKと申します。 みなさまはシステムのバージョンアップ対応をした経験はありますでしょうか? システムの安定稼働に配慮して一定期間で実施している場合もあれば、利用しているライブラリや開発言語そのものの End Of Life(以降、EOL) によってバージョンアップを余儀なくされて実施した場合もあるでしょう。 どちらにせよ、ユーザーの皆様に安心してシステムをご利用いただくためにも、バージョンアップ対応はとても大事な作業の1つとなります。 弊社ココナラでも、もう少しでEOLを迎える/迎えた開発言語や環境を持つシステムは存在します。 記事では、ココナラのとあるシステムのバージョンアップ作業対応を実施した際の私自身のふりかえり内容を記載します。 当にこの記事を過去の自分に送って読ませたい。 なお、弊社ではすでにバージョンアップに関連する

    バージョンアップ対応に苦労した過去の自分に送りたい7つの心得
    yug1224
    yug1224 2024/08/08
  • 第13回 ココナラ社内技術カンファレンス を開催しました

    はじめに ココナラのインフラ・SRE チームのクララです 今回は社内技術カンファレンス運営として、2024-07-29 に開催された「第 13 回 ココナラ社内技術カンファレンス」の様子をレポートします! 社内技術カンファレンスとは 目的 ココナラでは半年に 1 度、すべてのエンジニアが集まって技術カンファレンスを開催しています 会の初めには、弊社 VPoE の村上から技術カンファレンスの目的が伝えられます 構成 技術カンファレンスは以下の2部構成で実施しています 1 部 テックブログの View 数表彰 社員によるライトニングトーク 2 部 懇親会 会場 第13回 ココナラ社内技術カンファレンスは、弊社のラウンジで開催しました エンジニアが増えたことで、会場である弊社ラウンジは収容人数の限界に近づいています... 「次回から外部会場を貸し切るなどアップグレードした内容になる」と楽しみな予

    第13回 ココナラ社内技術カンファレンス を開催しました
    yug1224
    yug1224 2024/08/06
  • 不確実性を減らすコミュニケーションのコツ

    はじめに こんにちは! 株式会社ココナラの募集部のマーシャです。7年くらい前に日に来て、6年間日で働いています。私はコミュニケーションの専門家ではありませんが、西洋文化圏から来ており、内向的で、見た目も異なるため、コミュニケーションの違いに気付きやすく、それがなぜそうなるのか、どうすればより効率的にできるのかを考える傾向があります。今までの経験を通じて、以下で具体的にお話ししますが、いくつかの一般的なコミュニケーションパターンに気づきました。これらの一部は文化に起因し、効果を発揮しています。しかし、それらを認識し、少し努力することでさらに職場でのメリットを得ることができると思います。また、コミュニケーションをより親しみやすくするために絵文字を使用するような一般的なアドバイスではなく、実践的な戦略に焦点を当てていきます。 ※ 研究大学出身で論文のように固く書く傾向がありますが、基礎的な話

    不確実性を減らすコミュニケーションのコツ
    yug1224
    yug1224 2024/07/10
  • ココナラ会計システムの話

    株式会社ココナラ DevOps開発グループ/業務システム開発チーム所属のもりしたです。 今回はわたしのチームが主に担当している会計システムについてご紹介したいと思います。 会計システムって? ココナラにおける会計システムは大きく3つの役割を持っています。 お金の動きを記録する 集計情報を提供する 正確性を担保する ココナラスキルマーケットでの取引ごとに発生するお金の動きを会計観点で記録し、さらに取引単位(※)で記録したお金の動きを月単位で集計します。 記録および集計された会計情報は経理担当が行う月次決算の業務にて正しいことを検証します。 前者の2つはシステムが自動的に行いますが、3つ目は経理担当が利用する仕組みの提供となります。 なお、ここでの取引は "購入者がサービスを購入し、購入者と出品者がやりとりを行い、出品者が納品する" といった一連の取引を指しています。 3つの役割の詳細は後ほど

    ココナラ会計システムの話
    yug1224
    yug1224 2024/06/28
  • 技術者の異常な愛情 または私は如何にして心配するのを止めてネットワーク機器を愛するようになったか

    ご挨拶というか、枕 桜の花も散り葉桜が目につく季節となりました、いつもお世話になっております。ココナラ情報システムグループの山田志門(RTV710)です。イベントなどでは様々な方々に大変お世話になっております。 さて今回の記事はどんな内容にしようかと考えたのですが、SASEの続報も、Jamf Proの話もうちのグループのメンバーが既に語ってしまっていることを考えると、ちょっと他のメンバーではあまり書かない内容がよいのではないかと思うようになりました。 私が書く、書ける内容。それもうちの会社のテックブログで書ける範囲であれば、一体なんだろう?窓から見える、ライトアップされたスカイツリーを眺めながら考えておりました。ああ、今日は「粋」だな(ライトアップの種類の話です)。 そう言えば、誰もネットワークの話をしていないじゃないか、と、ふと気づきました。 確かに、社内で今でもネットワーク機器に触れる

    技術者の異常な愛情 または私は如何にして心配するのを止めてネットワーク機器を愛するようになったか
    yug1224
    yug1224 2024/05/01
  • 登壇を通して新卒1年目を振り返ってみた

    株式会社ココナラのプロダクト開発部フロントエンド開発グループでエンジニアをしているのんちゃんと申します! 今回は 3/19(火)に開催された Sansan 株式会社主催『23 新卒エンジニア 1 年間の振り返り LT 会』に登壇しましたので、その時の様子や登壇内容について紹介します。また、この登壇のテーマが「振り返り」ということもあり、私自身にとって新卒 1 年目を振り返る良いきっかけにもなりましたので、その際に感じた「1 番大切にしなければならない考え方」についても後半でご紹介できればと思います。 LT 会の概要 LT 会は Sansan 株式会社のオフィスで行われました。 この LT 会 では Sansan 株式会社、弊社の他 2 社を含む計 4 社合同で開催され、それぞれの会社から 23 年新卒 エンジニアが 2 人ずつ登壇をしました。 発表後には懇親会もあり、全体を通して非常に和気

    登壇を通して新卒1年目を振り返ってみた
    yug1224
    yug1224 2024/04/24
  • 24卒 内定者インターンシップ フロントエンド編

    ご挨拶 はじめまして、ココナラ新卒2期生のはるきと申します。 今回はココナラの入社前インターン(1月〜3月)の感想を記事にさせていただき、新卒エンジニアの方や就活を控えている後輩の皆さんの参考になれば嬉しいです! 目次 自己紹介/スキルセット ココナラのインターン インターンでの学び 率直なコミュニケーション 主体性 ココナラで目指すもの 自己紹介/スキルセット 2024年1月から3月までの間、フロントエンド開発グループで内定者インターンとして業務し、4月より正式に新卒2期生として入社しました。 情報系の四年制専門学校を卒業し、学校ではネットワーク構築やメールサーバの構築、webアプリやスマホアプリなど様々な開発を講義を通じて行いました。 また、ココナラの夏季インターン(3Week)にも参加し、そこではNode.JS(Express)とAzure、MySQLを用いてwebアプリを制作した経

    24卒 内定者インターンシップ フロントエンド編
    yug1224
    yug1224 2024/04/24
  • WebのE2Eテスト自動化〜テストレポート編〜

    こんにちは!株式会社ココナラのプロダクト開発部QAチーム所属の"まる"こと鈴木です。 今回は以前投稿した、「WebのE2Eテスト自動化〜ツール選定編〜」の続編に当たります。 「なぜツール選定の次がテストレポート編やねん」とツッコミが聞こえてきそうですが、昨年のテスト自動化カンファレンス2023に登壇した際に、しれっと紹介したテストレポートツールへの質問が多かったので、今回はそちらに少しでもお答えできればと思い、このテーマを選びました。 テストレポートツール"reportportal" 弊社では、WebのE2Eテストのレポートツールとしてreportportalを利用しています。 まず前提として、テストレポートの必要性について整理します。ドキュメントとしてはJSTQBのAdvancedLevelシラバス〜テスト自動化エンジニア〜の中にある「5.テスト自動化のレポートとメトリクス」に詳細が記載

    WebのE2Eテスト自動化〜テストレポート編〜
    yug1224
    yug1224 2024/04/10
  • スロークエリ解決について

    こんにちは。株式会社ココナラDevOpsチームのソクです。 入社1年になりました。最近、前に紹介したレガシー移行と共に既存のシステムに存在する問題解決のタスクが多いです。 その中で今回はパフォーマンス改善として行っている「スロークエリ改善」を紹介します。 スロークエリ データベースで実行したクエリが基準より遅いものです。基準はそれぞれ違うはずですがココナラでは「1秒以上」かかっているクエリをスロークエリと呼びます。 なぜ解決が必要? Webサービスの品質として応答時間は大事な要素です。サーバサイド処理時間中、DBの処理時間が比較的長いし最初には問題なかったけどデータが増えると遅くなる可能性があるところです。 そのボトルネックを解決して応答時間を短くしてサービスの品質を上げることが目標です。 環境 Aurora MySQLバージョン3 互換性を提供しているのでMySQL 8.0と同じ感じで使

    スロークエリ解決について
    yug1224
    yug1224 2024/04/04
  • ログ調査基盤を構築してみた

    こんにちは。 株式会社ココナラのインフラ・SREチーム所属の かず です。 システム運用において、有事の際に迅速かつ適切なシステム稼働状況の確認は欠かせません。 その手段の1つとして、ログの調査や分析の効率化は切っても切れない関係です。 システムが成長するにあわせ、ログの種類や量が多くなり、結果としてログの調査や分析が難しくなるのはよくある話かと思います。 弊社でもサービスのグロースに伴って、ログの種類や量が多くなり、結果としてログの調査や分析で課題を抱えていました。具体的には以下の2点です。 ログから原因調査を行うには、複数ログを横断・突き合わせが必要 ログの追跡に必要な情報がログに出力されない場合がある そこで、課題への対応としてログ調査基盤の構築を行いました。 記事では背景や苦労したこと、効果についてご紹介します。 複数ログの横断調査実現に向けて ログ調査基盤の構築 苦労したこと

    ログ調査基盤を構築してみた
    yug1224
    yug1224 2024/03/29
  • ココナラのCDN構成についてご紹介

    お久しぶりです。 株式会社ココナラのシステムプラットフォーム部インフラ・SREチームに所属している ぐっさん です。 前回はAWSへログインするための仕組みを見直しした際のことをご紹介させていただきましたが、今回は打って変わってココナラで利用しているCDNについてご紹介しようかと思います。 CDNとは そもそもCDNとは何かということをざっくりと説明すると、ユーザーがWebサイトにアクセスした際に受け取るコンテンツを配信専用のサーバーにキャッシュとして持たせて配信することでユーザーに高速に届ける仕組みです。 CDNはコンテンツを配信することに特化しているため、高速かつ障害性にも優れています。 また世界のいたるところに配信サーバーが配置されています。 そのため、オリジナルのWebサイトと国を跨ぐほど離れた場所からのアクセスであっても、その距離を感じさせないほど高速にページを閲覧することができ

    ココナラのCDN構成についてご紹介
    yug1224
    yug1224 2024/03/01
  • エンジニアの評価制度についてディスカッションしてきました

    こんにちは! 株式会社ココナラで執行役員 VP of Engineeringの村上です。 今回は2/15(木)に開催されたオフラインイベントに登壇してきましたのでその報告です。 テックカンパニーにおけるエンジニア評価の重要性 イベントとしては、エンジニア評価制度がテーマとなっています。 主にこれからエンジニア向けの評価制度を設計していきたいと思っている方や運用していて悩みがある方などを対象として、各社の運用を紹介したり、気になる疑問に対してディスカッションするという内容です。 イベント会場 イベントは、BuySell Technologies社のオフィスをお借りして開催させていただきました。 新宿御苑近くの好立地でアクセスもよく、スペースも広々としていました。 こういうイベントをやるには最適ですね。 発表内容 イベントの登壇者は、以下3名でした。 稲垣 裕介 氏 | 株式会社ユーザベー

    エンジニアの評価制度についてディスカッションしてきました
    yug1224
    yug1224 2024/02/23
  • 2024年上期 フロントエンド開発グループのオフサイトミーティングレポート!

    はじめに こんにちは! 2023年10月にフロントエンドエンジニアとして株式会社ココナラに入社したよっちと申します! 記事は、先日開催されたフロントエンド開発グループのオフサイトミーティングのレポートになります! 私自身初めてのオフサイトミーティングでしたが運営のサポートをさせていただいたので、当日の様子や感じたことを書いていきます! オフサイトミーティングとは? オフサイトミーティングとは、普段の職場や現場から離れた場所でミーティングを行うことです。 オフィスから離れることで気楽にリラックスした状態で話し合うことでき、よりオープンなコミュニケーションを取ることができます。 その結果、メンバー同士の相互理解が深まり、相談、協力しやすい関係性を築き上げることができます。 弊社では開発グループごとに半年に1回程度の頻度でオフサイトミーティングが開催されています。 過去のオフサイトミーティング

    2024年上期 フロントエンド開発グループのオフサイトミーティングレポート!
    yug1224
    yug1224 2024/02/22
  • 「TechBrew in 東京 〜SRE大集合!信頼性を高める取り組み〜」へ登壇しました!

    こんにちは。 株式会社ココナラのインフラ・SRE チームに所属しているKKと申します。 2/14(水)に開催されたFindyさん主催 「TechBrew in 東京 〜SRE 大集合!信頼性を高める取り組み〜」 に参加しましたので、簡単ですが報告となります。 今回は私にとって人生初の、社外イベント登壇でもあったのでその様子についてもお伝えします! イベント概要 開催概要は以下のとおりです。 サービスをスピーディに企画や開発をするだけではなく、その後のリリース後の運用も大事とされています。 「SRE――Site Reliability Engineer(サイト信頼性エンジニア)」は信頼性を高めるための取り組みを日々行ってます。 「自社では信頼性を高めるためにどのような取り組みを行っているのか?」をテーマのLTで各社の取り組みを共有し合える場を目指します。 イベントページはこちらです。 会場は

    「TechBrew in 東京 〜SRE大集合!信頼性を高める取り組み〜」へ登壇しました!
    yug1224
    yug1224 2024/02/18