
課題解決に最も効率的な技術を選びます。
こんにちは。フロントエンドエンジニアのパク・ハンソルです。小規模なウェブサイトから大規模なアプリケーションまで、拡張性とパフォーマンスを備えたフロントエンドプロジェクトを専門に開発してきました。
主に Angular と React を使いますが、課題解決に最も効率的な技術を選ぶことを大切にしています。
オープンソースから学んだ分だけオープンソースに貢献するのが好きで、さまざまなプロジェクトに取り組んでいます。
ご連絡は me@winetree94.com までメールでお願いします。
Profiles
オンラインでは winetree94 というニックネームで活動しています。私が活動しているプラットフォームです。
Skills
オンプレミスから PaaS、SaaS まで、それぞれのビジネス環境に最適な技術スタックを構成し、プロジェクトを最初から最後まで遂行します。
FrontEnd
- Angular / React ベースのウェブアプリケーション(CRA/SSG/SSR)の設計・開発
- ECMAScript / DOM API ベースのプロジェクトの設計・開発
- CommonJS / ES Module のモジュールライブラリ開発
- Webpack / Vite などのモダンなウェブバンドラーの運用
- Electron、Tauri などのデスクトップアプリケーションの設計・開発
- Internet Explorer、Safari などのクロスブラウザ問題への対応
- iOS / Android 向け WebView プロジェクトの設計・開発
DevOps
- Cloudflare / AWS / Azure などのクラウドプラットフォームへのデプロイ環境構築とコスト最適化
- Docker ベースのコンテナデプロイ環境の構築・運用
- GitHub Actions / Circle CI などの CI/CD 環境の構築・運用
Key Technology Keywords
Work Experience
Swit Koreabased in 韓国
フロントエンド開発者
リッチテキストエディタ開発リード
2023.10 - 2024.06
Swit のクライアントごとに異なっていたエディタの機能差をなくすため、すべてのプラットフォームに対応するテキストエディタを設計・実装しました。
- 機能別モノレポと NPM 配布の仕組みを構築
- ProseMirror ベースのコアエディタを実装
- WebView ベースの Android / iOS エディタを実装
- クロスブラウザの問題を改善
- Docusaurus ベースの統合ドキュメントプラットフォームを実装
統合認証ソリューション開発リード
2023.01 - 2023.08
Swit のクライアントごとの開発コストを下げ、同じ機能を提供するため、統合認証ソリューションを設計・実装しました。
- 統合認証サービスの UI を実装
- MS / Apple / Google の OAuth 連携
- Broadcast API によるタブ間の認証情報の同期を実装
- ウェブサービス向けセッション管理クライアントライブラリを実装
翻訳システムの改善
2022.08 - 2022.12
14 か国語を効率よくサポートし、翻訳データを管理するための翻訳システムを構築しました。
- ICU MessageFormat の導入で翻訳のコード依存をなくす
- データ処理全体を自動化するバックオフィスを実装
デザインシステム開発リード
2022.04 - 2022.10
Swit のウェブサービスごとの UI/UX の差をなくし、ビジネス開発のスピードを上げるためのデザインシステムを設計・実装しました。
- Modal、Layer、Virtual Scroll など多数のコンポーネントを実装
- GitHub Actions と NPM による自動デプロイの仕組みを構築
- Storybook によるコンポーネント単位のテスト・ドキュメント化の仕組みを構築
タスク管理システム
2021.10 - 2022.06
Swit の既存のタスク管理システムをリニューアルし、大規模なパフォーマンス最適化を行いました。
- タスクの状態を定義するプラグインを実装
- Virtual Scroll ベースのカンバン / ツリービューライブラリを実装
- レイアウトシフトの分析と最適化
イーパピルス(ePapyrus)based in 韓国
主任研究員
ペン入力の改善
2021.07 - 2021.09
ユーザーがウェブ上で手書きの署名を入力できる機能を実装しました。
- ペンによる手書き入力の UI を実装
- 線形補間とベジェ曲線によるベクターの最適化
電子署名
2021.03 - 2023.07
ユーザーが PDF 文書に共同認証書で電子署名できる機能を実装しました。
- 電子署名のフォームとプロセスの UI を実装
- 韓国電子認証、ドリームセキュリティの共同認証書モジュールとの連携
プレイオート(Playauto)based in 韓国
フルスタック開発者
マルチフレームワーク
2020.08 - 2021.02
AngularJS のサポート終了に伴い、技術を段階的に置き換えるためのマルチフレームワークアーキテクチャを実装し、導入しました。
- ルーティングごとにフレームワークを切り替えられるように実装
- フレームワーク移行のためのマイグレーションツールを実装
データテーブルライブラリ
2020.02 - 2020.08
jQuery ベースの既存データテーブルライブラリを再実装し、ページのレンダリング性能を大きく向上させました。
- 仮想スクロールテーブルライブラリを実装
- アプリ内のすべてのテーブルライブラリを置き換え
グローバルショッピングモール統合
2019.09 - 2021.02
グローバルショッピングモール統合サービスのフルスタック開発を担当しました。
- eBay、Shopee など海外ショッピングモールの API 連携
- 販売段階ごとの詳細なフロントエンド UI を実装
JDLabbased in 韓国
フルスタック / Android 開発者
リハビリ治療サービス
2021.10 - 2023.12
オンラインリハビリ治療サービス「Exim」の Android アプリとバックエンドを実装しました。
- Spring ベースのバックエンドサービスを開発
- Android アプリと動画サービスを実装
副資材販売モール
2021.10 - 2023.12
副資材販売ショッピングモール「Bupasa」のウェブフルスタックを実装しました。
- Vue 2 ベースの SPA サービスを実装
- Spring ベースのバックエンドサービスを実装
Open Source
Edybara
ブラウザ向けのリッチテキストエディタライブラリを作っています。ProseMirror をビジネスで簡単かつ素早く導入できるようにするためのプロジェクトです。
- ProseMirror ベースで豊富な機能と拡張性を提供します。
- モノレポ構成で、機能ごとに独立して使えます。
- さまざまな書式に対応し、ユーザーが簡単にカスタマイズできます。
アニメーションに特化したプレゼンテーションを作れるツールです。会社や社外活動で発表する機会が多く、既存のプレゼンテーションツールを改善してみようと思って始めました。
- ページではなく、アニメーションのシーン単位でプレゼンテーションを構成します。
- オフライン保存に対応しており、ブラウザが動くあらゆる環境で使えます。
Vector Optimizer
ウェブで描いた絵をより自然に見せるためのユーティリティです。タッチやペンで描くと線がガタガタに見える問題を解決するために始めました。
- ユーザーの入力座標を最適化し、保存効率とレンダリング性能を高めます。
- ベジェ曲線の特性を活かして、ユーザーの入力を自然な曲線に補正します。
VanillaRecyclerView
仮想スクロールで大量のデータも高速にレンダリングするためのライブラリです。「ウェブはいつもアプリより遅い」という問題を乗り越えるため、Android の RecyclerView をウェブで実装しました。
- スクロール全体のうち、ユーザーが見ている位置の要素だけをレンダリングします。
- 画面外に出た要素を再利用し、スクロール時の性能を高めます。