Professional Summary
Over ** years of experience in information
technology including desktop, mobile and web
software development, systems administration and
database programming. My experience including work
on manufacturing and planning applications and
enterprise resource planning systems in the .Net
framework furthered by exposure to commercialization
has given me a unique perspective in information
technology.
One of my most important strengths is the ability to
tackle issues in environments that I have very
little to no knowledge of. I believe that my
diverse experience in many facets of the computing
industry was the determinant factor in shortening
the learning curve.
Technical Skills
. Environments - DreamWeaver 8, DBMS, .Net 4.5,
OOP, SSMS, SSIS, SSRS, Visual Studio 2012 (6.0 -
2010) and Team Foundation Server, Virtual
Environment (Python) and Mercurial
. Languages - VB 6.0, Adobe ActionScript, ASP.Net,
C#.Net, VB.Net, LINQ, SQL, C, C++, PHP, CSS,
HTML, XML, Unix Shell, Java script (some JSON &
AJAX), Python and PGSQL
. Software - Adobe Creative Suite, DevExpress
. Operating Systems - Windows 8, 7 and XP, Windows
and Linux Servers, and Unix like systems
including Apple Mac OS
. Databases - SQL Server 2012 (and 2000-2005).
MySQL and SyBase (more than 5 years ago)
. Hardware - PC, Windows and Unix Servers, and
Apple (to a lesser extent)
. Industries - Inventory management (ERP) and
mobile applications
. Project Management Tools - SynergyDesk Project
Management
. Methodologies - MVP, RUP, UML, Citrix, and Change
Management (more than 5 years ago)
Websites
. http://www.surteksolutions.ca
. http://www.edmontoncommunitydance.com
. http://www.albertasource.ca
Education
. University of Alberta, Master's Degree in
Computing Science, Sep. 1995
Professional Experience
. Company Profile - Advanis Inc. utilizes digital
technology and the internet to provide high
quality market research data to a wide range of
clients. Advanis has offices in Alberta, British
Columbia and Ontario.
. Project Highlights - My assignments include
implementing a mobile device survey API and
maintaining an online reporting environment.
. Planning - The company adopts a ticketing system
to assign and monitor tasks.
. Development -Test driven development is adopted
primarily using unit tests in Python and pgTAP
(for PostgreSQL) in a multi-tiered SOA. HTTP,
XML-RPC and SIP protocols are used for
communicating between tiers as well as external
entities. Mercurial is used for source code
version control.
. Technical environment - Unix like systems
including Mac OS, Python, PostgreSQL, PHP, HTML,
Mercurial, Virtual Environment (Python) and Java
Script.
. Company Profile - Digital Time Capture provides
time tracking software and customized
applications to the construction and oil and gas
industries. A typical client is a company with
annual revenues of $50 million and above.
. Project Highlights - I was assigned mainly to the
data migration part of a legacy COM application
to.Net that is built on MVP, LINQ and WCF which
is a type of an ASP.Net application. In
addition, I also met with clients to revise
existing functional specs. The legacy OLE data
is first converted into SQL that forms the
baseline and further processed to shape it to the
newly developed data model. In departing from
COM and moving towards .Net, a variety of .Net
methodologies such as hosted applications,
concurrency control and distributed transactions,
and side by side and dynamically versioned
assemblies were explored to be utilized as
applicable.
. Planning - The team thoroughly went over the
functional requirements, specifications and
database schemas and has mapped out a plan early
in the project. A typical day starts with a
morning update of the most recent database
compilation informing the updates and issues.
The developers typically touch-base with each
other near the end of the day to coordinate and
maintain optimal work flow.
. Development - Development tends to be in short to
medium cycles due to the coordinated development
of the frontend and the backend of the new system
in .Net where the frontend developer updates the
source code and informs requirements to the
backend developer.
. Technical environment - OOP, N-tier, ASP.Net,
MVP,WCF, ASP.Net, VB.Net, LINQ, XML, SQL Server
2012, DBMS, Team Foundation Server, Windows 7 and
8, and DevExpress.
. Company Profile - The company provides a scaled
down ERP system, referred to as an inventory
management system, to the oil and gas industry.
It operates in coordination with a sister company
called Advance-Tek where one of their
specializations is in the Scientific Research and
Experimental Development (SRED) program.
. Project Highlights - The architecture strictly
adheres to the model view presenter (MVP)
topography in view of future scalability, and
exclusively uses LINQ for database access. I
went into the project knowing next to nothing
about the business or the technicalities, but,
for example, was able to provide solutions to
problems on DevExpress controls that their tech
support team was unable to resolve. I was
responsible for the entire implementation and
integration of a time tracking module with a
conjoined grid and scheduler interface into the
system and had also made significant
contributions in the development of a project
management module including the recursive task
exclusion, and integration of SRED evaluation
criteria. I have also participated in the
planning of asset tracking and fleet management
modules, and gathering user requirements.
. Planning - A typical day starts with a morning
meeting to plan activities and discuss business
and architectural issues that need to be aware of
as the business analysts and developers proceed
with their work.
. Development - Development tends to be in short
cycles due to the business requirements. Tasks
are divided among developers and coordinated
throughout the process to make sure the coding
conforms to the company standards and the
structure adheres to the MVP architecture. The
application suite was developed in VB.Net and
SQL.
. Testing - Testing and code consolidation is
carried out before a typical deployment. The
staging database server is first updated by all
developers that had made a change to their
schemas. At the same time, all changes made to
the code are merged onto the TFS, followed by
testing and code reviews where in a typical
testing scenario a developer cross tests a
different developer's code.
. Deployment - The final prerelease version of code
is tested again before deployment. The
application goes through an obfuscation process
before launching it onto the production server.
. Technical environment - OOP, N-tier, MVP,
ASP.Net, VB.Net, LINQ, SQL Server 2012, SSRS,
Team Foundation Server, Windows 7 and 8, and
DevExpress
. Chrysler Canada -Show floor IT support.
. IBM Canada - Corporate takeover desktop rollout.
. Enbridge - Corporate IT restructuring desktop
move.
. Project Highlights - Designed and developed a one-
handed touch screen keyboard that would allow 8
mm wide keys on and a 40 mm wide device while
delivering one keystroke per character, and a
more accurate word completion system that is
algorithmically deterministic. A web based
crawler that periodically crawls websites and
index the words and their frequencies translated
into rankings in the word completion system was
also developed in C#, ASP.Net and SQL.
. Development - The components for the keyboard and
word completion system were developed in C/C++
which is unmanaged (native) code in contrast to
C# or VB.Net which are managed code. As a
consequence, many of the features taken for
granted in the .Net environment had to be coded
from scratch.
. Testing - Unlike managed code, unmanaged code
doesn't lend itself well to testing tools such as
NUnit or Visual Studio 2008 testing features. As
a result, I ended up rigging a custom setup for
testing purposes, but even then tests involving
the Windows message loop and the GUI were a major
challenge.
. Technical environment - OOP, N-tier, C, C++,
C#.Net, ASP.Net, DBMS, MySQL and SQL Server.
. Project Highlights - Designed and developed an
automated stats retrieval and compilation system
for more than 80 web sites maintained by the
foundation, and substantially reduced the web
server down time to less than 1% per year by use
of automated reporting mechanisms developed in
house
. Web applications - I started working with Web
based ASP.Net applications in VB.Net and SQL
after I joined the Heritage Community Foundation.
The foundation maintains more than 80 websites
and part of my duties involves maintaining a web
crawler that crawls those websites and indexes
the search terms and links in a SQL database.
JavaScript was used from time to time for other
client side processing such as ordering
publications for the foundation.
. Technical environment - Windows and Cobalt
(Linux) servers, Windows XP desktops, OOP, N-
tier, VB.Net, ASP.Net, DBMS, SQL, PHP, CSS, HTML,
XML, GIF, DreamWeaver 8, Adobe ActionScript,
Adobe Creative Suite and Shell and Java scripts.
. Project Highlights - Designed and developed a
Virtual Keypad Input Device that features a
highly space efficient interface. A simulator
was built using VB 6.0, and models and animations
were developed in TurboCAD and AnimationLab.
. Technical environment - VB 6.0, HTML, C#,
ASP.Net, TurboCAD and AnimationLab.
. Company Profile - Micron is a semiconductor
manufacturer that makes memory chips. The
company heavily relies on automation in its
planning and fabrication processes.
. Project Highlights - My duty at Micron involved
the maintenance and support of a manufacturing
and planning software suite that is used to
create plans 3-5 years into the future and feeds
the high level instructions further down into the
fabrication automation systems by working closely
with internal clients. The application suite was
developed using VB 6.0 with a SyBase backend.
Initiates were also taken to migrate the
application suite to the C# /VB in .Net. Due to
the mission critical nature of the application,
rollback mechanisms were incorporated into the
system to allow recovering from the release of a
faulty manufacturing plan. I was able to bring
down the error rate to a trickle during my
assignment at Micron.
. Development -Development tends to be from medium
to long cycles as the majority of changes require
careful planning to prevent destabilizing the
application suite due to its mission critical
nature. RUP using Rational Rose was introduced
in the later stages to keep up with the
increasing complexity of the application suite.
ADO, LDAP and single sign-on access were
incorporated into the middleware component.
. Deployment - A deployment is typically preceded
by an alpha release, and a beta releases
evaluated by the clients. The changes are
deployed to the staging server and later to the
production server followed by a final evaluation.
Micron adopts full cycle application management.
. Troubleshooting - Aggressive expansion of
features to keep up with the demands of the
planning needs for the highly competitive market
conditions and advancing machinery at the
fabrication plants may have introduced more bugs
into the system over time. The lack of
dedicating more resources and regression testing
towards tackling the growing error rate may have
also compounded the problem. I gravitated
towards troubleshooting tasks due to a variety of
reasons but managed to substantially reduce the
error rate during my assignment at Micron.
. Technical environment -VB 6.0, SyBase, DBMS,
HTML, OOP, N-tier, C#.Net, VB.Net, ASP.Net, XML,
CVS, RUP, UML, LDAP, Change Management, Citrix,
Documentum and Rational Rose.
Software Developer
SynergyDesk Software
Edmonton, AB
Aug. 2012 - Oct. 2012
#340 11215-Jasper Ave. 780-***-**** T
Edmonton, AB T5K 0L5
Canada 208-***-**** C
Wai-Lin Maw
Self employed
Cubic Virtual Studios
Edmonton, AB
Jul. 2009 - Dec. 2011
Systems admin.
Heritage Community Fdn.
Edmonton, AB
Jan. 2007 - Jun. 2009
Self employed
Cubic Design Studios
Boise, ID
Jun 2005 - Dec 2006
SOFTWARE dEVELOPER
Micron Technology
Boise, ID
Sep. 2000 - May. 2005
PROGRAMMER analyst
Advanis Inc. Edmonton, AB
Feb. 2014 - Present
Self employed
(Independent Contractor)
Feb. 2012 - Jul. 2012
Systems analyst
(Professional Contractor to Digital Time Capture Inc. Edmonton, AB)
Jan. 2013 - Dec. 2013