CakeResume Talent Search

Advanced filters
On
4-6 years
6-10 years
10-15 years
More than 15 years
Avatar of Mars Liu.
Avatar of Mars Liu.
Past
General Manager, Taiwan @Glints
2021 ~ 2022
Senior Product Manager, Product Director
Within one month
customer experiences Localized Growth Marketing Function and work with the team to create better synergies between sales and marketing teams (10x the job listing on Glints TW website/ 4x the weekly user acquisition) Localized HR Function and improve internal HR related systems and process with the team Rolled out Software Knowledge Training in TW BU uplifting the Avg. CV to Interview conversion rate from 30% to 50% (on/off-boarding guidelines setup, labor law compliance, talent acquisition team rebuilding, time-off application guide) Rolled out new pricing strategy which boosted +125% gross margin and delivered the
Operations Management
Business Strategy
Business Analysis
Unemployed
Ready to interview
Full-time / Interested in working remotely
4-6 years
National Chengchi University
Law, Anthropology
Avatar of 張晏甄.
Offline
Avatar of 張晏甄.
Offline
Senior Software Engineer @Titansoft Pte Ltd
2019 ~ Present
Software Developer
More than one year
+ different scenario. Reducing 80% human error. Internal Unit Test lecturer. Trained 35+ engineers for writing C# Unit Test for two years. Lead a team(size 5) with 3 members got promotion within 1.5 years. Techman Robot Inc~C++ Software Developer in Vision Team Developed a non-blocking and auto-reconnect TCP-based message client/server and reduced 90% UI response time. Synology Inc~Full-stack JavaScript Software Developer in Productive Application Team Developed collaborative real-time web editor. Improved features of table and comment module
Web Development
Backend
Agile Development
Employed
Not open to opportunities
Full-time / Interested in working remotely
4-6 years
國立交通大學
資訊工程學系
Avatar of EDWIN NGARI NYAGA.
Avatar of EDWIN NGARI NYAGA.
IT technician @Cyber services
2019 ~ 2020
More than one year
manager and Flexibility to work odd hours. NovemberMarch 2017 Customer Support Bit Communications limited Assisting walk in clients understands the products that mbambu is offering in the Cyber Receiving calls and dialing to directed fields, contacting different sites to know the ongoing of the client Computer maintenance hardware and software Networking/ymax connectivity customer complaints e.g. internet banking, software update o Dhl services JanuaryJanuary 2017 Field Customer support Planned Parenthood Federation 20th - Networking, - Software Update - Electrification - General configuration Configurations - Wiring and Cctv Installation Intern as a Computer Technician/Customer Support At Kerugoya District Commissioner
Computer Hardware
GOOD COMMUNICATION
Software Knowledge
Full-time / Interested in working remotely
4-6 years
HEMLAND TECHNICAL INSTITUTE
DIPLOMA IN COMPUTER SOFTWARE ENGINEERING
Avatar of Zach Hays.
Avatar of Zach Hays.
Past
IT/Maintenance @WWRC INC.
2013 ~ 2017
IT Technician
More than one year
Zach Hays IT Technician PhoneEmail [email protected] Over 7 years of IT and tech support experience, dealing with hardware and software of desktop computers, laptops, servers, and networking equipment. Familiar with Windows, macOS, and Linux operating systems. Graduated with a BBA in Business Administration from the University of New Mexico and am actively seeking a position in the IT field to further my skills and career. Skills Hardware Hardware configuration and troubleshooting Computer/server upgrade and assembly Software OS and software installation and troubleshooting Security and backup Operating System Windows (10
Troubleshooting
Software Knowledge
Workstation
Unemployed
Full-time / Not interested in working remotely
6-10 years
University of New Mexico
BBA : Business Administration
Avatar of 煒哲黃.
Avatar of 煒哲黃.
Senior Android Engineer @KkStream
2022 ~ Present
Android App Developer
Within one month
1 million MAU app project, improved the scrum flow, collaborated within a international cross-functioning team . Refactored more than 80% page with MVI pattern and increase project 20% code coverage, keep efficiently implmented new feature at same time without any delay. Mentored junior android engineers to enhanced their software engineering knowledge step by step through the project feature development or the Google Codelabs. Project: J:com Stream Telasa Android Engineer • Wish mobile 2018/5 ~ 2022/7 Developed an internal framwork, used to rapidly build an app with flexibility for custermize requirement, decrease 25 ~ 50% implementation
Android app Developer
git
JAVA
Employed
Open to opportunities
Full-time / Interested in working remotely
4-6 years
國立台中科技大學
資訊工程系
Avatar of Hamed Alaryani.
Avatar of Hamed Alaryani.
GIS Analyst @ALS Arabia
2017 ~ 2019
More than one year
Hamed Alaryani LNG Field Operator Diligent Geographic Information Systems Analyst with nearly 2 years of experience with ArcGIS software for developing GIS databases as well as ArcEditor data creation/editing tools and snapping tolerances. Excellent working knowledge of Excel, including pivot tables, formulas and data exports. Observant Gas Plant Operator storing various gases for industrial purposes. Especially adept at maintaining schedules, performing system checks and ensuring proper maintenance of equipment. Committed to ensuring efficient production while maintaining the safety of employees. Positive Data Entry Clerk with 5 years of career experience in administrative office
Word
Excel
GIS Application and Analysis
Full-time
6-10 years
Stellenbosch University
Geology
Avatar of 周群哲.
Avatar of 周群哲.
Software Engineer @Tiger Party
2015 ~ 2019
Back-End / Full-Stack Engineer
More than one year
周群哲, Jay Chou A tech enthusiast with software engineering knowledge, possesses 5 years+ experience as a software engineer. Familiar with various programming languages, e.g. PHP/Python/JavaScript. @Taipei [email protected] Education National Chin-Yi University of Technology Earning 4 years toward a bachelor degree in mechanical engineeringSkills Backend Python Django Django rest framework Celery PHP Laravel framework Cloud architecture design DevOps/Cloud GCP Compute Engine Cloud Run Cloud SQL Cloud Storage Pub/Sub Load Balanacer Cloud Endpoints AWS EC2 S3 CI/CD with
Software Development
Software Engineering
JavaScript
Employed
Full-time / Interested in working remotely
4-6 years
National Chin-Yi University of Technology
Mechanical Engineering
Avatar of the user.
Avatar of the user.
Freelance @Admiral Egypt Solution
2011 ~ 2017
Project Manager
More than one year
Time Management Communication Skills
proactive coordination
supervision
Full-time / Interested in working remotely
6-10 years
Cairo University
E-Archival
Avatar of the user.
Senior Software Engineer
More than one year
C++
C
Python
Full-time / Interested in working remotely
6-10 years
National Taiwan University
Electrical Engineering
Avatar of the user.
Avatar of the user.
Past
SENIOR SOFTWARE ENGINEER @RIKKEISOFT TOPTECH INFORMATICS K.K
2020 ~ 2023
Senior Full Stack Developer
Within one month
Web Development
Software Development
Full Stack Development
Unemployed
Ready to interview
Full-time / Remote Only
10-15 years
The University of Tokyo
Computer Science

The Most Lightweight and Effective Recruiting Plan

Search resumes and take the initiative to contact job applicants for higher recruiting efficiency. The Choice of Hundreds of Companies.

  • Browse all search results
  • Unlimited access to start new conversations
  • Resumes accessible for only paid companies
  • View users’ email address & phone numbers
Search Tips
1
Search a precise keyword combination
senior backend php
If the number of the search result is not enough, you can remove the less important keywords
2
Use quotes to search for an exact phrase
"business development"
3
Use the minus sign to eliminate results containing certain words
UI designer -UX
Only public resumes are available with the free plan.
Upgrade to an advanced plan to view all search results including tens of thousands of resumes exclusive on CakeResume.

Definition of Reputation Credits

Technical Skills
Specialized knowledge and expertise within the profession (e.g. familiar with SEO and use of related tools).
Problem-Solving
Ability to identify, analyze, and prepare solutions to problems.
Adaptability
Ability to navigate unexpected situations; and keep up with shifting priorities, projects, clients, and technology.
Communication
Ability to convey information effectively and is willing to give and receive feedback.
Time Management
Ability to prioritize tasks based on importance; and have them completed within the assigned timeline.
Teamwork
Ability to work cooperatively, communicate effectively, and anticipate each other's demands, resulting in coordinated collective action.
Leadership
Ability to coach, guide, and inspire a team to achieve a shared goal or outcome effectively.
More than one year
Senior Software Engineer
Logo of Titansoft Pte Ltd.
Titansoft Pte Ltd
2019 ~ Present
Taiwan
Professional Background
Current status
Employed
Job Search Progress
Not open to opportunities
Professions
Other
Fields of Employment
Software
Work experience
4-6 years
Management
I've had experience in managing 1-5 people
Skills
Web Development
Backend
Agile Development
Unit Testing
C#.NET development
JavaScript
Python
OOP Programming
Domain-Driven Design (DDD)
Test-Driven Development (TDD)
Languages
Chinese
Native or Bilingual
English
Fluent
Job search preferences
Positions
Software Developer
Job types
Full-time
Locations
Remote
Interested in working remotely
Freelance
No
Educations
School
國立交通大學
Major
資訊工程學系
Print
Oxc33kr8zkmnfmntt7uk

張晏甄 Chang Yen-Chen


+886 988817378 / [email protected] / Blog: https://blog.opasschang.com

I am a web programmer taking code quality seriously. I have practical experience in TDD, refactoring and agile methodology. I am good at C# but also open to learn other technology stack as well.

Working Experience

Titansoft Inc. 2019.6 ~ now

Senior Software Developer

  • Integrate first crypto payment flow and 10+ payment service providers. Improve database schema and validator design to reduce integration time down to 1 week 1 payment.
  • Build a banner management system for showing corresponding content in 100+ different scenario. Reducing 80% human error.
  • Internal Unit Test lecturer. Trained 35+ engineers for writing C# Unit Test for two years.
  • Lead a team(size 5) with 3 members got promotion within 1.5 years.

Experiences 00 00@2x 504900dc09d82f711fdb54cf5763251cab5193a844856da978b2b8f3907ecd5a

Techman Robot Inc.   2018.3 ~ 2018.12

C++ Software Developer in Vision Team

  • Developed a non-blocking and auto-reconnect TCP-based message client/server and reduced 90% UI response time.

Experiences 00 00@2x 504900dc09d82f711fdb54cf5763251cab5193a844856da978b2b8f3907ecd5a

Synology Inc.   2017.4 ~ 2018.3

Full-stack JavaScript Software Developer in Productive Application Team

  • Developed collaborative real-time web editor. Improved features of table and comment module.

Experiences 00 01@2x 6daa47d1df70d315f129dcecdd562003831581c4cdd8f9c819aa22d4a24ae150

Skills


C#

  • Advanced level in language features and IDE productivity operation
  • .NET Core and Framework
  • Web(ASP.NET Core and MVC)

JavaScript

  • Intermediate level in ES2017
  • Vue3/Vue2, Webpack, TypeScript, NodeJS


Other Language and Tools

  • Python
    • Django, TensorFlow
  • C++
    • Qt5, Google Test and Google Mock
  • Database
    • MSSQL, PostgreSQL, FireStore
  • CI/CD 
    • Gitlab, Jenkins
  • Docker, K8s, ELK
  • Git, TFS


Technical

  • C# Unit Test internal lecturer(2 year)
  • Agile development practical experience(3 year)
    • Scrum, LeSS, PBR, Daily, Pair Programming,  Code Review, CI/CD
  • Clean Architecture
  • TDD
  • DDD

Education

National Chiao Tung University B.S. in Department of Computer Science(2011-2015)

  • Average Score 85.91(7/59)

工作經歷

鈦坦科技

在鈦坦科技進行平台維護相關的開發。後端使用.NET技術棧。包含.NET Core, ASP.NET Framework。具備docker與k8s的操作經驗。前端碰到的框架有Vue3, Vue2, JS & TS。資料庫使用MSSQL。

分析並解決複雜的需求

  • 整合第一個加密貨幣金流,原有金流都是法幣儲值,這是首次支援加密貨幣儲值。廠商的文件規格模糊、客戶對於儲值流程並不清楚。我與廠商、產品經理、UIUX、客戶溝通,釐清操作流程、匯率轉換等問題,最後帶領團隊實做並成功上線。
  • 每個月都需要在十多個站內版位上顯示廣告。這些在地化廣告的顯示條件相當複雜,變因包含國家、網域、語言等等,相乘起來超過百種情境,每次更換都是棘手的問題。我與設計師和產品經理合作,實做了廣告管理系統,把變因拆解成兩大主軸,能夠預先排程,在新系統中,只需要勾選情境並設定內容,大幅減少每月都會發生的人工錯誤。
  • 實做多種行銷活動,如推薦好友拿獎勵、儲值抽獎等等。需要處理多種規則和限制條件,最後帶來可觀數量的用戶。

重視品質的交付

  • 兩年前被團隊推舉成為單元測試課內訓講師,目前是公司跨部門新人必修課,已經培訓了35個以上的工程師,超過30人給予5/5評價並表示極有幫助。
  • 在開發新專案時,核心的senior工程師為了求快速上線,照抄原始的資料庫欄位設計。在串接到第三個服務商後,我主動與團隊溝通,討論並調整了10張表,超過50個欄位。這些改動讓團隊的溝通變得更順暢,最後此專案甚至被切出去成為獨立的部門。
  • 因為舊有的支付驗證器設計不佳、相似的驗證邏輯分散在各處。我設計了Fluent Interface的泛型驗證器,易讀好寫,大幅降低忘記開發,漏掉驗證的風險,目前已用於30種以上的金流服務驗證。

提昇團隊能力,一起變強

  • 導入 vim in IDE 與快捷操作鍵設定檔,提昇團隊開發效率。
  • 團隊每日以 Pair Programming 開發,下班前進行 Code Review,確保品質、共享知識與及早發現問題。
  • 不定時進行技術分享、設計討論、重構練習。 成為部門內升遷速度最快的團隊,5人中有3人在一年半內升等。

Class 粒度的團隊協作

由於團隊成員實做速度夠快,我們得以花費更多時間在前期的設計討論上,而非直接埋頭苦幹。團隊能夠在開發前一起討論職責該怎麼切分、介面怎麼定義。一起畫 Class Diagram 與 Sequential Diagram,順過整個流程,確保所有人的認知都一致。最後再切成task交由不同的Pair去實做。甚至在遠端工作的情況下,依然如此。。

達明機器人 視覺部門(2018)

視覺部門的職掌是機械手臂中和影像有關的功能,諸如影像處理、物體定位、識別、量測等。近年亦開始導入深度學習技術,使用C++及Qt Libary進行開發。

設計可靠的通信模組

因舊有系統使用polling載入後端資料,而且在polling期間block住UI Thread,另外濫用Qt的signal/slot機制,造成Server總是以broadcast方式傳送信息給Client。我設計並導入了non-blocking的Client/Server通訊架構解決此問題,大幅減少UI回應時間。


  • 我利用JS Programming的經驗,用C++設計了類似Socket.Io的雙向通信模組,提供Callback-Based的介面供其他程式使用,避免在傳輸信息時block住UI thread,大幅降低回應時間。
  • 我使用了modern C++ 11/14的功能,像是smart_pointer、auto、lambda expression、functor、template specialization、virtual function、namespace等

  • 因工廠的網路環境不穩定,我設計了斷線重連的協定。就算拔掉網路線再插回去,也能夠繼續傳輸斷線前的資料。
  • 為了測試程式的可靠性,我使用Google Test與Google Mock撰寫單元測試,將其與Qt整合,並隔離掉需要Event Loop才能測試的元件。
  • 我使用Resharper C++與Visual Studio進行開發。

群暉科技 生產力工具部門(2017)

2017年至群輝科技(Synology)開始第一份工作,我所在的部門負責開發辦公室生產力軟體,也就是Web版本的Doc, Excel, PowerPoint。其功能包含即時多人協同編輯、復原、文件歷史快照、分頁模式、跨瀏覽器支援。我主要貢獻如下。


  • 改良表格的架構設計,使其支援合併/取消合併儲存格
  • 改進Doc效能測試程式使其支援多檔操作
  • 改良註解模組架構以避免網路不穩導致註解不同步
  • 處理跨瀏覽器(Chrome, IE, Firefox, Safari)相容性問題。


Projects 01 00@2x 9a5a97084c8e268ae3725d8e03654d1815ae2eb597b59c292ae4d0beffa7b703

Self Learning

Paragraph image 01 00@2x 1a3881c875a7a1fb1e859435ef9363b5ddf36f4e73d1ad63a1a0af69f2a9f745

參與CSM課程(2017.11)

參與Daniel Teng講授的開腦CSM(Certificated Scrum Master)課程,課程為期三天,學習Scrum的框架下每個活動背後的理由,敏捷團隊成員該有的素質。課後很興奮地嘗試在組織內導入Scrum但理所當然的失敗了,之後漸漸明白敏捷應該是不導而入,潛移默化,以身作則。

91極速開發課程(2018.9)

為了解決寫測試很花時間的問題,自費參與91(Joey Chen)的Visual Studio極速開發課程,課前兩週開始從零自學C#,課後花費一週刻意練習,能夠在22分鐘內以TDD方式完成Tennis Kata,並能於日常開發使用該技能。心得記錄於部落格:


http://bit.ly/blog-speed-up-your-visual-studio

Paragraph image 00 00@2x ebb59a6d9adb03673d06762584bb6a0cc401a7cc4bd081bb82ce6f841d95aa2b
Paragraph image 01 00@2x 1a3881c875a7a1fb1e859435ef9363b5ddf36f4e73d1ad63a1a0af69f2a9f745

重構與 TDD 實戰營 (2018.11)

因想學習TDD的開發方式與敏捷的工程實踐。主動要求培訓,參與91(Joey Chen)的重構與 TDD 實戰營課程。學習Specifcation By Example、拆解TDD Baby Step、重構技能。

單元測試實戰營 (2019.1) 

參與91(Joey Chen)的單元測試實戰營課程,課前已先透過實做和習得單元測試的技巧,透過上課更全面的了解盲點。學習3A原則、測試也該重構、Mock/Spy差異、正確評量Code Coverage指標的觀念等等。

Paragraph image 00 00@2x
Paragraph image 01 00@2x

Practice TDD skill in C# (2019.1~3)

自認為TDD沒有那麼容易上手,縱然上了培訓課,但尚未內化成自身的技能。故決定趁不在職的期間,練習用TDD開發C#程式。過程包含將極速開發的技能從Visual Studio遷移到Rider上、練習LINQ、上Emergent Design線上課、練習Kata、參與Coding Dojo等,已能將TDD運用於日常開發。心得記錄於部落格。

https://blog.opasschang.com/2019/03/12/a-journey-of-learning-tdd/

領域驅動設計與簡潔架構入門實作班(2021.4)

因為想要學習領域驅動設計,卻覺得參考書過於生硬。所以主動報名上課,想要加速理解DDD的核心觀念。除了解釋相關名詞之外,此課程影響我最大的是把Clean Architecture的分層概念理解清楚。日後在閱讀其他Domain-Driven Design的書籍,以及和同事討論設計架構,都有更清晰的理解。

Paragraph image 00 00@2x
Paragraph image 01 00@2x

超級數字力(2022.3)

因為想要學習財務思維,理解如何依據財務報表了解公司狀況,自行報名了MJ老師的超級數字力課程。這門課教你將三張財務報表以立體的觀點比較,判斷是不是一門好生意,公司有沒有賺錢的真本事,如何依據數字做決策。

Resume
Profile
Oxc33kr8zkmnfmntt7uk

張晏甄 Chang Yen-Chen


+886 988817378 / [email protected] / Blog: https://blog.opasschang.com

I am a web programmer taking code quality seriously. I have practical experience in TDD, refactoring and agile methodology. I am good at C# but also open to learn other technology stack as well.

Working Experience

Titansoft Inc. 2019.6 ~ now

Senior Software Developer

  • Integrate first crypto payment flow and 10+ payment service providers. Improve database schema and validator design to reduce integration time down to 1 week 1 payment.
  • Build a banner management system for showing corresponding content in 100+ different scenario. Reducing 80% human error.
  • Internal Unit Test lecturer. Trained 35+ engineers for writing C# Unit Test for two years.
  • Lead a team(size 5) with 3 members got promotion within 1.5 years.

Experiences 00 00@2x 504900dc09d82f711fdb54cf5763251cab5193a844856da978b2b8f3907ecd5a

Techman Robot Inc.   2018.3 ~ 2018.12

C++ Software Developer in Vision Team

  • Developed a non-blocking and auto-reconnect TCP-based message client/server and reduced 90% UI response time.

Experiences 00 00@2x 504900dc09d82f711fdb54cf5763251cab5193a844856da978b2b8f3907ecd5a

Synology Inc.   2017.4 ~ 2018.3

Full-stack JavaScript Software Developer in Productive Application Team

  • Developed collaborative real-time web editor. Improved features of table and comment module.

Experiences 00 01@2x 6daa47d1df70d315f129dcecdd562003831581c4cdd8f9c819aa22d4a24ae150

Skills


C#

  • Advanced level in language features and IDE productivity operation
  • .NET Core and Framework
  • Web(ASP.NET Core and MVC)

JavaScript

  • Intermediate level in ES2017
  • Vue3/Vue2, Webpack, TypeScript, NodeJS


Other Language and Tools

  • Python
    • Django, TensorFlow
  • C++
    • Qt5, Google Test and Google Mock
  • Database
    • MSSQL, PostgreSQL, FireStore
  • CI/CD 
    • Gitlab, Jenkins
  • Docker, K8s, ELK
  • Git, TFS


Technical

  • C# Unit Test internal lecturer(2 year)
  • Agile development practical experience(3 year)
    • Scrum, LeSS, PBR, Daily, Pair Programming,  Code Review, CI/CD
  • Clean Architecture
  • TDD
  • DDD

Education

National Chiao Tung University B.S. in Department of Computer Science(2011-2015)

  • Average Score 85.91(7/59)

工作經歷

鈦坦科技

在鈦坦科技進行平台維護相關的開發。後端使用.NET技術棧。包含.NET Core, ASP.NET Framework。具備docker與k8s的操作經驗。前端碰到的框架有Vue3, Vue2, JS & TS。資料庫使用MSSQL。

分析並解決複雜的需求

  • 整合第一個加密貨幣金流,原有金流都是法幣儲值,這是首次支援加密貨幣儲值。廠商的文件規格模糊、客戶對於儲值流程並不清楚。我與廠商、產品經理、UIUX、客戶溝通,釐清操作流程、匯率轉換等問題,最後帶領團隊實做並成功上線。
  • 每個月都需要在十多個站內版位上顯示廣告。這些在地化廣告的顯示條件相當複雜,變因包含國家、網域、語言等等,相乘起來超過百種情境,每次更換都是棘手的問題。我與設計師和產品經理合作,實做了廣告管理系統,把變因拆解成兩大主軸,能夠預先排程,在新系統中,只需要勾選情境並設定內容,大幅減少每月都會發生的人工錯誤。
  • 實做多種行銷活動,如推薦好友拿獎勵、儲值抽獎等等。需要處理多種規則和限制條件,最後帶來可觀數量的用戶。

重視品質的交付

  • 兩年前被團隊推舉成為單元測試課內訓講師,目前是公司跨部門新人必修課,已經培訓了35個以上的工程師,超過30人給予5/5評價並表示極有幫助。
  • 在開發新專案時,核心的senior工程師為了求快速上線,照抄原始的資料庫欄位設計。在串接到第三個服務商後,我主動與團隊溝通,討論並調整了10張表,超過50個欄位。這些改動讓團隊的溝通變得更順暢,最後此專案甚至被切出去成為獨立的部門。
  • 因為舊有的支付驗證器設計不佳、相似的驗證邏輯分散在各處。我設計了Fluent Interface的泛型驗證器,易讀好寫,大幅降低忘記開發,漏掉驗證的風險,目前已用於30種以上的金流服務驗證。

提昇團隊能力,一起變強

  • 導入 vim in IDE 與快捷操作鍵設定檔,提昇團隊開發效率。
  • 團隊每日以 Pair Programming 開發,下班前進行 Code Review,確保品質、共享知識與及早發現問題。
  • 不定時進行技術分享、設計討論、重構練習。 成為部門內升遷速度最快的團隊,5人中有3人在一年半內升等。

Class 粒度的團隊協作

由於團隊成員實做速度夠快,我們得以花費更多時間在前期的設計討論上,而非直接埋頭苦幹。團隊能夠在開發前一起討論職責該怎麼切分、介面怎麼定義。一起畫 Class Diagram 與 Sequential Diagram,順過整個流程,確保所有人的認知都一致。最後再切成task交由不同的Pair去實做。甚至在遠端工作的情況下,依然如此。。

達明機器人 視覺部門(2018)

視覺部門的職掌是機械手臂中和影像有關的功能,諸如影像處理、物體定位、識別、量測等。近年亦開始導入深度學習技術,使用C++及Qt Libary進行開發。

設計可靠的通信模組

因舊有系統使用polling載入後端資料,而且在polling期間block住UI Thread,另外濫用Qt的signal/slot機制,造成Server總是以broadcast方式傳送信息給Client。我設計並導入了non-blocking的Client/Server通訊架構解決此問題,大幅減少UI回應時間。


  • 我利用JS Programming的經驗,用C++設計了類似Socket.Io的雙向通信模組,提供Callback-Based的介面供其他程式使用,避免在傳輸信息時block住UI thread,大幅降低回應時間。
  • 我使用了modern C++ 11/14的功能,像是smart_pointer、auto、lambda expression、functor、template specialization、virtual function、namespace等

  • 因工廠的網路環境不穩定,我設計了斷線重連的協定。就算拔掉網路線再插回去,也能夠繼續傳輸斷線前的資料。
  • 為了測試程式的可靠性,我使用Google Test與Google Mock撰寫單元測試,將其與Qt整合,並隔離掉需要Event Loop才能測試的元件。
  • 我使用Resharper C++與Visual Studio進行開發。

群暉科技 生產力工具部門(2017)

2017年至群輝科技(Synology)開始第一份工作,我所在的部門負責開發辦公室生產力軟體,也就是Web版本的Doc, Excel, PowerPoint。其功能包含即時多人協同編輯、復原、文件歷史快照、分頁模式、跨瀏覽器支援。我主要貢獻如下。


  • 改良表格的架構設計,使其支援合併/取消合併儲存格
  • 改進Doc效能測試程式使其支援多檔操作
  • 改良註解模組架構以避免網路不穩導致註解不同步
  • 處理跨瀏覽器(Chrome, IE, Firefox, Safari)相容性問題。


Projects 01 00@2x 9a5a97084c8e268ae3725d8e03654d1815ae2eb597b59c292ae4d0beffa7b703

Self Learning

Paragraph image 01 00@2x 1a3881c875a7a1fb1e859435ef9363b5ddf36f4e73d1ad63a1a0af69f2a9f745

參與CSM課程(2017.11)

參與Daniel Teng講授的開腦CSM(Certificated Scrum Master)課程,課程為期三天,學習Scrum的框架下每個活動背後的理由,敏捷團隊成員該有的素質。課後很興奮地嘗試在組織內導入Scrum但理所當然的失敗了,之後漸漸明白敏捷應該是不導而入,潛移默化,以身作則。

91極速開發課程(2018.9)

為了解決寫測試很花時間的問題,自費參與91(Joey Chen)的Visual Studio極速開發課程,課前兩週開始從零自學C#,課後花費一週刻意練習,能夠在22分鐘內以TDD方式完成Tennis Kata,並能於日常開發使用該技能。心得記錄於部落格:


http://bit.ly/blog-speed-up-your-visual-studio

Paragraph image 00 00@2x ebb59a6d9adb03673d06762584bb6a0cc401a7cc4bd081bb82ce6f841d95aa2b
Paragraph image 01 00@2x 1a3881c875a7a1fb1e859435ef9363b5ddf36f4e73d1ad63a1a0af69f2a9f745

重構與 TDD 實戰營 (2018.11)

因想學習TDD的開發方式與敏捷的工程實踐。主動要求培訓,參與91(Joey Chen)的重構與 TDD 實戰營課程。學習Specifcation By Example、拆解TDD Baby Step、重構技能。

單元測試實戰營 (2019.1) 

參與91(Joey Chen)的單元測試實戰營課程,課前已先透過實做和習得單元測試的技巧,透過上課更全面的了解盲點。學習3A原則、測試也該重構、Mock/Spy差異、正確評量Code Coverage指標的觀念等等。

Paragraph image 00 00@2x
Paragraph image 01 00@2x

Practice TDD skill in C# (2019.1~3)

自認為TDD沒有那麼容易上手,縱然上了培訓課,但尚未內化成自身的技能。故決定趁不在職的期間,練習用TDD開發C#程式。過程包含將極速開發的技能從Visual Studio遷移到Rider上、練習LINQ、上Emergent Design線上課、練習Kata、參與Coding Dojo等,已能將TDD運用於日常開發。心得記錄於部落格。

https://blog.opasschang.com/2019/03/12/a-journey-of-learning-tdd/

領域驅動設計與簡潔架構入門實作班(2021.4)

因為想要學習領域驅動設計,卻覺得參考書過於生硬。所以主動報名上課,想要加速理解DDD的核心觀念。除了解釋相關名詞之外,此課程影響我最大的是把Clean Architecture的分層概念理解清楚。日後在閱讀其他Domain-Driven Design的書籍,以及和同事討論設計架構,都有更清晰的理解。

Paragraph image 00 00@2x
Paragraph image 01 00@2x

超級數字力(2022.3)

因為想要學習財務思維,理解如何依據財務報表了解公司狀況,自行報名了MJ老師的超級數字力課程。這門課教你將三張財務報表以立體的觀點比較,判斷是不是一門好生意,公司有沒有賺錢的真本事,如何依據數字做決策。