I am a software developer with over 7 years of experience building high performance enterprise
web applications and services. I am currently the senior web developer for Manhattan Software
where I am responsible for maintaining and extending the company's main product while improving
the existing development infrastructure and refactoring the application to use modern standards.
I graduated with honors in Computer Science and interviewed for positions at Apple headquarters
and Microsoft headquarters before taking a position with IBM in Ireland. Once there I became the
team leader for globalization, localization, translation, and web standards and worked diligently to
develop new features and enhance the interfaces of various products.
I am adept at debugging, code optimization, algorithm analysis and test driven development. My
core set of skills is in developing web applications using Javascript and HTML5 technologies,
specializing in front end components and user interfaces. I often work with legacy code bases and I
have a deep understanding of Javascript, HTML and CSS outside of the context of any one
application framework. I also have experience building utilities in Java and NodeJS.
Specialties: Agile, Ajax, Algorithm Analysis, ASP, Asynchronous Communication, CSS, CSS3, Debugging, Design Patterns, Dojo Toolkit, HTML, HTML5, HTTP, IIS, Java, Javascript, JAWS, jUnit, MSSQL, OOP, Oracle, PERL, PHP, phpUnit, REST, SCRUM, Selenium, SQL, SVN, Test-driven development (TDD), Ubuntu Linux, WAI-ARIA, WCAG, XHTML, XML, XPATH, XSD, XSLT
Senior Javascript Developer @ As the senior web developer for Manhattan Software I am responsible for the interface of the company's main application as well as developing, and contributing to, other products. The application is built using a pure Javascript framework which I am in the process of upgrading to use the Dojo Toolkit and AMD modules. From July 2012 to June 2015 (3 years) London, United KingdomCellar Manager @ From December 2011 to July 2012 (8 months) London, United KingdomSoftware Developer, LotusLive Events, LotusLive Meetings, LotusLive Engage @ Converted the entire interface of LotusLive Events to conform to IBM's OneUI interface standards ensuring seamless integration into LotusLive Engage.
Created an e-mail template generator for LotusLive Events. Previously, all e-mail templates were custom built using XSL. Using Java and XSL I created a tool that used XSL to generate XSL templates which would then be used to create HTML e-mails. By developing this tool I was able to modularize the design of the templates as well as easily enabling them for translation. This ensured that any changes made to common or specific components of the templates could be rapidly inserted.
Built PHP unit tests for existing code to enable verification during code refactoring helping to improve the quality of the software. These units tests were added to an automated testing framework and helped to quickly verify defects during the development cycle.
Built new dialog widgets for LotusLive Meetings to add new features for Meeting startup and configuration. Unlike the rest of the code base, these widgets built using the Dojo Toolkit which allowed for an object oriented approach and creation of reusable components.
Initiated the development process of migrating the existing PHP code base for Events to extract the interface components from the application and rebuild them using a template framework.
Built a tool for the LotusLive Engage billing team to that would migrate customer records from a legacy system and insert them into LotusLive using the Selenium testing framework to insert records using the user interface.
Coordinated with the Globalization Verification Testing (GVT) and Translation Verification Testing (TVT) during the translation cycle of development.
Managed the development of solutions to GVT and TVT defects. From July 2008 to December 2010 (2 years 6 months) IrelandWeb Development Consultant @ Adapted designs from graphic designers and delivered standards compliant cross browser HTML templates to be used as the basis for websites.
Made improvements to a web site administration tool and performed other minor updates for clients. From June 2006 to October 2006 (5 months) Montreal, Canada AreaSoftware Developer @ Expanded and improved the interface of eXplorance's web-based feedback software.
Built the front end framework for the consumer website and customer portal for a beauty salon franchise company. From July 2004 to October 2004 (4 months) Montreal, Canada AreaSoftware Developer @ Main developer and maintainer to the interface of Nakisa’s main product called CDS (Corporate Directory Services), a web based customizable program for creating orgcharts, floor plans and phone directories.
Created customized builds for clients such as banks, private financial institutions, energy companies, law enforcement and military.
Tailored a heavily customized release of CDS for Airbus before the scheduled deadline.
Participated in the development of a partnership with PeopleSoft by customizing the CDS interface to integrate with PeopleSoft's products.
Completed a project to make the interface of CDS as modular as possible while allowing for easier feature additions, bug fixes, and program updates.
Started initiatives to achieve greater standards compliance with XHTML, CSS and Section 508 as well as greater cross browser support. From July 2002 to July 2004 (2 years 1 month) Montreal, Canada AreaInternship @ From March 2002 to June 2002 (4 months) Montreal, Canada AreaTechnician @ From June 1999 to August 1999 (3 months) Montreal, Canada Area
B. COMP. SC., Honors Software Systems @ Concordia University From 2005 to 2007 D.E.C, Computer Science @ Dawson College From 1999 to 2002 Michael McKenzie is skilled in: Java, JavaScript, XHTML, XML, ARIA, Microsoft SQL Server, SQL, Perl, PHP, ASP, HTTP, JUnit, TDD, AJAX, CSS