コンピュータサイエンス · SFUカナダ・バンクーバーフルスタックエンジニア

RainZhang.

Simon Fraser University でコンピュータサイエンスを学んでいます。カナダ・バンクーバーを拠点に、Python・React・TypeScript を用いたフルスタックの Web アプリケーション開発に取り組んでいます。現在は、ソフトウェアエンジニアのインターンシップおよび新卒採用の機会を探しています。

Rain Zhang のプロフィール写真

自己紹介

これまでの経歴と、開発への取り組み方について。

Simon Fraser University でコンピュータサイエンスを学ぶ学部生です。Python・React・TypeScript といったモダンな技術スタックを使い、フルスタックでシステムを開発しています。

新しいフレームワークを短期間で習得し、API を組み合わせながら、アイデアを実際に動くプロダクトへと形にしてきました。開発では、拡張性のあるバックエンド設計、レスポンシブな UI、保守しやすいコードを重視しています。

特に関心があるのは、フルスタックのソフトウェアエンジニアリングと、技術的なプロジェクトを実際に前へ進めることです。変化の速い環境のなかで、拡張性のある機能を自分の担当として引き受け、安定して動くものを届けたいと考えています。

職務経験

担当した業務と、開発したシステム。

FEITIAN

フルスタックエンジニア インターン

FEITIAN Technologies Co., Ltd.

国際部門

インターン2025年9月 — 12月中国・北京
担当範囲

FEITIAN のポスト量子暗号(PQC)関連の取り組みとして、3つのシステムの開発を設計から実装・デプロイまで一貫して担当しました。ユーザー向けの認証デモプラットフォーム、一般公開の Web Authentication 開発者向けツール、Rust で実装した FIDO2 ソフトウェア認証器の3件です。アーキテクチャ設計、フルスタック実装、クラウド・サーバーへのデプロイ、CI/CD パイプラインの構築に加え、ハードウェアエンジニアとの連携も担当しました。

主な成果
  • 社内で初となる開発者向けツールのプラットフォームを構築し、それまで分散していた外部ツールを置き換えて、認証のテスト・検証・デバッグを1つのシステムにまとめました。
  • WebAuthn・FIDO2・CTAP2 に加え、ポスト量子暗号(ML-DSA)を用いたフローにも対応する、認証製品のテスト用 Web システムを開発しました。
  • 量産前のハードウェアが利用できない段階でも開発を進められるよう、ML-DSA をテスト用プラットフォームと仮想認証器に組み込みました。
  • Docker と CI パイプラインを用いて Linux サーバーへのデプロイを整備し、テストやデモを安定して再現できるようにしました。
  • セキュリティエンジニアや製品チームと密に連携し、実際の製品開発で必要とされる形に、プラットフォームの挙動・出力データ・テストフローを調整しました。
  • ユーザー自身が試せる認証デモプラットフォームを用意することで、サポート対応の負担を軽減しました。
  • インターン期間の終了後も、担当したプロジェクトの保守と改善を自主的に続けています。
使用技術
PythonRustTypeScriptReact.jsFlaskJavaScriptHTMLML-DSA / ML-KEMliboqsWebAuthn / FIDO2CTAP2DockerGoogle CloudGitHub ActionsTailwind CSS
関連プロジェクト

主なプロジェクト

実際に運用されているシステムと、個人で取り組んだプロジェクト。

担当フルスタック開発
使用ツールReact, Python, Docker, Google Cloud
担当した内容と成果
認証方式の統合

従来のパスワード、OTP、ハードウェアセキュリティキーを1つのプラットフォームにまとめ、一貫した操作で使えるようにしました。

次世代の暗号方式への対応

将来的な計算能力の向上を見据え、ポスト量子暗号をプラットフォームに組み込みました。

デプロイの自動化

外部ネットワークに接続しなくてもサーバー側でビルドが完結するよう、デプロイ手順を自動化しました。

使用技術
PythonReactTypeScriptTailwind CSSFlaskDockerGoogle Cloudliboqs (ML-DSA)
担当バックエンド・システム開発
使用ツールRust, Linux, 暗号ライブラリ
担当した内容と成果
ハードウェアの動作再現

物理トークンの動作をソフトウェアで再現し、Web ブラウザからそのまま認証を試せるようにしました。

暗号ライブラリの組み込み

Rust 本体に暗号ライブラリを安全に組み込み、ポスト量子暗号に対応させました。

標準に沿った資格情報の保存

業界の認証標準に準拠した形で、資格情報を保存する仕組みを実装しました。

使用技術
RustC/FFITrussedLinux UHIDliboqs (ML-DSA)
担当フルスタック開発
使用ツールPython, JavaScript, Google Cloud
担当した内容と成果
開発者向けツールの提供

複雑な認証データをデコードするツールを実装し、署名の検証やテストをその場で行えるようにしました。

認証器メタデータの同期

世界共通のメタデータサービスと連携し、400 種類以上の認証器の情報を自動で同期する仕組みを構築しました。

セッションの分離

セッションを分離する設計にすることで、数百人規模の開発者が同時に利用してもデータが混在しないようにしました。

使用技術
PythonJavaScriptHTMLCSSFlaskGoogle Cloudpython-fido2 · liboqs (ML-DSA)
担当フロントエンド開発
使用ツールReact, Vite, Tailwind, API 連携(フロントエンド)
担当した内容と成果
AI による提案の実装

バックエンドの OpenAI API をフロントエンドと連携させ、AI が生成した提案を見やすい形で表示できるようにしました。

入力フローの設計

日程・人数・場所を順に入力するフォームを設計し、入力値の検証と一時保存を実装しました。

チャット UI の実装

バックエンドと連携する対話型ウィジェットの UI コンポーネントと操作フローを設計・実装しました。

使用技術
PythonReactTailwind CSSJavaScript
担当フロントエンド開発
使用ツールNext.js, TypeScript, Tailwind CSS, Vitest, Playwright, Vercel
担当した内容と成果
トークンベースのデザインシステム

色・タイポグラフィ・余白・角丸をトークンとして定義し、ポートフォリオ本体と、別途公開しているデザインシステムのページの両方で共通利用しています。

型安全な作り直し

素の HTML・CSS・JavaScript から、Next.js 15 と React 18 の構成へ移行しました。TypeScript の strict 設定と ESLint で、コンポーネントの境界を保つようにしています。

コミットごとの自動テスト

Vitest と React Testing Library によるユニットテストと、Playwright による E2E テストを CI で実行し、Chromium・Firefox・モバイル WebKit で検証しています。

使用技術
Next.jsReact.jsTypeScriptTailwind CSS

技術スタック

普段使用している言語・フレームワーク・ツール。

プログラミング言語
  • Python
  • C
  • C++
  • Java
  • Rust
Web 開発
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • React.js
  • Next.js
  • Tailwind CSS
  • Flask
OS
  • Windows
  • macOS
  • Linux
ツール・開発環境
  • VS Code
  • JetBrains IDEs
  • GitHub
  • Git
  • GitHub Actions
  • Google Cloud
  • Docker
  • WebAuthn / FIDO2

学歴

これまでに在籍した学校。

Simon Fraser University

カナダ・バーナビー

2023年9月 — 2027年4月
卒業見込み:2027年4月

コンピュータサイエンス学士(Bachelor of Science in Computer Science)

  • CGPA:3.43 / 4.33
  • Dean's Honor Roll(学部長表彰)· 2024年秋学期 · Faculty of Applied Science
  • Dean's Honor Roll(学部長表彰)· 2025年夏学期 · Faculty of Applied Science

Semiahmoo Secondary

カナダ・サリー

2018年9月 — 2023年6月

高校卒業(High School Diploma)

  • CGPA:3.9 / 4.0
  • プログラミング部 · 2021年9月から

お気軽にご連絡ください。

インターンシップやプロジェクトのご相談はもちろん、フルスタック開発やポスト量子暗号を使った認証について話すだけでも歓迎です。

読み込み中