Portfolio

Billy Leung

View project on GitHub

HOME | CV PORTFOLIO | 2023-2021 | 2020-2013 | 2013-2008 | 2007-2003 | 2003-2000

PORTFOLIO

This section outlines the projects I have been involved in during the period 2003 – 2007.

Siemens

_ Period _: Jul ‘05 – Jul ‘07

_ Length _: 2 years

_ Team Members: _ 12+

_ Technologies: _ C#, Composite UI Application Block, WinForms, .NET Remoting, MSMQ, NUnit

C++ 6.0/7.0, MFC , COM, C++ Cryptography, ATL/STL containers, ODBC, Crystal Reports, SQL Server 2005/2008, TSQL/UDF/View/StoredProc/, XML.

Smart card & DVR windows driver APIs, hardware/firmware interfacing via RPC

_ Environments: _ Windows XP/Vista

_ Tools: _ CVS, PR Tracker, Wise for Windows Installer, Windows Vista Certification

_ Methodology: _ Siemens Evolution Process (bespoke software process for coordinated delivery and iteration with software, firmware, hardware, and on-site deployment technicians)

_ Description: _ SiPass has been installed at 1300 sites in 55 countries world-wide, securing notable locations Huawei HQ (2000 doors), Beijing Television Centre (784 doors) and Wohnpark Alt Erlaa in Austria (744 doors).

_ Achievements: _

  • Smart Card Hardware API Development: Gained development expertise in smart card hardware APIs (GemPlus 332, HID 6055B).
  • Innovative Feature Development: Developed a component supporting smart card access control for personal office rooms’ cylinders, a major product selling point. Contributed to 15% uptick in sales.
  • DVR API Module Lead: Managed the Digital Video Recording (DVR) API module, responsible for image capturing sequencing based on alarm events. Developed C++ COM solutions for third party recording hardware innovations working directly with third party DVR vendors to source requirements. (C++, ATL, STL, COM)
  • Live Anomaly Solutions: Delivered solutions to non-deterministic critical live anomalies, reducing end-user client complaints. Glowing feedback from client appraising analysis skills and won team award for ‘anomaly hunter’
  • Recognized for my diligence in tracking and resolving bad patterns throughout the codebase. C++, C# .NET, COM, .NET Remoting, SQL Server, Wise, Memory Leaks
  • Driven by a strong sense of ownership and a proven ability to deliver zero-risk solutions, I earned the trust of the project manager, who consequently delegated more critical site issues, enhancements, and development areas to me. Recognized for my leadership qualities and development expertise, I was assigned as the lead developer, managing a team of one to three engineers and taking full responsibility for the outcome of our key tasks.
  • Resolved a complex, non-deterministic OLE Server Busy issue that had remained unsolved for many years. Through rigorous root cause analysis, I identified the issue as a performance related in the C++ RPC connectivity to the server. With the help of engineers experienced in these legacy modules (C++, MFC), we successfully resolved and delivered the solution.
  • I was also assigned the responsibility for quality assurance of requirements, design, and API manuals from other engineers, in recognition of my attention to quality.
  • Cost-Reduction Automation Tool: Developed a tool that cut language localization costs by over 40% reducing expenses by €1.5 million. With the growing number of languages (12+) per release moving away from manual steps, I was self-motivated to engineer process optimization. Promoted to localization expert and led a team of two to three engineers to push this engineering effort. (C# .NET, Scripting, C++ RC-WinTrans API)

_ Projects _:

SiPass Enterprise

  • Designed and implemented the alarm module for system-wide alarm triggering, acknowledging, and reporting. Implemented integration bridge with SiPass (C++) and Enterprise (C#) for cross-communication interop. (C# .NET, WinForms .NET, Composite UI Application Block, NUnit .NET, COM+ Message Queue, XML)
  • Created a custom hashing algorithm for license generation (C++.NET, NUnit .NET, C++ COM Unit Test, ASP.NET Unit Test).

Sipass Hardware Mechanics

  • Designed & Implemented a module that supports pre-released smart card readers (two developments; GemPlus, HID, OmniKey) using a C++ API interface. (C++, OO Design, API interfacing). Managed the smart card division of SiPass from thereon.
  • Designed & implemented a module that introduced turnstile door types to the system. Required conceptualisation of the turnstile operation. (C++, MFC, COM, SQL Server, XML)
  • Led the Digital Video Recording division, developing C++ COM interfaces for third party device drivers. Developed enhancement C++ COM to maintain the video stream between the hardware in SiPass. (C++, ATL, STL, COM)
  • Innovated a smart-card digital locking cylinder with a fellow engineer, providing a wireless unlocking effect for door users (HID’s new R&D invention). This was a success and the pattern we invented were used henceforth for future client-server developments. (C#, .NET, Design Patterns, .NET Remoting, SQL Server)

SiPass Integrated

  • Designed & implemented enhancement where visitors are allowed access to the building on particular dates (C++, MFC)
  • Designed & implemented enhancement where users can scroll through a large database of cardholders with high performance & concurrency considerations. (C++, MFC, SQL Server UDFs)
  • Designed & implemented mechanism for system-wide fetching of database credential information. (C++, COM, C++ .NET, C# .NET, C++ Cryptology, Wise for Windows Installer). The challenge overcame was designing it with extensibility in mind as it was used for all future projects data access.
  • Designed & implemented mechanism for system-wide fetching of system sensitive database credential information. (C++, COM, C++ .NET, C# .NET, C++ Cryptology, Wise for Windows Installer)
  • Integrated an external legacy access control system into SiPass by designing a migration tool and developing integration features into SiPass. (C++, COM, MFC, ODBC)
  • Resolved issue with where user sessions were not identified properly and caused reporting of logged in users incorrectly, C++, COM
  • Designed 20+ system bite sized enhancements requested by product line (C# .NET, COM+ MFC, .NET Message Queue, Crystal Reports, C++)
  • Designed & implemented VC++7 module to detect which SQLServer versions are available on the domain & implementing into Wise for Windows Installer. (VC++7, Wise for Windows Installer)
  • Detected & resolved C++ quality of code criteria to pass official Windows Vista Certification
  • Implemented Wise for Windows Installer packaging for packaging new system components.

AMAT

_ Period _: Jun ‘04 - Jul ‘05

_ Length _: 1 year 1 month

_ Team Members _: 4-6

_ Technologies _: C# .NET, ASP .NET, .NET Nuke, .NET NEO, Java 1.4 applets, Lotus Notes 7 LotusScript/FormulaScript OLE, VB6, VBA, HTML/CSS, JavaScript/VBScript, SQL Server

_ Environments _: Windows 2000 Server /XP, CVS on Linux

_ Tools: _ CVS, Bugzilla

_ Methodology _: BDD, Story driven development, TDD.

_ Description: _ AMAT is a software consulting start-up providing consultancy for mortgage companies. The core product, MortgageFirst, facilitates workflow for mortgage associates throughout the mortgage application process.

_ Consultancy Experience: _

As a boutique software consultancy house, I gained hands on experience from inception to delivery:

  • Acquired new clients through on-site software sales promoting day-to-day workflow value-add to the mortgage application process.
  • Customer facing role involving requirements gathering, business analysis of mortgage workflow, commissioning rule and loan structuring nuances for new clients
  • Delivered document automation and commissions distribution components.
  • Provided direct client support and on-site user training (telephone support, on-site visits).
  • Responsible for on-site user training post product development to over ten mortgage institutions
  • Administered Windows servers and related software deployments and maintenance
  • Administered Linux servers for source control(CVS) and business data backups
  • Responsible for internal IT Administration including internal infrastructure health checks, maintaining the CVS repository & providing the team with software tools & suggestions that may improve the running of the business

_ Projects _:

Commissions C#.NET

This system enables mortgage funders to upload spreadsheets for agent commissions processing.

  • Developed a rules-based module for commission reconciliation.
  • Created a C# data extraction bridge to Lotus Domino via COM interfacing
  • Developed new Lotus Domino ODBC data adaptor for the new C# commissions system

MortgageFirst

  • Loan Processing workflow system allows financial consultants to track the full lifecycle of loans until post-settlement
  • CRM that stores client applications and associated personal documents in the document management system
  • Maintains details of brokers and introducers for commissioning purposes.
  • Provides ‘Income Conversion’ calculator, ‘Property Investment calculator’, Cost estimate calculators
  • Developed mail merge facilities for bulk marketing campaigns
  • Allowed brokers to create appointments and tasks which can be associated with related accountants etc.
  • Loan status tracking
  • Provides Appointment calendars
  • Generates reports for employee performance tracking, introducer tracking, overall loan statuses and loan processing deficiencies
  • Creation of product matrix to compare different loan products
  • Provides a serviceability calculator .NET C#, ASP.NET
  • Provides Loan amortisation calculation

OptusWorld

Mystery shoppers survey retail stores providing feedback to the head marketing team via marketing reports. Scoped and developed a web application for data capture and reporting. (.NET 1.1, .NET 2.0, C#, ASP.NET, .NET Nuke (ASP.NET framework), .NET NEO (DAL), SQL Server, CSS, HTML, JavaScript, XML)

_ Achievements: _

  • Gained domain expertise in mortgage loan application workflows
  • Advocated an agile requirements management system (Story tracking, weekly pulse meetings, CVSTrac)
  • Migrated a medium-scale database for Acceptance Finance improving weekly productivity whilst yet still obeying existing business data preservation two years of data rule.
  • Refactored document generation modules and commissions module slashed development costs for new features added to the MortgageFirst database.
  • Advocated for configuration management (CVS) leading to productivity gains, successfully moved away from source code copy onto file shares.

UTS

_ Period _: Jul ‘03 - Jun ‘04

_ Length _: ~1 year

_ Team Members _ : Independent (working with the Programme Coordinator of Software Engineering)

_ Technologies _ : J2EE, ACE+TAO Corba, JacOrb, Jini, .NET, CVS, Intersystems Caché OODBMS

_ Environments _ : Linux/Windows

_ Methodology _ : IEEE Software Engineering Process, UML modelling, Rational Rose, Archstyler

_ Description _ : This unique role was created by the Programme Coordinator of Software Engineering to recognize my entrepreneurship, critical thinking, and technical competence. I assisted in developing core software engineering subjects at the university, including undergraduate and postgraduate courses in software architecture, systems analysis and design, and middleware.

_ Achievements _:

  • Trained and co-supervised an undergraduate thesis project culminating in the delivery of Web Application Development for the software education laboratory. WebML+, HTML, CSS
  • Trained and supported a postgraduate thesis project focused on a network performance management system using Sun JINI self-discovery middleware
  • Developed a PDA class library that provided students with a framework for software development using PDAs (Java-based embedded, server-side Java, DBMS – Intersystems Caché).
  • Gained formal lecturing and technical speaking experience

_ Projects _ :

  • Supervised students in software design throughout the software development life cycle (J2EE, Corba, Jini, J2SE, Microsoft .NET.)
  • Installed and designed a new mobile enterprise system that presents wireless connectivity to an enterprise control context
  • Developed Java and .NET Mobile applications for PDAs
  • Created a Bluetooth wireless radio technology application for Linux enterprise connectivity
  • Delivered class presentations on J2EE and conducted tutorials on Java 2 EE technology (Autumn 2003) and CORBA (May 2003).
  • Supervised development using Intersystems Caché OODBMS
  • Provided application server support in the software lab, including BEA Weblogic 8.1, SunOne Application Server 6.0, CVS on Unix
  • Installation, configuration and assistance on using software development environments, languages, configuration management and modelling.
  • Supervised the application of software engineering process using CASE tools, Rational Suite, Archstyler