サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大そうじへの備え
engineering.linecorp.com
こんにちは。フィナンシャル開発センターの鈴木です。LINE証券のフロントエンドを担当しています。この記事は【LINE証券 FrontEnd】シリーズの4番目の記事です。 最近のWeb Vitalsの隆盛を受けて、LINE証券のフロントエンドでもパフォーマンスの改善に取り組み始めました。およそ2週間ほど改善に取り組んだ結果として、開発環境での計測ではLighthouseのperformanceスコアが従来より30点ほど上昇しました。 パフォーマンス改善のためにさまざまな施策を行いましたが、この記事ではその中でも興味深かったものとして、requestIdleCallbackを活用してLazy Loadingされるコンポーネントの読み込みを遅延し、その結果初期レンダリングにかかる時間を約14%削減できた事例をご紹介します。 環境 以前の記事でご紹介したとおり、LINE証券のフロントエンドはTyp
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog LINE株式会社のOklahomerです。 本記事では、LINE LIVEという動画配信サービスのチャット機能が、どのような構成で成り立っているのか紹介します。 チャットの紹介 LINE LIVEのiOS/Android アプリでは、配信中の動画を視聴しながらリアルタイムにコメント投稿できるチャット機能を提供しています。この機能の役割は、視聴者同士が対話を楽しむだけにとどまりません。配信者が視聴者のコメントに返答するという形で配信者と視聴者の接点として機能したり、また配信者がコメント内容に従って企画を進めるなど、配信者と視聴者が一体となって配信を作り上げていく上でも重要な機能となっています。 これが有名人による配信となれば当然
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは、Developer Contentチームの矢崎です。LINE株式会社でテクニカルライターとして働いています。今日は、私が1文を書くときに気をつけていることや手法についてお話しします。 そして、この書き出しは、6月にmochikoさんが書いた「LINEの社内には「テクニカルライティング」の専門チームがあります」という記事のオマージュになっています。mochikoさんが書いた記事ですごいpvをたたき出したそうなので、人のふんどしで相撲を取ってみようという作戦で始めてみました。 この記事ではLINE社内で私が講師を務めた「LINE社内で大評判のテクニカルライティング講座」に沿って、わかりやすい1文を書くコツを紹介していま
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog この記事は LINE Advent Calendar2016 の 3 日目の記事です。 はじめに はじめまして、LINEの@huydxです。現在「Engineering Efficiency」というかっこいい名前のチームに配属されています。日常の仕事では、社内のモニタリングミドルウェア、自動化ツールの開発などにおいて、主にバックエンド側を担当しています。エンジニアリングで組織全体の生産性と幸せを向上することです。この記事では、チームの取り組み、そして個人的な気づきなどを紹介させていただきます。 背景 現在私が所属している部署はLINEメッセージのバックエンド側を担当しています。システムの規模が大きくなるとともに、組織全体も大き
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは、開発5センターの Zhu です。 現在は LINE NEWS の SRE チームに所属しています。 この記事は、2023年3月末にサービス提供を終了したライブ配信サービス「LINE LIVE」において、今まで行ってきた施策の紹介や大規模サービスならではのクロージングに関わる話を連載するシリーズの2本目の記事です。 今回の記事では、データベース上で Replication Delay によって起きていた問題と解決までの経緯やDB構成について、図を交えて紹介します。 背景 LINE LIVE では、大規模のアクセスに耐えるために DB(MySQL) へのアクセスは Read/Write で分離しています。つまり書き込み
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog はじめに こんにちは、東京大学大学院学際情報学府修士1年の野田栞穂と申します。2023年8/21~9/29の6週間、LINE株式会社の就業型インターンシップにサーバサイドエンジニアとして参加させていただきました。Data platform室のIU Devチームに配属され、LINE社内のData CatalogにOpenAI APIを利用したAI アシスタントシステムの導入を目指すというプロジェクトを行いました。 本記事では、そのプロジェクトの内容について報告します。 背景 IU Webとは LINEでは、データ利活用を促進するため、社内のデータをまとめて管理・処理できるInformation Universe(IU)というデー
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog この度、LINEの技術職 就業型コースのインターンシップに参加させていただきました、お茶の水女子大学修士課程1年の佐藤杏奈と申します。 インターンシップではNLP Platform Devチームに所属し、量子化による大規模言語モデル(LLM)の軽量化について検証を行いました。本レポートではその成果について、ご報告いたします。 0. 大規模言語モデルの量子化とは 量子化とは、重みなどのパラメータをより少ないビットで表現することで、モデルの軽量化、高速化を図る手法の一つです。 昨今活躍する大規模な言語モデルの多くは数十億、数百億以上のパラメータを持っており、これらの訓練には通常、多くのGPUで数ヶ月と、膨大なコストが必要になります
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは、早稲田大学政治経済学経済学科 学部3年の滝田愛澄と申します。2023年8月7日から6週間、LINE株式会社のIU Data Connectチームにて、就業型インターンシップに参加させていただきました。本インターンでは、LINEの大規模ETL batch pipelineであるVinitusが現在抱えている課題を解決することを目的に、data build tool (dbt) の調査とdbtを用いた新たなworkflowのプロトタイプの設計・実装に取り組みました。このレポートでは、現在のVinitusが抱えている課題を確認し、dbtの導入によってどのようにそれらの課題を解決できるか、具体的にこのプロトタイプでは何をど
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog Overview 30万を超える同時接続数を持つチャットサービスにおいて、リアルタイムでメッセージの受信などのイベントを配信するメッセージブローカーとして、私たちはRedis ClusterのPub/Subを使用していました。 私たちのサービスでは、ユーザー数の増加に伴い、Redis Clusterのシャード数を増やすことでクラスターの性能を向上させてきました。しかし、Redis ClusterのPub/Subでは、シャード数の増加に伴ってネットワーク帯域が圧迫される問題が生じ、これ以上シャードを追加することができない状況になりました。 この課題を解決するために、メッセージブローカーをRedis Pub/SubからRedis
✅ Dev Mode利用可 ❎ Dev Mode利用不可 2. Figma Variables Figmaで使える変数のことで、デザイン内で使用されるColor、Paddingなどの数値をVariablesとして定義し、一元管理が可能となります。Light/Darkに代表されるテーマ切替やコンポーネントのステータスやフォームのバリデーションなどを見越して、UIツールキット「Astro」にVariablesを取り込んでみました。 Variablesを取り込みたい理由 今までのFigmaの指定では、Figma上のColor指定と、CSS Variablesのネーミングにズレがあり分かりづらく困っていました。Figma側ではデザインシステムでStyles設定したカラーパレットを用い Thema/Primary という名前で登録していました。しかし、CSSではカラーに対して色の意味より具体的
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog はじめに こんにちは。Security R&Dチームでセキュリティ技術研究とセキュリティコンサルティングを担当しているHan Juhongです。世の中にはさまざまなセキュリティ技術があります。その中で暗号アルゴリズムは、データセキュリティに欠かせない技術です。LINEでも重要なデータを保護するため、多くの暗号アルゴリズムを適用してサービスを提供しています。私たちのチームでは、セキュリティに詳しくない社内の他のエンジニアの方も簡単で便利に使用できるよう、さまざまな暗号アルゴリズムをライブラリとして提供しています。 ライブラリAES-GCM-SIVもその1つです。最近TinkやBoringSSLなど複数のライブラリがAES-GCM
Jung Giuk2023-08-292019年 LINE に Build Engineerとして入社し、現在は「アプリプラットフォーム開発室」のディベロッパーエクスペリエンス開発チームに携わっていて LINE iOSアプリのビルド環境やコードクォリティの改善に取り組んでいる。 はじめに こんにちは、ディベロッパーエクスペリエンス開発チームのJungです。 この記事では2年以上 LINE iOSのビルドシステムとして運用したBazelをやめることにした背景についてご紹介します。 Bazel導入とこれまでのLINE iOS LINE iOS は200万行以上のソースコードと200以上のモジュールで構成される大規模プロジェクトです。 LINE iOSのソースコードとモジュールの数が増えて規模を拡大し続けるにつれて、ビルド/テストの遅延と DX(デベロッパーエクスペリエンス) の低下という避けら
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは。コミュニケーションアプリ「LINE」のAndroidクライアント開発をしている高梨です。 今回は、AndroidでKey-Value形式でデータ保存が可能なSharedPreferencesの暗号化に取り組んだ話を、どのように進行したのかに着目しながら紹介したいと思います。 なぜ暗号化をするのか LINEではユーザーの情報を守るために、End-to-end encryptionを行い、通信を保護しています。 しかし、ユーザーの端末上に保存されたメッセージや個人情報は、平文のまま保存されています。 これらの端末上のデータを暗号化し保護することで、LINEをもっと安心して使ってもらうことが暗号化の目的です。 このブログ
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは、開発3センターの堀内(horiuchi)です。 現在は LINE ドクターのサーバ開発リーダーとマネージャーをしております。 2015年12月に提供を開始し、2023年3月末にサービス提供を終了したライブ配信サービス「LINE LIVE」では、さまざまな技術的な挑戦や工夫を行ってきました。 そこで、今まで行ってきた施策の紹介や大規模サービスならではのクロージングに関わる話を連載していきます。 初回のこの記事は、プロジェクト全体の生産性と安定性の向上を目指して改善してきたことについて紹介します。 プロジェクトの状況や背景 LINE LIVE は7年以上続いてきました。その間に追加された機能は規模が大きく複雑なものも多
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは。NLP Foundation Devチームの小林滉河(@kajyuuen)と水本智也(@tomo_wb)です。 NLP Foundation Devチームでは言語モデルの構築やモデルの応用・評価について取り組んでいます。今回はその取り組みの一つである「japanese-large-lm-instruction-sft」について紹介します。こちらは先日紹介したjapanese-large-lmを「Finetuned Language Models Are Zero-Shot Learners」で提案されたInstruction Tuningという手法を用いて、Supervised Fine-tuning (SFT)
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは。 LINEのNLP Foundation Devチームの清野舜と高瀬翔とoverlastです。 LINEでは2020年11月から日本語に特化した大規模言語モデル「HyperCLOVA」の構築と応用に関わる研究開発に取り組んできましたが、この「HyperCLOVA」と並行するかたちで複数の大規模言語モデルの研究開発プロジェクトが進行しています。 今回はそれらの研究開発プロジェクトのうち、我々を含むMassive LM開発ユニットから、日本語言語モデル「japanese-large-lm(ジャパニーズ ラージ エルエム)」をOSSとして公開できる状況になりましたので、本ブログを通じてお伝えすることにしました。 この記事
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog はじめに こんにちは、データベース室の小田です。 今回はLINEマンガのデータベースをシャーディングした作業について、サーバエンジニア編とデータベースエンジニア編に分けてご紹介したいと思います。 本エントリでは、シャーディングに至った経緯、データベースエンジニア側で検討したことについて書いていこうと思います。 シャーディングに至った経緯 サービスを引継ぐ 前段として少し昔の話をします。私がLINEマンガの担当データベースエンジニアとなったのは、2018年2月中旬のことでした。 LINEマンガのサービス開始が、2013年4月9日だということですので、ちょうど5周年を迎える直前ですね。前任者からは、いいタイミングだからということで
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは。LINE Growth Technologyの宇都宮です。現在は出前館に出向して、主に出前館のコンシューマ向けアプリケーションのAPI開発を担当しています。 私が出前館の開発に携わり始めたのは昨年(2020年)の夏でした。当時、懸案事項となっていたのがメインDB(Oracle)の高負荷です。出前館のメインDBはオンプレミスで構築されており、スケールアップもスケールアウトも難しい状況にありました。 そこで、データ参照用DB(PostgreSQL)をAWSに構築し、データ取得のみ行うAPI(参照系API)のDBアクセスを参照用DBに向ける、というプロジェクトが発足しました。このプロジェクトについては、出前館のエンジニア
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog はじめに こんにちは。フロントエンド開発センター UIT Accessibilityタスクフォース 岡﨑です。私たちは、Webサイトのアクセシビリティに関するガイドラインの策定・推進、社内に向けたアクセシビリティの勉強会やe-ラーニングを通じて、LINEとそのファミリーサービスのアクセシビリティ向上を目指しています。 色に対する配慮 アクセシビリティの国際規格となっているWCAGでは、テキストにおける色の取り扱いで以下のことが求められています。 色に依存した表現にしないこと コントラスト比を確保すること なぜ、色に対する配慮が必要なのでしょうか? 困っているのはロービジョンユーザーだけではない LINE STYLEの"Alwa
はじめに こんにちは。フロントエンド開発センター(UIT) のUIデザイナーしまむらです。 LINEが保有する膨大なデータを安全かつ効率的に利活用できるData Catalog「IU Web」、UIツールキット「Astro」、アイコンライブラリ「LAICON」のデザインを担当しています。フロントエンドエンジニアやプロジェクトマネージャに近いところで、エンジニアとデザイナーの間に生じる認識のズレが起きないよう、Figmaを使ってUI設計をしています。 Dev Modeリリース Figmaカンファレンス「Figma Config 2023」にて、新機能のDev Mode(日本語訳:開発モード)がオープンベータでリリースされました。Dev Modeは、よりフロントエンドエンジニアがUIを解釈しやすくなり、デザイナーと開発者のフラストレーションが解消できる機能が満載です。 以下の5つの機能がありま
プロジェクトで使われている技術と ESModule の状況について UIT では、 SPA 開発のプロジェクトにおいて Vue.js と React が多く利用されており、既存の多くは Babel を利用した JavaScript で、新規のプロジェクトでは TypeScript を利用して開発が行われています。 FYI: 【LINE DEV DAY 2019 番外編】UIT Front-end Tooling Survey 2019 技術選定は勿論、プロジェクトにおける細かなコーディングルールについては、プロジェクトのコードオーナーに委ねられており、プロジェクトごとに裁量を持った意思決定を行っています。 その上で、私が携わるプロジェクトにおいては、 default export を可能な限り避けるように心がけています。 import 側の裁量で対象を自由に命名できてしまう 今回は「『Da
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog はじめに こんにちは。フロントエンド開発センター(UIT) Front-end Dev.9チームの鴻巣(@kazushikonosu)です。LINEスキマニおよびLINE Creators Marketのフロントエンド開発を担当しています。 LINEスキマニのフロントエンドチームでは、React/TypeScript製のWebアプリを開発しています。主にクライアントサイド向けのコードを扱っていますが、SSRのため同じリポジトリ内でNode.jsを使って実行されるTypeScriptコードも扱っています。クライアントサイドのモジュールバンドラとして長らくwebpackが使われていましたが、webpackを使い続けることでチームの
こんにちは。フィナンシャル開発センターの鈴木です。LINE証券のフロントエンドを担当しています。 以前の記事でご紹介した通り、LINE証券ではReactを使用しています。React 16.8で導入されたフックの機能は非常に革新的で、特にカスタムフックの概念によってReactにおけるコンポーネント設計は大きく様変わりしました。我々もフック時代のコンポーネント設計を試行錯誤しており、その結果はLINE証券にも反映されています。 この記事では、その中でも我々が最近ハマっている「カスタムフックを通じてコンポーネントを提供する」という、いわば“render hooks”とも言うべき設計パターンを紹介します。 今回のお題 今回は、「いくつかのチェックボックスがあり、全部チェックを入れると次に進める」という典型的なパターンを題材にしましょう。次の画像では3つのチェックボックスと「次へ」ボタンが並んでおり
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは。LINE Growth Technology UITチームの慶島(@pittanko_pta)です。 この記事では、TypeScriptのenumを使わないほうがいい理由を、Tree-shakingの観点で紹介します。 検証環境 TypeScriptからJavaScriptへのトランスパイルは https://www.typescriptlang.org/play (TypeScript 3.9.2 / targetはESNext) で行いました。 Tree-shaking の挙動については https://rollupjs.org/repl/ にトランスパイルしたJavaScriptコードを貼り付けて検証しました
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog LINEの開発組織のそれぞれの部門やプロジェクトについて、その役割や体制、技術スタック、今後の課題やロードマップなどを具体的に紹介していく「Team & Project」シリーズ。今回は LINEアプリのクライアントサイドの開発者体験の向上を目指すDeveloper Experience Dev Teamをご紹介します。チームメンバーである三木康暉 (giginet)と秋勇紀 (freddi)、鄭基旭 (jung)の3名に、チームが担う役割や担当するプロジェクト、今後の目標などを聞きました。 規模の大きいサービスだからこそ、基盤の改善には意義がある ――Developer Experience Dev Teamの概要について教
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog 3月15日に、フロントエンドコミュニティ UIT の19回目となるミートアップ UIT Meetup vol.19『デザインシステムのリアル』を開催しました。本記事では、イベントの内容について振り返っていきます。 なお、本編のアーカイブについては以下の YouTube 動画より閲覧が可能となっております。まだ見ていないかた、見逃したかたはぜひ視聴いただければと思います。本記事では、各セッション紹介でチャプターへのリンクを貼り付けているため、特定のトークから再生を始めることも可能です。 YouTube: https://www.youtube.com/watch?v=poMrzn_2wLY UITとは? UIT は、 LINE
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog LINE株式会社およびヤフー株式会社は、2022年11月17日・18日の2日間にわたり、技術カンファレンス「Tech-Verse 2022」をオンライン(ライブストリーミング形式)にて開催しました。特別連載企画「Tech-Verse 2022 アフターインタビュー」では、発表内容をさらに深掘りし、発表で触れられなかった内容や裏話について登壇者たちにインタビューします。今回の対象セッションは「Dynamic Link: LINE が開発したスマートコントラクトの相互利用手法」です。 スマートコントラクトをサポートするブロックチェーンの多くは、コントラクト同士の相互利用の方法を提供しています。いずれの方法も、コントラクトの実行中に
LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog こんにちは、黒澤友哉と申します。 2022 年 8 月 15 日から 6 週間、LINE株式会社の NLP 開発チーム(現在は NLP チーム)で就業型インターンシップを行ないましたので、その内容を報告していきたいと思います。私は東京大学情報理工学系研究科コンピュータ科学専攻の修士で、自然言語処理を専門としています。所属は谷中研究室です。 0. 概要 本文に入る前に、このレポートの概要を書きます。以下の図はこのインターンレポートの背景と手法をまとめた図です。このレポートでは第 3 章で「言語モデルを用いた要約生成」、「hallucination」、「日本語のグラフ」について説明した後、第 4 章でグラフ生成手順と halluc
次のページ
このページを最初にブックマークしてみませんか?
『Sass を今すぐ実務で使おうよ! « LINE Engineers' Blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く