TECH PLAY

株式会社ココナラ

株式会社ココナラ の技術ブログ

298

はじめに こんにちは。株式会社ココナラアプリ開発グループ、iOSチームのじょにーです! 今回はiOSチームで最近導入したDependabotについて概要から設定方法、どのように運用しているかまでお話ししていきます。 Dependabotとは? Dependabotはリポジトリ内の依存関係をチェックし、必要に応じてパッケージバージョンの脆弱性をメールなどで通知したり、バージョン更新用のPull Requestを任意のタイミングで自動的に発行してくれるなどの役割を担っています。 元々は独立したサービスでしたが、2019年にGitHubが買収し、現在はGitHubがホストしているbot
アバター
こんにちは! 株式会社ココナラの法律相談事業部でWebエンジニアをしている 原井夏樹 です。 ココナラ法律相談というプロダクトのフロントエンド・バックエンド開発を担当しています。 よければXのフォローをお願いします!喜びます! @superhahnah この記事ではフロントエンドテストの導入にあたり、私たちのプロダクトではどんなテスト戦略をとるべきかを調査・検討して得られた知見を共有します。 読んでくださる皆さんの参考になれば幸いです。 そもそもフロントエンドのテストって色々ありすぎてよくわからん 「〇〇テスト」っていう用語、本当にたくさんありますよね。 例えば… ユニットテスト(
アバター
こんにちは。 株式会社ココナラ Web開発グループ フロントエンド開発チームの加藤です。 普段はWebのフロントエンドの開発をしていますが、最近プライベートでFlutterの勉強も兼ね、アプリの個人開発をしました。 Flutterの開発言語のDartはJavaScriptに似ているため、フロントエンドエンジニアでも馴染みやすいと思います。 今回はそこで使ったAPIやパッケージの紹介・解説をします。 作ったもの チャットアプリのようなUIで気軽に国会の発言を見ることができるアプリです。 議員をフォローしてその議員の全発言を見たり、ワードをフォローしてそのワードが含まれる発言を抽出したり
アバター
こんにちは。ココナラ募集部 開発チームのかやです。 今回は、まだリリースされて間もないココナラ募集のリリースまでの経緯や工夫したことをお伝えしたいと思います。 どんな体制で開発をしたか? 事の始まりは2023年。 ココナラの新しい機能として「ココナラ募集」の企画が立案され、各部署からメンバーが集められました。これまでココナラではサーバーサイド、フロントエンド、ネイティブアプリ等といった各分野の専門スキルを持ったメンバーが集まり、コミュニケーションを取って機能開発する事が多かったのですが、今回は少ないメンバーで多くの機能を開発する必要がありました。それぞれのメンバーが専任スキルを持って
アバター
はじめに こんにちは! 株式会社ココナラバックエンド開発グループのFです。 企業のバリューを日常業務の中で意識し、体現する行動を共有することは、チームの結束やモチベーション向上に重要な役割を果たします。今回、Slack Bolt、Google Sheets API、そしてGoogle Apps Scriptを活用して、社員がSlack上でバリュースタンプを押すと、その情報をスプレッドシートに記録し、毎朝Slackチャンネルに自動で通知を送信するアプリを作成しました。この記事では、このアプリの概要や開発の過程についてお話します。 アプリの概要 このアプリは、社員がSlackで会社の
アバター
こんにちは。 アプリ開発グループ、Androidチームのたまっちゃん、ジェレミです。 2024年9月11日(水)から9月13(金)に開催されたDroidKaigi 2024に参加してきました! DroidKaigiのオフライン参加は初めてで、とても充実した3日間でしたので本記事では当日のセッションやその他コンテンツについてレポートします。 印象に残ったセッション 参加したセッション全てが有益で勉強になりましたが、特に印象に残ったセッションを紹介します。 From 0 to 100 with Kotlin and Compose Multiplatform JetBrains社様
アバター
はじめに こんにちは!株式会社ココナラ新卒二期生のじんじんです! 今回は、先日開催されたオフサイトミーティングの記録です! アイスブレイクのゲームから生産性向上のミーティングまで、様々なことに取り組みましたので、新卒目線で感じたことや学んだことをお伝えします! 目的 今回のフロントエンド開発グループのオフサイトには3つの目的がありました。 みんなと仲良くなろう(相互理解)! みんなのことを知ろう(ウェルビーイング)! フロントエンドチームをもっと過ごしやすくしよう(生産性向上)! オフサイト初参加の入社間もないメンバーが私を含めて3人いました。 そこでまずは仲良くなることを大
アバター
こんにちは。 アプリ開発グループ、Androidチームのたまっちゃん、ジェレミです。 株式会社ココナラは、2024年9月11日(水)から9月13(金)に開催される「DroidKaigi 2024」にサポータースポンサーとして協賛いたします。 2021年のゴールドスポンサー、2022年のサポータースポンサー以来の2年振りになります。 DroidKaigi 2024について DroidKaigiはエンジニアが主役のAndroidカンファレンスです。 今年で10年目を迎えるDroidKaigiは、Android技術情報の共有とコミュニケーションを目的に2024年9月11日(水)〜13(金)
アバター
こんにちは! 株式会社ココナラ フロントエンド開発グループのよしみんです。 今回は、8/20(火)にオフラインで開催された「UV Study : Vue.js LT会」へ登壇しましたので、そのレポートです。 イベント概要 イベント概要は以下の通りです。 Vue.jsをテーマにしたLT会です。 Vue.jsについて、各自興味のあるテーマを持ち寄ることで知識を深めていくことを目的としています。 発表内容は Vue.jsにまつわる技術情報であればなんでも構いません。 https://uniquevision.connpass.com/event/326790/ ユニークビジョン株式会社様が
アバター
こんにちは。株式会社ココナラアプリ開発グループ、iOSチームの上沼です。 以前、SPMによるマルチモジュール化を検討していましたが、マルチモジュール化が一区切りついたので、今回はどのように導入したか、どのくらい効果があったかなどをご紹介していけたらと思います。 移行に至った背景 規模の大きいアプリになってきた影響でビルド時間が増加し、開発効率が低下してしまっていることが大きな課題としてありました。また、ココナラiOSアプリはFrameworkによるモジュール分割がされているものの、正しく分割されておらず、依存関係が曖昧になっているという現状がありました。 これらを改善するため、SPM
アバター
こんにんちは。 フロントエンド開発グループのいっちーです。 ココナラでは新規サービスの立ち上がりに伴い、ヘッダやフッタといったすべてのサービスで利用される共通UIの需要が高まってきております。 今回はその課題解決に向けて現在進行している取り組みについてのお話になります。 課題感 すべてのサービスで共通のUIとして実装されているヘッダ、フッタに変更が生じた場合、すべてのサービス(リポジトリ)で修正する必要がありその都度対応していくのがものすごく大変なのは想像に難くないかと思います。 そこで共通UIを外部に切り出し、各サービスがそれを参照するような構成にすることでこれを解消しようと考えま
アバター
こんにちは。 株式会社ココナラ フロントエンド開発グループの三浦です。 皆さんはこんな経験はないでしょうか? 「マージ先がdevelopになっててうっかりマージしてしまった!」 「毎回同じチェックをしてるはずなのになぜかチェックがすりぬけてしまった!」 どうです?ありますよね? 私はあります。 といった始まりのDangerを使ってみた記事を書いて早いもので11ヶ月、約1年という月日が流れてしまいました。 ちなみに上記の記事はこちらのリンクからも読むことが可能です。 「まだ読んだことないよー」という方や 「改めて読み直してみようかな」といった方は是非ご覧になってください。 Danger
アバター
こんにちは。 株式会社ココナラでバックエンド開発に従事するRKと申します。 みなさまはシステムのバージョンアップ対応をした経験はありますでしょうか? システムの安定稼働に配慮して一定期間で実施している場合もあれば、利用しているライブラリや開発言語そのものの End Of Life(以降、EOL) によってバージョンアップを余儀なくされて実施した場合もあるでしょう。 どちらにせよ、ユーザーの皆様に安心してシステムをご利用いただくためにも、バージョンアップ対応はとても大事な作業の1つとなります。 弊社ココナラでも、もう少しでEOLを迎える/迎えた開発言語や環境を持つシステムは存在します。 本
アバター
はじめに ココナラのインフラ・SRE チームのクララです 今回は社内技術カンファレンス運営として、2024-07-29 に開催された「第 13 回 ココナラ社内技術カンファレンス」の様子をレポートします! 社内技術カンファレンスとは 目的 ココナラでは半年に 1 度、すべてのエンジニアが集まって技術カンファレンスを開催しています 会の初めには、弊社 VPoE の村上から技術カンファレンスの目的が伝えられます 構成 技術カンファレンスは以下の2部構成で実施しています 1 部 テックブログの View 数表彰 社員によるライトニングトーク 2 部 懇親会
アバター
こんにちは! 株式会社ココナラプロダクト開発部バックエンド開発グループでエンジニアをしておりますぴろと申します。 休日は猫🐈お寿司🍣ギター🎸を生きがいにしています。 今回は7月に実施したオフサイトミーティングについてお伝えしようと思います。 オフサイトミーティングとは? 普段働いている場所から離れて開催される会議で、通常業務から離れることで新たな視点で議論したり、リラックスした雰囲気でチームビルディングのための交流を行ったりします。 実施内容 チームビルディング企画:カタカナーシ 課題改善企画 チームビルディング企画:チーム対抗 コードネーム 1.チームビルディング企画:
アバター
こんにちは!株式会社ココナラのプロダクト開発部フロントエンド開発グループ所属の飯塚です。 ココナラでは、一定の条件を満たすと「納品書」等の帳票がダウンロードできます。 各帳票は、Webサイト上で確認したうえでワンクリックでPDFダウンロードできるようになっています。 以下は実際の納品書画面になります。 今回は、その ワンクリックでPDFダウンロード の実装方法についてご紹介します! 要件 実装にあたり、要件は以下の通りでした。 ブラウザの「印刷」からPDFダウンロードすることは可能だが、手間なのでワンクリックでPDFダウンロードしたい ヘッダーやフッターなど、帳票に関係ない要素は
アバター
こんにちは! 株式会社ココナラのプロダクト開発部バックエンド開発グループでエンジニアをしておりますもっちーです。 今回は先日バックエンド開発グループで開催した「Ruby on Railsリリースノート勉強会」について紹介したいと思います! はじめに そもそもリリースノートとは、「ソフトウェア製品のリリースの際に、機能強化や不具合修正の内容などをユーザーに示す資料またはウェブサイト」を指します。 2024年5月30日にRuby on Railsのバージョン7.2 Beta 1がリリースされました。 ココナラではバックエンドの開発でRuby on Railsを利用しており、そのバージョン
アバター
はじめに こんにちは。ココナラテックの開発をしているエンジニアのもちさんです。 ココナラではエージェント事業部で使っているフロントエンドのフレームワークとして Next.js を採用しており、2023 年の 9 月から App Router への移行を始めています。 実際に App Router で Cookie を設定しなければいけない時があったのですが、Next.js の公式ドキュメントにあるように Cookie を設定するにはServer ActionかRoute Handlerを使う必要がありました。 Good to know: HTTP does not allow se
アバター
はじめに こんにちは! 株式会社ココナラの募集部のマーシャです。7年くらい前に日本に来て、6年間日本で働いています。私はコミュニケーションの専門家ではありませんが、西洋文化圏から来ており、内向的で、見た目も異なるため、コミュニケーションの違いに気付きやすく、それがなぜそうなるのか、どうすればより効率的にできるのかを考える傾向があります。今までの経験を通じて、以下で具体的にお話ししますが、いくつかの一般的なコミュニケーションパターンに気づきました。これらの一部は文化に起因し、効果を発揮しています。しかし、それらを認識し、少し努力することでさらに職場でのメリットを得ることができると思いま
アバター
こんにちは。 株式会社ココナラのアプリ開発グループ、Androidチームのジェレミです。 今回は6月22日(土)に開催されていたKotlin Fest 2024に参加してきましたのでレポートします。 Kotlin Festとは Kotlin Festは「Kotlinを愛でる」をビジョンに、Kotlin™に関する知見の共有と、Kotlinファンの交流の場を提供する技術カンファレンスです。 5年ぶりにオフライン形式で開催されました。 ココナラではAndroid開発にKotlinを採用しています。 参加したきっかけ オンラインのカンファレンスには参加したことがありましたが、オフラインで
アバター