My Skills
Through years of experience, I have accumulated a modest toolbox of skills.
Programming Languages
- 14 years of experience in Python
- 11 years of experience with HTML, CSS, and JavaScript, including browsers and the DOM
- 10 years of experience in C, C#, PHP, and SQL
- 6 years of experience in C++
- 6 years of experience in TypeScript
- A few months of experience in Java, Elixir, Go
Technical Skills
- XAMP stack ( Linux, Apache, MySQL, PHP)
- MediaWiki ecosystem (the software that powers Wikipedia)
- Low level understanding of HTTP, including SSL and the TCP/IP stack
- Git and version control
-
Data structures:
- Queues and stacks
- Singly and doubly linked lists
- Static and variable-length arrays
- Binary heaps and search trees
- Disjoint sets
-
Algorithms:
- Algorithmic complexity and O-notation
- Linear and binary search
- Heap operations (sifting, heapify)
- Sorting algorithms
-
Programming paradigms:
- Object-oriented programming (OOP)
- Functional programming
- Procedural programming
- Markup languages
- Query languages
- Writing elegant, readable, and efficient code, using modern software development workflows
Natural Languages
- Native in spoken and written English
- Near-native in spoken and written Cantonese Chinese
- Near-native in spoken Mandarin and written Traditional Chinese
"Soft" Skills
- Strong love and passion for learning
- Multi-perspective problem solving
- Delight in sharing knowledge, either by documentation or teaching
- Excellent verbal and written communication with people from many different cultures and customs
- Social competencies, including organizational awareness