William Deng 鄧崴元

  • 5 years of experience in AOI system development
  • Mainly use C#.NET/Halcon
  • Familiar with system design & algorithm design
  • Optimize the system, optimize the world

Email: [email protected]

TEL: +886978099781


Working Experience

Senior Software Engineer  •  VS Technology

Jun 2021 - Present

  1. Infrastructure Establishment of AOI System - Assist in establishing the infrastructure in a new SI Team
    • Coding Style & Coding Guideline Establishment
    • Halcon introduction - Share my own experience of how to use Halcon library
    • Introduce my experience of  system integration - Co-Development/Modularity/Design Pattern/ Version Control
    • Common AOI platform development - Develop a common AOI platform to handle different scenarios. The system includes the interface of Recipe/Algorithm Execution Engine/Hardware Control
  2. AOI System Development - Develop a 2-in-1 inspection system in the semiconductor industry
    • Microscopic view - Inspect the defects in one die. The user can customize their own recipe with  several options of Alignment/ROI/Post processing/Inspection algorithm/Defect selection rules
    • Macroscopic view - Inspect the defects in the whole wafer, specifically focus on the defects which have continuity in several dies

Senior Software Engineer  •  Chroma

Nov 2017 - May 2021

  1. Single module development - Develop the function module which can be involved in several projects
    • Establish Interface - Discuss with the project manager to understand the requirements
    • Module Development - Implement the module by following the interface
    • Release Document - Writing the user manual to let others know the usage of this module
    • Maintenance - Push module to remote repository, update the version by the new requirement
  2. Algorithm Development - Develop defect inspection & metrology algorithm using Halcon library
  3. SW/HW Integration - Integrate the AOI software with camera/light device/PLC, etc.
  4. AOI System Development - Construct high throughput AOI System with in-line battery factory
    • Asynchronous acquisition/inspection
    • Distributed system for throughput requirement/cross platform integration
    • Multi-threading for acceleration of inspection 
    • MVC architecture for flexible requirement
  5. Internal Research - Integrate the AI model in .NET System to implement semantic segmentation


National Cheng Kung University

M.S. in Department of Geomatics  •  2015 - 2017

Thesis: 3D Building Modeling from Airborne LiDAR Data using Block-based Iterative Detection

National Cheng Kung University

B.S. in Department of Geomatics  •  2011 - 2015



  • C# (6+ years)
  • C++
  • Python
  • Matlab

Library and Tools

  • Halcon (5 years)
  • OpenCV
  • OpenGL
  • Tensorflow
  • Keras


  • Machine Vision
  • Image Processing
  • Design Pattern
  • OOP

Self Introduction

Hello, my name is William. I have 5 years of experience in AOI software development. In my previous position as a software engineer, I collaborated with mechanism and optics partners for several projects. We cooperated in developing, delivering, and maintaining customized equipment. The experience of customized equipment makes me more familiar with the following abilities:

  • Mature programming skills
  • Basic optics & mechanism knowledge
  • Flexibly, precisely modify the function and meet the requirements of customers.

Nevertheless, when I specifically focus on software development, although I realize how to modularize a component of a system, how to utilize the design pattern to make the system more maintainable, readable and flexible, how to develop a common software architecture, I think this is a completely different dimension compared to developing mass-produced products. In my future career, I want to enhance the following skills: 

  • Software Architecture - Realize the shape of well-developed commercial software.
  • Cooperative Development - Cooperate with each other efficiently and closely on a mass-produced product.
  • System Development Life Cycle - To make the product more reliable,  more robust and more suitable to the requirements.

Last but not least, I am very interested in this position and the opportunity to join you. I believe my skills and past work experience make me a good fit for this position. Please do not hesitate to contact me if I can provide additional information. Thanks again for your time!