サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大谷翔平
tech-blog.rakus.co.jp
背景 経費精算システム「楽楽精算」は2009年にリリースされ、15年以上にわたり運用されてきました。 その間、基本的なシステム設計はリリース当初のまま維持されています。 しかし、年月が経つにつれ、技術トレンドやビジネス的な要求は大きく変化しましたが、現状のシステムではそれらの変化に柔軟に対応することが困難になってきています。 システムの柔軟性は低く、機能追加のたびに既存機能への影響を広範に調査する必要があり、既存の処理フローを変えることができないため、イレギュラーなテクニックが必要となることも多く、追加開発のたびに多くの手間とコストがかかるようになってきました。 すべての問題が現行システムに起因するわけではありませんが、特定のミドルウェアに強く依存した構造を持っているため、将来的な技術革新や新しいミドルウェアへの移行が困難であるという課題も抱えていました。 このような背景から、ミドルウェア
はじめに ラクスが開発する楽楽精算は、東京開発統括部の楽楽精算開発部が担っています。 楽楽精算のiPhone(Swift)& Android(Kotlin)対応のモバイルアプリ開発を担当しているのが、モバイル開発課です。 本記事では、楽楽精算のモバイルアプリ開発案件を担当しているモバイル開発課のマネージャーが厳選した 「モバイル開発を軸に、キャリアをステップアップするために役立つ書籍」をご紹介します。 それぞれの書籍に推薦コメントを記載していますので、是非ご参考になさってください。 はじめに モバイル開発でおすすめの書籍 Androidを支える技術<Ⅰ・Ⅱ> iOSアプリ設計パターン入門 Androidアプリ設計パターン入門 プロダクト開発・アジャイル開発でおすすめの書籍 プロダクトマネジメント ビルドトラップを避け顧客に価値を届ける プロダクト開発の罠:エンジニアの最大稼働率が生む遅延と
はじめに こんにちは。楽楽電子保存のバックエンド開発チーム兼オフショア開発のリーダーを務めています、small-chestnutです。 今回は、私が担当しているグローバル開発におけるチームビルディングの経験をシェアしたいと思います。 この記事では、弊社の子会社であるラクスベトナム(以下、RV)との協働を通じて経験したチームビルディングの遷移や、各年度ごとに取り組んだ施策、課題解決のプロセスを振り返ります。グローバル開発やチームビルディングに悩んでいる方々にとって、参考になれば幸いです。 はじめに サービス紹介 チーム紹介 2022年度:立ち上げ期(形成期) オフショアチームの立ち上げ 施策と課題 2023年度:RVの本格開発参入(混乱期) サービス成長とチーム体制の変化 成果と混乱 2024年度:RVの統一と安定期 チームの成熟と新たなステップ 今後の展望 まとめ:グローバル開発で築く強い
はじめに ラクスでは、「PdM(プロダクトマネージャー)」をテーマにした対談イベントを積極的に開催しております。 本記事では、その目的や、各回の概要・内容、今後の開催テーマをご紹介します。 イベントでのリアルな取り組み紹介を通じて、各社の開発戦略やPdM組織の役割、さらにはプロダクトを通じた顧客課題解決への想いを知る一助になれば幸いです。 ※明日開催のイベント情報もあります!是非最後までご覧ください! はじめに 開催背景と目的 各回の内容 【PdM Meetup】プロダクトマネジメントの最適解とは?~BtoB SaaS 3社合同イベント 【ログラス×ラクス】PdM Meetup ~製品・組織フェーズによって異なるPdMの役割や考え方〜 【弁護士ドットコム × ラクス】PdM Meetup〜ビジョンを成功に導く効果的なPdM組織とは? 【日経 × ラクス】PdM Meetup〜 toC/to
はじめに 事前準備 トリガーを使用する方法 補足:トリガーと関数のみ消す方法 まとめ はじめに こんにちは! エンジニア2年目のTKDSです! PostgreSQLでのテーブル変更検知方法について調べました。 今回はトリガーを使用する方法について説明します。 事前準備 DBの準備(compose.yaml) services: db: image: postgres:16.4-bullseye container_name: db environment: POSTGRES_USER: postgres POSTGRES_DB: postgres POSTGRES_PASSWORD: postgres ports: - "127.0.0.1:5432:5432" volumes: - db_data:/var/lib/postgresql/data - ./init.sql:/docker
はじめまして。私は楽楽精算の機能開発チームのマネージャーを務めている高波です。 今回のブログでは、楽楽精算の開発チームの組織構成、これまでの取り組み、そして今後の展望についてお話しします。 チームの紹介 開発組織構成 チームのミッション チーム体制と担当業務 取り組み事例 二重計上リスクを防ぐ機能開発 申請の差し戻し負荷を軽減する機能開発 今後の展望 業務効率を向上させるUI/UXの改善 利用者増に対応したパフォーマンスの向上 経費精算業務へのAI活用 チームの紹介 開発組織構成 楽楽精算の開発は、3つの課に分かれて行っています。 内部構造の刷新(技術負債の解消)とオフショア開発を担当する開発1課、機能開発を担当する開発2課、そしてモバイルアプリを担当するモバイル開発課です。 今回は、私が担当する開発2課について紹介します。 チームのミッション 顧客に求められる機能を開発・提供することで顧
こんにちは! 技術広報課のyayawowoです。 今回は、ラクスのPdMが所属している製品管理課が どのような目的と目標を持った組織なのかを詳しくご説明します。 2021年10月にPdM組織「製品管理課」を新設してから3年目となる今、 どのような役割でプロダクトの価値を上げているのでしょうか。 PdM組織「製品管理課」を新設した背景と経緯 背景 「あるべき姿」に向けて 実際に実行した8つのこと 現在のミッション/ビジョン/組織の役割 新規PRJでのプロダクトへの貢献 AIの製品活用PRJ 楽楽シリーズブランド統一PRJ まとめ ラクスのPdM組織で働いてみませんか? PdM組織「製品管理課」を新設した背景と経緯 背景 2021年10月、東京開発部門の横断組織としてPdM組織「製品管理課」を新設しました。 まずは、製品管理課を新設した背景をご説明します。 【プロダクト開発体制:製品管理課の存
はじめに はじめまして、楽楽精算のサポートエンジニアを担当している梅田です。私たちのチームは、お客様がサービス利用におけるお困り事を解決できるよう、エンジニアの立場からサポートを行っています。本記事では、生成AIを活用して問い合わせ対応業務を効率化し、回答までにかかる時間を75%削減した取り組み、具体的な活用方法や効果、AI活用のポイントをお伝えします。 はじめに サポートエンジニアの概要 サポートエンジニアの役割 サービスデスク 問題管理 リリース管理 サポートエンジニアの連携先 サポートエンジニアの課題 問い合わせ対応における問題 問い合わせ対応における課題 サポート業務改善に生成AIの導入 改善に生成AIを選定した理由 生成AIを使った問い合わせの効率化 計画 工夫 成果 更なる改善 サポートエンジニアの概要 サポートエンジニアの主な業務の1つはお客様からの問い合わせ対応です。基本的
8/7(水)にRAKUS TechConference(以下TechCon)が開催され、盛況のうちに閉会しました。本記事ではその様子を、TechConを開催する目的や背景、当日発表資料なども交えながらご紹介します! TechConとは? TechConの開催目的 今年のテーマは「顧客志向」 ラクスの開発組織にとって「顧客志向」とは なぜ「顧客志向」をテーマに選んだのか? イベント概要 発表の紹介 「顧客志向」の開発組織 マルチプロダクトでのプロダクトマネージャーのリアル 拡大するマルチプロダクトSaaSの顧客理解にデザイン組織はどう取り組んでいるか 急成長する大規模プロダクト開発のマネジメント課題とアプローチ パフォーマンス向上とリソース管理のためのアプローチ 急成長するサービスを支えるためのインフラ戦略 楽楽精算のQA改革~楽楽精算でのQA専門組織の実践と成功事例 新たな顧客課題に挑む1
概要 プロポーザル提出 採択から練習会まで 当日 感想 良かった登壇内容 概要 2024年8月22日~8月24日に開催されたiOSDC Japan 2024に、登壇者として参加しました。 本イベントは、日本のiOSやSwiftエンジニア向けの最大級のイベントの一つです。 このレポートでは、このイベントでの登壇経験についてご紹介します。 プロポーザル提出 iOSDCで登壇するためには、プロポーザルを提出し、主催側からの採択が必要です。 募集要項にもあるように、iOSやSwiftに限定せず、エンジニアにとって興味深いテーマであれば何でも構いません。 弊社でも有志で応募することとなり、私はこのようなイベントに応募した経験はなかったものの、挑戦することで経験を得られると考え、以下の3つのプロポーザルを作成しました。 なお、iOSDCでは初めて登壇する方向けに5分間のルーキーズLTという枠が設けられ
こんにちは。モバイル開発課の吉田です。 2024/8/22(木)~8/24(土)の3日間に渡り「iOSDC Japan 2024」(以下iOSDC)が開催されました。 そして今年度は弊社歴史上でも初のiOSDC登壇者として、当課メンバーが登壇しました! 応援も兼ねて当課メンバーもイベントに参加しました。 本ブログでは、当日の雰囲気やメンバーの印象に残ったセッションをお届けいたします。 iOSDCとは? 前夜祭 現地の様子 トークセッション メモリ最適化を究める!iOSアプリ開発における5つの重要なポイント 詳解UIWindow 座談会 「Strict ConcurrencyとSwift 6が開く新時代: 私たちはどう生きるか?」 ゼロから始めるiOSセキュリティ ~ OWASP Mobile Top10から学ぶ脆弱性対策 iOSアプリらしさを紐解く Kotlin Multiplatform
はじめに 復習:PGlite pg-gateway pg-gatewayとPGliteを起動してSQLクライアントから接続する まとめ はじめに こんにちは、エンジニア2年目のTKDSです! 前回はPGliteの概要・使い方・速度実験について記事にしました。 今回はさらに、PGliteへのSQLクライアントからの接続を可能とするpg-gatewayについて紹介し、活用例について示します。 復習:PGlite PGliteは、PostgreSQLをWebAssembly(WASM)にコンパイルした軽量なデータベースエンジンです。 これにより、ブラウザ、Node.js、Bun、DenoなどでPostgresの機能を利用でき、開発者はローカルやサーバーレス環境でデータベース操作を行うことが可能です。 PGliteは、インメモリデータベースやファイルシステム(Node.jsやBun)、Indexe
はじめに 対象読者 TL;DR OpenAPI Specificationとは OASを導入することの何が嬉しい? 1. プロダクトごとにAPI仕様書を記述するツールやフォーマットがバラバラでスイッチングコストがかかる 2. 記述量が増えると動作が重くなる 3. API仕様変更の伝達漏れの多発 導入までの課題 1. OASの調査に時間をかけすぎた 2. OASのデメリット全てに対応策を講じようとしてしまったこと 導入して1年、開発環境は改善されたのか? おわりに はじめに ラクスフロントエンド開発2課の斉藤です。 ラクスの開発するプロダクトである楽楽明細、楽楽電子保存、楽楽請求ではOpenAPI Specification(以下OAS)を採用した開発を行っています。 今でこそOASを活用した開発を行うことができていますが、導入にあたっては様々な苦労がありました。 そこで今回は 何故OASを
はじめに PGliteの概要 PGliteの特徴 PGliteを試す ブラウザで使う PGliteの速度計測 まとめ はじめに こんにちは!エンジニア2年目のTKDSです! 今回はPGliteについて調べてみました! 概要・使い方・速度実験・まとめの内容で記事は構成されています。 使ってみた結果として、軽量高速であり色々使いみちがありそうなツールだと感じました。 ぜひ最後まで読んでいただけると幸いです。 PGliteの概要 PGliteは、PostgreSQLをWebAssembly(WASM)にコンパイルした軽量なデータベースエンジンです。 これにより、ブラウザ、Node.js、Bun、DenoなどでPostgreSQLの機能を利用でき、開発者はローカルやサーバーレス環境でデータベース操作を行うことが可能です。 PGliteは、インメモリデータベースやファイルシステム(Node.jsやB
はじめに 変数のシャドーイングとは? エラーハンドリングの例 シャドーイングとエラーハンドリングの例 問題点と対策 まとめ 年に1度の技術イベント「RAKUS Tech Conference」を開催します!! はじめに エンジニア2年目のTKDSです! 今回は変数のシャドーイングについて調べました。 Goを用いて、シャドーイングに関する例を2つほど示します。 変数のシャドーイングとは? シャドーイングは、内部スコープで宣言された変数が外部スコープの同名変数を内部スコープ内では上書きしてしまうことです。 サンプルコードを以下に示します。 Go Python JavaScript いずれの言語でも変数が再宣言されて上書きされていることがわかります。 今回は、Goについて扱っていきます。 シャドーイングが関わるケースの一例として、エラーハンドリングの例を示します。 エラーハンドリングの例 Goの
こんにちは! メールディーラー開発課のymyhero7です。 先日、弊社の勉強会で「不吉コードの大掃除」というテーマで発表をしました。 そこで話した、レガシーな社内向け機能を改修したエピソードをご紹介します! 改修することになった経緯 既存コードの問題点 改修の方法 成果 まとめ 年に1度の技術イベント「RAKUS Tech Conference」を開催します!! 改修することになった経緯 メールディーラーの社内向け機能では、メールディーラーを使用されるお客様のアカウント設定やメールボックス開設などの事務作業を行うことができます。 この事務作業を、従来は、メールディーラーの社内向け機能と販売管理システムの両方で重複管理していました。 そのため、データの不一致や作業コストが発生してしまっていました。 この問題を解決するため、販売管理システムに登録した情報をAPIを介して自動的にメールディーラ
SRE課の飯野です。 去る2024/7/9(火)、『Platform Engineering Kaigi 2024』(以下PEK)が開催されました。 弊社からは7名(SRE課6名+インフラ部長)が現地参加し、登壇企業の皆さまの熱量あふれるセッションを肌で体感してきました。 本ブログでは、PEK参加後にSRE課メンバーで実施した社内でのふりかえりの内容をお届けします。 目次 PEKとは? 当日の様子 ふりかえりやってみよう 総括 PEKとは? 『Platform Engineering Kaigi 2024』は、プラットフォームエンジニアリングをテーマにしたテックカンファレンスです。 もともと『Platform Engineering Meetup』という勉強会を主催していたコミュニティが「一般社団法人クラウドネイティブイノベーターズ協会」という団体を立ち上げ、その団体が今回日本で初めとなる
はじめに Webアプリケーションにおけるレートリミット、サーキットブレーカー、リトライの役割 リトライ サーキットブレーカー レートリミット レートリミット、サーキットブレーカー、リトライの実装 サンプルアプリケーションの実装 リトライ、サーキットブレーカー、レートリミットを追加 まとめ 年に1度の技術イベント「RAKUS Tech Conference」を開催します!! はじめに こんにちは!エンジニア2年目のTKDSです。 今回は、レートリミット・サーキットブレーカー・リトライについて調べた内容を紹介し、ライブラリを使ってGoで実装してみます。 Webアプリケーションにおけるレートリミット、サーキットブレーカー、リトライの役割 リトライ リクエストが失敗した場合に再試行します。 リトライは、一時的な障害に対して効果を発揮します。 ネットワークの瞬断やサービスの一時的な過負荷など、やり直
RAKUS Tech Conference 2024とは? 開催概要 開発本部長メッセージ RAKUS Tech Conference 2024の見どころ 本イベントを視聴・参加するメリット!! 申込特典! タイムテーブル 過去のRAKUS Tech Conference RAKUS Tech Conference 2022 RAKUS Tech Conference 2023 参加者からのフィードバック ご参加お待ちしております! 技術広報のyayawowoです! 今年もラクス開発本部主催の技術カンファレンス、「RAKUS Tech Conference 2024」を開催します! techcon.rakus.co.jp RAKUS Tech Conference 2024とは? 「顧客をカスタマーサクセスに導く圧倒的に使いやすいSaaSを創り提供する」 開発本部のミッションに込めた想いを
はじめに こんにちは。楽楽販売開発課のm_tkoとthree_yagiです。 今回は、私たちが所属しているサポート対応チームの業務を紹介します。 目次 はじめに 目次 サポート対応とは? 組織体制 取り組み 仕様確認系のお問い合わせ 調査系のお問い合わせ 工夫している点 回答観点について 通知botの運用 お問い合わせの傾向分析 今後の展望 最後に サポート対応とは? まず、サポート対応とは何かについて説明します。 基本的に、お客様からのお問い合わせはカスタマーサポートを担っている部署が回答をしています。 カスタマーサポートの基本的なフロー ただ、そのお問い合わせの中にはエンジニア視点での調査が必要なものがあります。 そういったお問い合わせをエンジニア側で引き受けて調査を行うことを「サポート対応」と呼んでいます。 エンジニア側で問合せ対応を行う場合のフロー エスカレーションされるお問い合わ
BigDecimalの値保持について BigDecimalから値の抽出 誤った表記変換方法 正しい文字列を取得する方法 まとめ お金の計算など正確にJavaで計算をするうえで欠かせないBigDecimalですが、 一部JDKバージョンで挙動に変更が入っていました。 この改修により問題に直面してしまったため備忘録がてら挙動をまとめることにしました。 BigDecimalの値保持について まず、本題に入る前にBigDecimalはどのように値を保持しているかを見てみましょう。 BigDecimalは以下の要素を保持しています。 intCompact 数値の仮数部を保持する intVal BigDecimalのスケーリングされていない値 precision 保持している仮数部の桁数 scale 少数のスケール では実際に見てみましょう。 BigDecimal bigDecimal1 = new
はじめに HTTPS(HTTP Over TLS)とは SSL/TLS HTTPSの流れ 実際に通信を観察 自己署名証明書の用意 サーバーの作成 WireSharkの準備 リクエストを送信して観察 まとめ 年に1度の技術イベント「RAKUS Tech Conference」を開催します!! はじめに エンジニア2年目のTKDSです! 普段何気なく使ってるほとんどのWebサイトが対応しているHTTPS通信の仕組みについて調べてみました。 本記事では、Wiresharkを用いてHTTPSの内部動作を解析し、どのようにしてデータが保護されているのかを具体的に解説します。 記事の後半では、Wiresharkを使って実際の通信データを観察し、暗号化プロセスの詳細を確認してみます。 HTTPS(HTTP Over TLS)とは HTTPS(HTTP Over TLS)は、HTTPの暗号化版で、ウェブサ
こんにちは、モバイル開発チームのhyoshです。 弊社では各分野の特定のテーマに沿ってエンジニアが議論する「TechCafe」というイベントを定期開催しています。 そして先日私を含めた弊社モバイル開発チームが2度目となる「モバイルTechCafe」を開催しました! 今回のイベントでは「Google I/O 2024とWWDC24で気になったセッション」について語り合いました。 弊社のメンバーが事前にまとめてきた情報にしたがって、他の参加者に意見を頂いて語り合いながら学びました。 今回はその内容についてレポートします。 Google I/O 2024 デベロッパー基調講演 Android 開発ツールの新機能 Google Play の新機能 Android の新機能 WWDC24 基調講演 Xcode16の新機能 Swiftの新機能 Swift Testingについて まとめ Google
チームの紹介 チームのミッション チーム体制と役割 チームの文化 取り組み事例 オブジェクトストレージのリプレイス 楽楽精算のインターネット通信で利用される帯域の増加対策 今後の展望 はじめまして。楽楽精算のインフラのマネージャーを務めている永易です。 楽楽精算のインフラチームの組織体系について、現在までと今後についてをお話させていただきます。 チームの紹介 チームのミッション 楽楽精算のインフラを適切なコストで安定させる お客様に楽楽精算を安心して利用していただくために、インフラチームとして安定したサービスの提供を責務としています。 一方、企業として利益を確保する事も必要であり、サービス品質とコスト(売上原価)のバランスを大切にしてます。 チーム体制と役割 現在の楽楽精算インフラメンバーは5人で構成されており、キャリアに合わせてメインの業務を保守運用担当と設計担当に分けています。 具体的
はじめに Testcontainersとは Testcontainersのメリット ハンズオン 環境設定 goプロジェクトの作成 必要なパッケージのインストール テストコードの作成 コンテナリクエストの設定 コンテナの起動 コンテナのホストとポートの取得 結果の確認 まとめ はじめに こんにちは! エンジニア2年目のTKDSです! 前回はDaggerを紹介しました。 今回もコンテナ技術を活用して、テストを容易にするツールについて紹介します。 今回取り上げるのは、統合テストやエンドツーエンドテストのためにDockerコンテナを利用するライブラリ、Testcontainersです。 Testcontainersとは Testcontainersはさまざまなプログラミング言語(Java、Go、Python、Node.jsなど)向けに提供されており、Daggerと同様にテスト用のコンテナを簡単に作
改善施策を決めるまで 旧アーキテクチャ概要 旧アーキテクチャの問題分析 新アーキテクチャ概要 最後に こんにちは、楽楽販売開発課の岡本です。 弊社では10年を超える長寿プロダクトをいくつも擁していますが、私が担当しているプロダクトもそんな長寿プロダクトの一つです。 さて、どのように優れたプロダクトでも10年以上開発を続けていれば、少なくない量のコード負債を抱えてしまうもので、我々の開発チームでもこの問題に日々悩まされております。 このような状況を打開すべく、昨年9月に開発チーム内に改善専門部隊が立ち上がりました。 本記事では、改善部隊が行った施策の1つである「バリデーションアーキテクチャの変更」を取り上げて紹介しようと思います。 改善施策を決めるまで 先の項でも紹介した通り、我々のプロダクトは少なくない量のコード負債を抱えてしまっています。 ですので、改善部隊が発足時点で改善したい内容はい
はじめに こんにちは! エンジニア2年目のTKDSです! この記事ではDaggerについて紹介します。 この記事は課内で行ったLTをもとにしたものです。 はじめに Daggerとは? アーキテクチャ概要 Dagger Function Dagger Module 実際につかってみる ユースケース1:テストのパイプラインを記述 ユースケース2:DB依存の単体テストでDBのコンテナを用意する まとめ Daggerとは? CIの関数(Dagger Function)化 関数をCLI、SDK、HTTPリクエストなどから実行可能 関数→モジュールにして再利用可能 既存のモジュール(自分や他人が作ったもの)を再利用可能 一度書けばどこでも(ローカルPC、Actionsなど)実行可能 以上の特徴を持つ、コンテナ内でパイプラインを実行する、プログラム可能なCI/CD エンジンです。 アーキテクチャ概要 D
こんにちは、フロントエンド開発課所属のkoki_matsuraです! 本記事では、E2EテストライブラリであるPlaywrightのv1.40 ~ 最新版v1.43で追加された機能の中から僕の独断と偏見でいくつかを紹介したいと思います。 では早速、紹介していきます! 以下は目次です。 v1.40の新機能 Test Generatorにアサーションコード生成機能 toBeVisibleアサーション toContainTextアサーション toHaveValueアサーション v1.41の新機能 screenshot関数のstyleオプション toHaveScreenshot関数のstylePathオプション v1.42の新機能 addLocatorHandler関数 タグの追加 v1.43の新機能 LocatorとFrameLocatorの相互変換 clearCookiesのフィルター機能 ま
※注意:本記事内での計測結果は記載の条件下によるものとなります。異なる環境においては異なる結果が予想されますのでご認識ください。 こんにちは。 株式会社ラクスにて、主に先行技術検証を担当している「技術推進課」という部署に所属している鈴木(@moomooya)です。 ラクスの開発部ではこれまで社内で利用していなかった技術要素を自社の開発に適合するか検証し、ビジネス要求に対して迅速に応えられるようにそなえる 「技術推進プロジェクト」というプロジェクトがあります。 このプロジェクトで「DBセキュリティ」にまつわる検証を行なったので、その報告を共有しようかと思います。 今回はDBセキュリティの中でも、DBデータの暗号化の話が中心となります。 ちなみに中間報告時点で公開した記事はこちらになります。 tech-blog.rakus.co.jp DBセキュリティについて 本記事におけるDBセキュリティ
次のページ
このページを最初にブックマークしてみませんか?
『RAKUS Developers Blog | ラクス エンジニアブログ』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く