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