Pzdxlqdkihc2oncoznxm

莊祐佳

有經驗的 C++ 程式員。對於接近底層的開發、和易於理解維護的 Functional Programming 有興趣。

學生
台北,台灣
[email protected]

技術經驗

C++,2004 年 - 現在

C++ 是個與機器接近、卻又不失易用性的程式語言。曾經使用過的語法包含 lambda (C++11) 、 template (C++98) & constexpr (C++11) 、 std::for_each 之類的函式 (C++98) 、 std::optional 之類的型別 (C++17) 、 std::uint32_t 之類的型別 (C++11) 、 std::unique_ptr 之類的型別 (C++11) 。曾經將 Emscripten 的 EM_ASM 巨集(用來在 C++ 裡直接寫 Javascript)改寫成樣板並實做一個從 C++ 指向 Javascript 的智慧型指標。非常期待 C++20 Ranges 和 Concepts 的到來。

組合語言最佳化,2020 年 4 月 - 現在

SSE 和 AVX。

HTML/CSS/Javascript,2018 年 - 現在

在 Firebase 上做了一個十幾個頁面的個人網站。其中使用 Web Components 和 data- 開頭的屬性來增加可讀性、可維護性。也使用 CSS Media Query 來適應使用者偏好。對載入時間做了 preload 和 progressive JPEG 的最佳化。

Boost Beast,2018 年 - 2019 年

在一台 24 小時運作的 Ubuntu 上用 HTTP 架設了一個使用 WebSocket 與伺服器互動的網頁。包含使用 cereal 序列化雙方傳遞的結構化資料。

WebAssembly,2016 年 - 2020 年 3 月

WebAssembly 是一個將編譯式語言帶到網站前端的技術,其中工程師會用到的部分叫做 Emscripten 。曾經用 Emscripten 做了時頻分析和中古漢語發音查詢的程式,不過都不是完整的作品。這包含將 FFTS 補丁並在 Emscripten 上編譯、並用 C++ 撰寫一個物件導向的 WebGL 包裝。WebAssembly 的功能還不是很完整,除了基本支援外很多重要的部分像 SIMD 、 Reference Types 距離實作完成還有一段時間。

OpenGL/Direct3D,2014 年 - 2018 年

曾經用 Direct3D 11 和 OpenGL/WebGL 的 Render 管線(不是 Compute 管線)做過 FFT 。發現對於小型的 FFT 來說 CPU 呼叫 GPU 的成本太高了,大型的 FFT 才比較適合這樣的實做方式。

台大資工系學士班,2017 年 9 月 - 現在

目前正在就讀二年級。

語言能力


英語

可以和閱讀中文一樣輕易的閱讀電腦相關的技術文章。

對於理解原生口音的對話感到一定程度的吃力。


漢語

母語。


日語

正在學習中。會假名和少於 100 個詞彙。


西班牙語

正在學習中。會少於 100 個詞彙。